annotate src/qt.mk @ 3031:951da75fd09c

improve handling of cross tool prefix
author John W. Eaton <jwe@octave.org>
date Sun, 09 Jun 2013 09:48:08 -0400
parents b6c7244a2f66
children 622b49d8b178
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2333
f653602a0500 Rebrand to new project name MXE
Volker Grabsch <vog@notjusthosting.com>
parents: 2179
diff changeset
1 # This file is part of MXE.
2353
99516e73b368 Move doc/index.html -> index.html
Volker Grabsch <vog@notjusthosting.com>
parents: 2349
diff changeset
2 # See index.html for further information.
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
3
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
4 PKG := qt
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
5 $(PKG)_IGNORE :=
2734
ffdcd0f515bc update package qt
Mark Brand <mabrand@mabrand.nl>
parents: 2541
diff changeset
6 $(PKG)_CHECKSUM := bc352a283610e0cd2fe0dbedbc45613844090fcb
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
7 $(PKG)_SUBDIR := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION)
2179
e1d7c2b4f285 update packages: lcms libpng qt suitesparse
Mark Brand <mabrand@mabrand.nl>
parents: 2170
diff changeset
8 $(PKG)_FILE := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION).tar.gz
2541
be6a32dfbaea update package qt
Mark Brand <mabrand@mabrand.nl>
parents: 2525
diff changeset
9 $(PKG)_URL := http://releases.qt-project.org/qt4/source/$($(PKG)_FILE)
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
10 ifeq ($(MXE_SYSTEM),mingw)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
11 $(PKG)_DEPS := gcc libodbc++ postgresql freetds openssl zlib libpng jpeg libmng tiff sqlite dbus
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
12
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
13 $(PKG)_CONFIGURE_ENV := \
3031
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
14 OPENSSL_LIBS="`'$(MXE_PKG_CONFIG)' --libs-only-l openssl`" \
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
15 PSQL_LIBS="-lpq -lsecur32 `'$(MXE_PKG_CONFIG)' --libs-only-l openssl` -lws2_32" \
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
16 SYBASE_LIBS="-lsybdb `'$(MXE_PKG_CONFIG)' --libs-only-l gnutls` -liconv -lws2_32"
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
17 else
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
18 $(PKG)_DEPS := gcc postgresql freetds openssl zlib libpng jpeg libmng tiff sqlite dbus
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
19
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
20 $(PKG)_CONFIGURE_ENV := \
3014
b6c7244a2f66 Use HOST_BINDIR, HOST_LIBDIR, and HOST_INCDIR instead of MXE_BINDIR, MXE_LIBDIR, and MXE_INCDIR. Attempt to use these variables consistently instead of using $(HOST_PREFIX)/bin, $(HOST_PREFIX)/lib, and $(HOST_PREFIX)/include
John W. Eaton <jwe@octave.org>
parents: 3012
diff changeset
21 CPPFLAGS='$(HOST_INCDIR)/dbus-1.0' \
b6c7244a2f66 Use HOST_BINDIR, HOST_LIBDIR, and HOST_INCDIR instead of MXE_BINDIR, MXE_LIBDIR, and MXE_INCDIR. Attempt to use these variables consistently instead of using $(HOST_PREFIX)/bin, $(HOST_PREFIX)/lib, and $(HOST_PREFIX)/include
John W. Eaton <jwe@octave.org>
parents: 3012
diff changeset
22 LDFLAGS='-Wl,-rpath-link,$(HOST_LIBDIR) -L$(HOST_LIBDIR)'
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
23 endif
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
24
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
25 ifeq ($(MXE_NATIVE_BUILD),yes)
3014
b6c7244a2f66 Use HOST_BINDIR, HOST_LIBDIR, and HOST_INCDIR instead of MXE_BINDIR, MXE_LIBDIR, and MXE_INCDIR. Attempt to use these variables consistently instead of using $(HOST_PREFIX)/bin, $(HOST_PREFIX)/lib, and $(HOST_PREFIX)/include
John W. Eaton <jwe@octave.org>
parents: 3012
diff changeset
26 $(PKG)_CONFIGURE_INCLUDE_OPTION := -I '$(HOST_INCDIR)'
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
27 $(PKG)_CONFIGURE_DATABASE_OPTION := -qt-sql-psql
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
28 else
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
29 ifeq ($(MXE_SYSTEM),mingw)
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
30 $(PKG)_CONFIGURE_PLATFORM_OPTION := -xplatform win32-g++-4.6
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
31 $(PKG)_CONFIGURE_DATABASE_OPTION := \
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
32 -qt-sql-sqlite -qt-sql-odbc -qt-sql-psql -qt-sql-tds -D Q_USE_SYBASE
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
33 endif
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
34 endif
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
35
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
36 define $(PKG)_UPDATE
2525
4d0f3a9da57e all packages: use $(WGET) portability variable
Tony Theodore <tonyt@logyst.com>
parents: 2446
diff changeset
37 $(WGET) -q -O- 'http://qt.gitorious.org/qt/qt/commits' | \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
38 grep '<li><a href="/qt/qt/commit/' | \
840
77ecd36317c2 corrected version recognition regexes of many packages
Volker Grabsch <vog@notjusthosting.com>
parents: 822
diff changeset
39 $(SED) -n 's,.*<a[^>]*>v\([0-9][^<-]*\)<.*,\1,p' | \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
40 tail -1
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
41 endef
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
42
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
43 define $(PKG)_BUILD
2013
378b4cabcda2 update package qt
Mark Brand <mabrand@mabrand.nl>
parents: 1988
diff changeset
44 cd '$(1)' && QTDIR='$(1)' ./bin/syncqt
791
4d838a936a8f fixed compile tests in ./configure of package qt
Mark Brand <mabrand@mabrand.nl>
parents: 789
diff changeset
45 cd '$(1)' && \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
46 $($(PKG)_CONFIGURE_ENV) \
1015
7997c04d4bef upgrade package qt to 4.7.0-beta1 (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 990
diff changeset
47 ./configure \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
48 $($(PKG)_CONFIGURE_INCLUDE_OPTION) \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
49 -opensource \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
50 -confirm-license \
1015
7997c04d4bef upgrade package qt to 4.7.0-beta1 (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 990
diff changeset
51 -fast \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
52 $($(PKG)_CONFIGURE_PLATFORM_OPTION) \
3031
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
53 -device-option CROSS_COMPILE=$(MXE_TOOL_PREFIX) \
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
54 -device-option PKG_CONFIG='$(MXE_PKG_CONFIG)' \
548
08b6c299a522 several improvements to package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 520
diff changeset
55 -force-pkg-config \
486
8eda0b6ec42a disable debug information for package qt
Volker Grabsch <vog@notjusthosting.com>
parents: 485
diff changeset
56 -release \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
57 -exceptions \
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
58 -shared \
3012
100e618349f7 Improve handling of prefix directories by defining HOST_PREFIX and
John W. Eaton <jwe@octave.org>
parents: 3006
diff changeset
59 -prefix '$(HOST_PREFIX)' \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
60 -prefix-install \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
61 -script \
1910
ce3b84b9514f package qt: build with -no-iconv
Nikos Chantziaras <realnc@arcor.de>
parents: 1909
diff changeset
62 -no-iconv \
470
a07d9f69e2ee add OpenGL support to package qt (by Martin Lambers)
Volker Grabsch <vog@notjusthosting.com>
parents: 468
diff changeset
63 -opengl desktop \
2445
328cf3f5c63c package qt: stop building static qtwebkit
Mark Brand <mabrand@mabrand.nl>
parents: 2428
diff changeset
64 -no-webkit \
822
4a0fe1fd4abc bugfix: phonon backend does not depend on glib and gstreamer in package qt
Mark Brand <mabrand@mabrand.nl>
parents: 821
diff changeset
65 -no-glib \
4a0fe1fd4abc bugfix: phonon backend does not depend on glib and gstreamer in package qt
Mark Brand <mabrand@mabrand.nl>
parents: 821
diff changeset
66 -no-gstreamer \
509
e97947e7d45e update version of package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 497
diff changeset
67 -no-phonon \
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
68 -no-phonon-backend \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
69 -accessibility \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
70 -no-reduce-exports \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
71 -no-rpath \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
72 -make libs \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
73 -nomake demos \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
74 -nomake docs \
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
75 -nomake examples \
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
76 $($(PKG)_CONFIGURE_DATABASE_OPTION) \
548
08b6c299a522 several improvements to package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 520
diff changeset
77 -system-zlib \
578
41c0ac9326f2 improvements for package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 576
diff changeset
78 -system-libpng \
41c0ac9326f2 improvements for package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 576
diff changeset
79 -system-libjpeg \
573
57166e6490d2 use more external libraries in package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 570
diff changeset
80 -system-libtiff \
1380
a21aabc31b87 package qt: improved handling of liblcms dependency
Mark Brand <mabrand@mabrand.nl>
parents: 1363
diff changeset
81 -system-libmng \
573
57166e6490d2 use more external libraries in package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 570
diff changeset
82 -system-sqlite \
791
4d838a936a8f fixed compile tests in ./configure of package qt
Mark Brand <mabrand@mabrand.nl>
parents: 789
diff changeset
83 -openssl-linked \
1531
3d2a35555fd3 package qt: added dbus support
Mark Brand <mabrand@mabrand.nl>
parents: 1380
diff changeset
84 -dbus-linked \
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
85 -no-sse2 -no-ssse3 \
520
9294e8fad5e9 add ODBC support to package qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 515
diff changeset
86 -v
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
87
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
88 $(MAKE) -C '$(1)' -j '$(JOBS)'
659
c96eeb56f5de improved escaping in the build rules of package qt
Volker Grabsch <vog@notjusthosting.com>
parents: 648
diff changeset
89 $(MAKE) -C '$(1)' -j 1 install
3031
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
90 $(LN_SF) '$(HOST_BINDIR)/moc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)moc'
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
91 $(LN_SF) '$(HOST_BINDIR)/rcc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)roc'
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
92 $(LN_SF) '$(HOST_BINDIR)/uic' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)uic'
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
93 $(LN_SF) '$(HOST_BINDIR)/qmake' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)qmake'
660
f77810598227 test program for package qt
Volker Grabsch <vog@notjusthosting.com>
parents: 659
diff changeset
94
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
95 # cd '$(1)/tools/assistant' && '$(1)/bin/qmake' assistant.pro
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
96 # $(MAKE) -C '$(1)/tools/assistant' -j '$(JOBS)' install
2446
42295c6227c2 package qt: build more tools
Mark Brand <mabrand@mabrand.nl>
parents: 2445
diff changeset
97
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
98 # cd '$(1)/tools/designer' && '$(1)/bin/qmake' designer.pro
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
99 # $(MAKE) -C '$(1)/tools/designer' -j '$(JOBS)' install
2446
42295c6227c2 package qt: build more tools
Mark Brand <mabrand@mabrand.nl>
parents: 2445
diff changeset
100
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
101 # # at least some of the qdbus tools are useful on target
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
102 # cd '$(1)/tools/qdbus' && '$(1)/bin/qmake' qdbus.pro
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
103 # $(MAKE) -C '$(1)/tools/qdbus' -j '$(JOBS)' install
2997
4f9b72cf7ee7 allow native builds too
John W. Eaton <jwe@octave.org>
parents: 2988
diff changeset
104
2985
e6ba75a96089 Fix to install lrelease from the linquist tools.
John Donoghue <john.onoghue@ieee.org>
parents: 2927
diff changeset
105 # lrelease (from linguist) needed by octave for GUI build
e6ba75a96089 Fix to install lrelease from the linquist tools.
John Donoghue <john.onoghue@ieee.org>
parents: 2927
diff changeset
106 $(MAKE) -C '$(1)/tools/linguist/lrelease' -j '$(JOBS)' install
3031
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
107 $(LN_SF) '$(HOST_BINDIR)/lrelease' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)lrelease'
1538
c6b5e37cf4cb package qt: build and install qdbus tools
Mark Brand <mabrand@mabrand.nl>
parents: 1532
diff changeset
108
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
109 # mkdir '$(1)/test-qt'
3031
951da75fd09c improve handling of cross tool prefix
John W. Eaton <jwe@octave.org>
parents: 3014
diff changeset
110 # cd '$(1)/test-qt' && '$(MXE_QMAKE)' '$(PWD)/$(2).pro'
2927
ee20182f07d4 shared libraries for qt
John W. Eaton <jwe@octave.org>
parents: 2745
diff changeset
111 # $(MAKE) -C '$(1)/test-qt' -j '$(JOBS)'
3014
b6c7244a2f66 Use HOST_BINDIR, HOST_LIBDIR, and HOST_INCDIR instead of MXE_BINDIR, MXE_LIBDIR, and MXE_INCDIR. Attempt to use these variables consistently instead of using $(HOST_PREFIX)/bin, $(HOST_PREFIX)/lib, and $(HOST_PREFIX)/include
John W. Eaton <jwe@octave.org>
parents: 3012
diff changeset
112 # $(INSTALL) -m755 '$(1)/test-qt/release/test-qt.exe' '$(HOST_BINDIR)'
452
ade2c475c772 new package: qt (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
113 endef