Mercurial > mxe-octave
annotate src/qtbase.mk @ 4501:b74853c2afa1
new x11 utility packages
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 10 Oct 2017 14:45:42 -0400 |
parents | f47df619cd1d |
children | 0743a56dd468 |
rev | line source |
---|---|
4501 | 1 # This file is part of MXE. |
4222 | 2 # See index.html for further information. |
3 | |
4 PKG := qtbase | |
5 $(PKG)_IGNORE := | |
4310 | 6 $(PKG)_VERSION := 5.7.1 |
7 $(PKG)_CHECKSUM := a3ddcde8978d3a05bb4342fce364a792472a16e6 | |
4222 | 8 $(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) |
9 $(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz | |
10 $(PKG)_URL := http://download.qt.io/official_releases/qt/5.7/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) | |
11 $(PKG)_DEPS := dbus freetds freetype fontconfig jpeg libpng pcre postgresql sqlite zlib | |
4487
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
12 ifeq ($(USE_SYSTEM_FONTCONFIG),no) |
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
13 $(PKG)_FONTCONFIG := fontconfig |
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
14 endif |
4496
903796b2fcb6
fltk, gl2ps, xcursor, x11, qtbase: Fix dependencies.
John W. Eaton <jwe@octave.org>
parents:
4487
diff
changeset
|
15 ifeq ($(USE_SYSTEM_OPENGL),no) |
903796b2fcb6
fltk, gl2ps, xcursor, x11, qtbase: Fix dependencies.
John W. Eaton <jwe@octave.org>
parents:
4487
diff
changeset
|
16 $(PKG)_DEPS += mesa |
903796b2fcb6
fltk, gl2ps, xcursor, x11, qtbase: Fix dependencies.
John W. Eaton <jwe@octave.org>
parents:
4487
diff
changeset
|
17 endif |
4487
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
18 ifeq ($(MXE_WINDOWS_BUILD),no) |
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
19 ifeq ($(USE_SYSTEM_X11_LIBS),no) |
4501 | 20 $(PKG)_DEPS += xdamage xdmcp xext xfixes xi xrender xt xxf86vm x11 xcb xcb-util xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm |
4487
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
21 endif |
7b73612f57b9
qtbase: Optionally depend on X11 and fontconfig libraries.
John W. Eaton <jwe@octave.org>
parents:
4485
diff
changeset
|
22 endif |
4222 | 23 |
24 define $(PKG)_UPDATE | |
25 $(WGET) -q -O- http://download.qt-project.org/official_releases/qt/5.5/ | \ | |
26 $(SED) -n 's,.*href="\(5\.[0-9]\.[^/]*\)/".*,\1,p' | \ | |
27 grep -iv -- '-rc' | \ | |
28 sort | | |
29 tail -1 | |
30 endef | |
31 | |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
32 $(PKG)_CONFIGURE_CROSS_COMPILE_OPTION := |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
33 $(PKG)_CONFIGURE_DATABASE_OPTION := |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
34 $(PKG)_CONFIGURE_ENV := |
4485
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
35 $(PKG)_CONFIGURE_INCLUDE_OPTION := |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
36 $(PKG)_CONFIGURE_LIBPATH_OPTION := |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
37 $(PKG)_CONFIGURE_PLATFORM_OPTION := |
4498
f47df619cd1d
qtbase: don't strip, only disable xcb on windows.
John W. Eaton <jwe@octave.org>
parents:
4496
diff
changeset
|
38 $(PKG)_CONFIGURE_OPTS := |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
39 |
4485
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
40 ifeq ($(MXE_WINDOWS_BUILD),yes) |
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
41 $(PKG)_CONFIGURE_PREFIX_OPTION := -prefix '$(HOST_PREFIX)/qt5' |
4498
f47df619cd1d
qtbase: don't strip, only disable xcb on windows.
John W. Eaton <jwe@octave.org>
parents:
4496
diff
changeset
|
42 $(PKG)_CONFIGURE_OPTS += -no-xcb |
4485
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
43 else |
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
44 $(PKG)_CONFIGURE_PREFIX_OPTION := -prefix '$(HOST_PREFIX)' |
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
45 $(PKG)_CONFIGURE_INCLUDE_OPTION += -I '$(HOST_INCDIR)/freetype2' |
4498
f47df619cd1d
qtbase: don't strip, only disable xcb on windows.
John W. Eaton <jwe@octave.org>
parents:
4496
diff
changeset
|
46 $(PKG)_CONFIGURE_OPTS += -qpa xcb -xcb |
4485
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
47 endif |
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
48 |
4484
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
49 ## These are needed whether cross compiling or not. |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
50 ifeq ($(MXE_WINDOWS_BUILD),yes) |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
51 $(PKG)_CONFIGURE_ENV := PSQL_LIBS="-lpq -lsecur32 -lws2_32" |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
52 $(PKG)_CONFIGURE_DATABASE_OPTION += \ |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
53 -system-sqlite -plugin-sql-sqlite -plugin-sql-odbc -plugin-sql-psql |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
54 else |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
55 $(PKG)_CONFIGURE_DATABASE_OPTION += -system-sqlite |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
56 endif |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
57 |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
58 ifeq ($(MXE_NATIVE_BUILD),yes) |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
59 $(PKG)_CONFIGURE_INCLUDE_OPTION += -I '$(HOST_INCDIR)' |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
60 $(PKG)_CONFIGURE_LIBPATH_OPTION += -L '$(HOST_LIBDIR)' |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
61 ifeq ($(MXE_USE_LIB64_DIRECTORY),yes) |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
62 $(PKG)_CONFIGURE_LIBPATH_OPTION += -L '$(HOST_LIB64DIR)' |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
63 endif |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
64 $(PKG)_CONFIGURE_INCLUDE_OPTION += -I '$(HOST_INCDIR)/dbus-1.0' |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
65 $(PKG)_CONFIGURE_INCLUDE_OPTION += -I '$(HOST_LIBDIR)/dbus-1.0/include' |
4484
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
66 ifeq ($(MXE_WINDOWS_BUILD),yes) |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
67 $(PKG)_CONFIGURE_PLATFORM_OPTION := -platform win32-g++ |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
68 endif |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
69 else |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
70 $(PKG)_CONFIGURE_CROSS_COMPILE_OPTION := \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
71 -device-option CROSS_COMPILE=$(MXE_TOOL_PREFIX) |
4484
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
72 ifeq ($(MXE_WINDOWS_BUILD),yes) |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
73 $(PKG)_CONFIGURE_PLATFORM_OPTION := -xplatform win32-g++ |
0d0e6c8015af
qtbase.mk: Use proper platform option for cross and native windows builds.
John W. Eaton <jwe@octave.org>
parents:
4482
diff
changeset
|
74 endif |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
75 endif |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
76 |
4222 | 77 define $(PKG)_BUILD |
78 # ICU is buggy. See #653. TODO: reenable it some time in the future. | |
79 cd '$(1)' && \ | |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
80 $($(PKG)_CONFIGURE_ENV) \ |
4222 | 81 ./configure \ |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
82 $($(PKG)_CONFIGURE_INCLUDE_OPTION) \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
83 $($(PKG)_CONFIGURE_LIBPATH_OPTION) \ |
4498
f47df619cd1d
qtbase: don't strip, only disable xcb on windows.
John W. Eaton <jwe@octave.org>
parents:
4496
diff
changeset
|
84 -no-strip \ |
4222 | 85 -opensource \ |
86 -c++std c++11 \ | |
87 -confirm-license \ | |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
88 $($(PKG)_CONFIGURE_PLATFORM_OPTION) \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
89 $($(PKG)_CONFIGURE_CROSS_COMPILE_OPTION) \ |
4222 | 90 -device-option PKG_CONFIG='$(MXE_PKG_CONFIG)' \ |
91 -force-pkg-config \ | |
92 -no-use-gold-linker \ | |
93 -shared \ | |
4485
86176b88d1f8
qtbase: Fix config include and prefix options for windows.
John W. Eaton <jwe@octave.org>
parents:
4484
diff
changeset
|
94 $($(PKG)_CONFIGURE_PREFIX_OPTION) \ |
4222 | 95 -hostprefix '$(BUILD_TOOLS_PREFIX)' \ |
96 -no-icu \ | |
97 -opengl desktop \ | |
98 -no-glib \ | |
99 -accessibility \ | |
100 -nomake examples \ | |
101 -nomake tests \ | |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
102 $($(PKG)_CONFIGURE_DATABASE_OPTION) \ |
4222 | 103 -system-zlib \ |
104 -system-libpng \ | |
105 -system-libjpeg \ | |
106 -system-sqlite \ | |
107 -fontconfig \ | |
108 -system-freetype \ | |
109 -system-pcre \ | |
110 -no-openssl \ | |
111 -dbus-linked \ | |
4498
f47df619cd1d
qtbase: don't strip, only disable xcb on windows.
John W. Eaton <jwe@octave.org>
parents:
4496
diff
changeset
|
112 -no-pch \ |
4222 | 113 -v \ |
114 $($(PKG)_CONFIGURE_OPTS) | |
115 | |
116 $(MAKE) -C '$(1)' -j '$(JOBS)' | |
117 $(MAKE) -C '$(1)' -j 1 install | |
118 | |
4482
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
119 if [ "$(MXE_NATIVE_BUILD)" = "no" ]; then \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
120 ln -sf '$(BUILD_TOOLS_PREFIX)/bin/qmake' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qmake-qt5; \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
121 ln -sf '$(BUILD_TOOLS_PREFIX)/bin/moc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'moc; \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
122 ln -sf '$(BUILD_TOOLS_PREFIX)/bin/uic' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'uic; \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
123 ln -sf '$(BUILD_TOOLS_PREFIX)/bin/rcc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'rcc; \ |
57600c0c6bdf
allow native linux system builds of qtbase to work again
John W. Eaton <jwe@octave.org>
parents:
4310
diff
changeset
|
124 ln -sf '$(BUILD_TOOLS_PREFIX)/bin/lrelease' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'lrelease; \ |
4222 | 125 fi |
126 | |
127 endef | |
128 |