| 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 |