qtcreator/qtcreator.spec

changeset 386
d355cb4bbdab
parent 281
acad5c9dea5f
child 387
33ae2d61c751
equal deleted inserted replaced
6:aff3909d7ef8 7:e0fe805bfd07
1 ## 1 ##
2 ## qtcreator.spec -- OpenPKG RPM Specification 2 ## qtcreator.spec -- OpenPKG RPM Specification
3 ## Copyright (c) 2010 Michael Schloh von Bennewitz <michael@schloh.com> 3 ## Copyright (c) 2011 Michael Schloh von Bennewitz <michael@schloh.com>
4 ## 4 ##
5 ## Permission to use, copy, modify, and distribute this software for 5 ## Permission to use, copy, modify, and distribute this software for
6 ## any purpose with or without fee is hereby granted, provided that 6 ## any purpose with or without fee is hereby granted, provided that
7 ## the above copyright notice and this permission notice appear in all 7 ## the above copyright notice and this permission notice appear in all
8 ## copies. 8 ## copies.
22 ## 22 ##
23 23
24 # package information 24 # package information
25 Name: qtcreator 25 Name: qtcreator
26 Summary: Cross Platform Application Framework 26 Summary: Cross Platform Application Framework
27 URL: http://qt.nokia.com/products/appdev/developer-tools/developer-tools 27 URL: http://qt.nokia.com/developer/qt-creator
28 Vendor: Nokia Corporation 28 Vendor: Nokia Corporation
29 Packager: Michael Schloh von Bennewitz 29 Packager: Michael Schloh von Bennewitz
30 Distribution: MSvB Recherche Production 30 Distribution: MSvB Recherche Production
31 Class: EVAL 31 Class: EVAL
32 Group: Development 32 Group: Development
33 License: GPL 33 License: GPL
34 Version: 2.0.1 34 Version: 2.2.0
35 Release: 20101015 35 Release: 20110514
36 36
37 # list of sources 37 # list of sources
38 Source0: ftp://ftp.qt.nokia.com/qtcreator/qt-creator-%{version}-src.tgz 38 Source0: ftp://ftp.qt.nokia.com/qtcreator/qt-creator-%{version}-src.tar.gz
39 39
40 # build information 40 # build information
41 Prefix: %{l_prefix} 41 Prefix: %{l_prefix}
42 BuildRoot: %{l_buildroot} 42 BuildRoot: %{l_buildroot}
43 BuildPreReq: OpenPKG, openpkg >= 20050726, gcc 43 BuildPreReq: OpenPKG, openpkg >= 20060823
44 PreReq: OpenPKG, openpkg >= 20050726 44 PreReq: OpenPKG, openpkg >= 20060823
45 BuildPreReq: qt, qt::with_shared = yes 45 BuildPreReq: qt, qt::with_shared = yes
46 PreReq: qt, qt::with_shared = yes 46 PreReq: qt, qt::with_shared = yes
47 AutoReq: no 47 AutoReq: no
48 AutoReqProv: no 48 AutoReqProv: no
49 49
66 %setup -q -n qt-creator-%{version}-src 66 %setup -q -n qt-creator-%{version}-src
67 %{l_shtool} subst \ 67 %{l_shtool} subst \
68 -e 's;\(QMAKE_RPATHDIR +=\);#\1;g' \ 68 -e 's;\(QMAKE_RPATHDIR +=\);#\1;g' \
69 -e 's;\(\$\$join(QMAKE_RPATHDIR, ":"\));\1, "%{l_prefix}/lib/qtcreator:");' \ 69 -e 's;\(\$\$join(QMAKE_RPATHDIR, ":"\));\1, "%{l_prefix}/lib/qtcreator:");' \
70 src/rpath.pri 70 src/rpath.pri
71 # Trolltech Bug:
72 # Hardcoded paths not correct in every case
71 %{l_shtool} subst \ 73 %{l_shtool} subst \
72 -e 's;\(share\)/\(doc\)/\(qtcreator\);\1/\3/\2;' \ 74 -e 's;\(share\)/\(doc\)/\(qtcreator\);\1/\3/\2;' \
73 doc/doc.pri \ 75 doc/doc.pri \
74 qtcreator.pri \ 76 qtcreator.pri \
75 src/plugins/help/helpplugin.cpp 77 src/plugins/help/helpplugin.cpp
78 # Trolltech Bug:
79 # Redefined (simply copied from) Qt library source code
80 %{l_shtool} subst \
81 -e 's;\(qt_clean_filter_list\);l_\1;g' \
82 -e 's;\(qt_file_dialog_filter_reg_exp\);l_\1;g' \
83 src/plugins/qt4projectmanager/addlibrarywizard.cpp
84 # Trolltech Bug:
85 # Syntax error in qmake project file
86 %{l_shtool} subst \
87 -e 's;\(memcheckconfigwidget.ui\) \\$;\1;' \
88 src/plugins/memcheck/memcheck.pro
76 echo '' >>src/libs/3rdparty/botan/botan.pro 89 echo '' >>src/libs/3rdparty/botan/botan.pro
77 for profil in `find . -name '*.pro' | grep -v '[ ]'`; do 90 for profil in `find . -name '*.pro' | grep -v '[ ]'`; do
78 echo 'CONFIG += shared' >>$profil 91 echo 'CONFIG += shared' >>$profil
79 done 92 done
80 93
81 %build 94 %build
82 %{l_prefix}/bin/qmake qtcreator.pro 95 # Force linkage to Qt shared libraries due to
83 %{l_make} %{l_mflags -O} 96 # Qt Creator static build incapable by design.
97 l_pkgconfpath=%{l_prefix}/lib/qt/dynamic/pkgconfig
98 l_qtdynlflags=`PKG_CONFIG_PATH=$l_pkgconfpath %{l_prefix}/bin/pkg-config --libs-only-L QtCore`
99 l_qtdynlibdir=`echo $l_qtdynlflags | %{l_shtool} subst -e 's;\-L[\t ]*\([^\t ]*\);\1;g'`
100 %{l_prefix}/bin/qmake qtcreator.pro QMAKE_LIBDIR="$l_qtdynlibdir"
101 # Trolltech Bug:
102 # (Proc 1) g++ -shared -o libCppEditor.so .obj/release-shared/cppplugin.o ... -lpthread ...
103 # (Proc 2) mv -f libCppEditor.so ../../../lib/qtcreator/plugins/Nokia/
104 # make[1]: *** [sub-plugins-make_default-ordered] Error 2
105 #
106 # The implemented workaround is to disable parallel make,
107 # causing a nearly 100% deceleration in the build.
108 %{l_make} %{l_mflags}
84 109
85 %install 110 %install
86 rm -rf $RPM_BUILD_ROOT 111 rm -rf $RPM_BUILD_ROOT
87 112
88 # carry out installation procedure 113 # carry out installation procedure
89 %{l_make} %{l_mflags} install INSTALL_ROOT="$RPM_BUILD_ROOT%{l_prefix}" 114 %{l_make} %{l_mflags} install INSTALL_ROOT="$RPM_BUILD_ROOT%{l_prefix}"
90
91 # clean up installation
92 rm $RPM_BUILD_ROOT/%{l_prefix}/bin/qtcreator_process_stub
93 115
94 # determine internal file listing 116 # determine internal file listing
95 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} 117 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
96 118
97 %files -f files 119 %files -f files

mercurial