Alexander Pyhalov
2018-12-05 db2ae300899858fdda044a86f0b84920de6b391e
commit | author | age
667d99 1 #
AL 2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL)". You may
4 # only use this file in accordance with the terms of the CDDL.
5 #
6 # A full copy of the text of the CDDL should have accompanied this
7 # source. A copy of the CDDL is also available via the Internet at
8 # http://www.illumos.org/license/CDDL.
9 #
10
11 #
12 # Copyright 2014 EveryCity Ltd. All rights reserved.
13 # Copyright 2015 Alexander Pyhalov
14 # Copyright 2017 Aurelien Larcher
15 #
16
17 include ../../../make-rules/shared-macros.mk
18
19 COMPONENT_NAME=           qt
20 COMPONENT_VERSION=        5.8.0
db2ae3 21 COMPONENT_REVISION=       5
667d99 22 COMPONENT_VERSION_MJR=    5.8
AL 23 COMPONENT_FMRI=           library/qt5
24 COMPONENT_PROJECT_URL=    https://www.qt.io/
25 COMPONENT_SUMMARY=        Qt cross-platform application and UI framework
26 COMPONENT_CLASSIFICATION= Desktop (GNOME)/Libraries
27 COMPONENT_SRC=        $(COMPONENT_NAME)-everywhere-opensource-src-$(COMPONENT_VERSION)
28 COMPONENT_ARCHIVE=    $(COMPONENT_SRC).tar.gz
29 COMPONENT_ARCHIVE_HASH=    \
30   sha256:9dc5932307ae452855863f6405be1f7273d91173dcbe4257561676a599bd58d3
31 COMPONENT_ARCHIVE_URL=\
32   http://download.qt.io/official_releases/qt/$(COMPONENT_VERSION_MJR)/$(COMPONENT_VERSION)/single/$(COMPONENT_ARCHIVE)
33 COMPONENT_LICENSE=        QT5
34 COMPONENT_LICENSE_FILE=   qt5.license
35
36 include $(WS_MAKE_RULES)/prep.mk
37 include $(WS_MAKE_RULES)/configure.mk
38 include $(WS_MAKE_RULES)/ips.mk
39
7035da 40 PATH=$(PG_BINDIR.$(BITS)):$(MYSQL_BINDIR.$(BITS)):$(GCC_ROOT)/bin:$(PATH.gnu)
667d99 41
AL 42 QT_PREFIX=$(USRLIBDIR)/$(COMPONENT_NAME)/$(COMPONENT_VERSION_MJR)
43
44 QT_ARCHSUBDIR.32=
45 QT_ARCHSUBDIR.64=$(MACH64)
46 QT_PLATFORM.32= solaris-g++
47 QT_PLATFORM.64= solaris-g++-64
7035da 48
AL 49 # build with the distribution preferred libjpeg implementation
50 CFLAGS   += $(JPEG_CPPFLAGS) $(JPEG_CFLAGS)
51 CXXFLAGS += $(JPEG_CPPFLAGS) $(JPEG_CXXFLAGS)
52 LDFLAGS  += $(JPEG_LDFLAGS)
667d99 53
AL 54 CONFIGURE_OPTIONS = -prefix $(QT_PREFIX)
55 CONFIGURE_OPTIONS+= -verbose
56 CONFIGURE_OPTIONS+= -opensource
57 CONFIGURE_OPTIONS+= -confirm-license
58 CONFIGURE_OPTIONS+= -nomake examples
59 CONFIGURE_OPTIONS+= -nomake tests
60 CONFIGURE_OPTIONS+= -c++std c++11
61 CONFIGURE_OPTIONS+= -disable-reduce-exports
62 CONFIGURE_OPTIONS+= -qt-xcb
63 CONFIGURE_OPTIONS+= -bindir $(QT_PREFIX)/bin/$(QT_ARCHSUBDIR.$(BITS))
64 CONFIGURE_OPTIONS+= -libdir $(QT_PREFIX)/lib/$(QT_ARCHSUBDIR.$(BITS))
65 CONFIGURE_OPTIONS+= -plugindir $(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))
66 CONFIGURE_OPTIONS+= -importdir $(QT_PREFIX)/imports/$(QT_ARCHSUBDIR.$(BITS))
67 CONFIGURE_OPTIONS+= -qmldir $(QT_PREFIX)/qml/$(QT_ARCHSUBDIR.$(BITS))
68 CONFIGURE_OPTIONS+= -platform $(QT_PLATFORM.$(BITS))
69 CONFIGURE_OPTIONS+= -plugin-sql-mysql
70 CONFIGURE_OPTIONS+= -plugin-sql-psql
71 CONFIGURE_OPTIONS+= -system-sqlite
72 CONFIGURE_OPTIONS+= $(CONFIGURE_OPTIONS.$(BITS))
73
74 COMPONENT_INSTALL_ENV+=    INSTALL_ROOT=$(PROTO_DIR)
75
db2ae3 76 # Set runpaths to sql/egl plugins
667d99 77 QT_LIBDIR    =$(QT_PREFIX)/lib/$(QT_ARCHSUBDIR.$(BITS))
AL 78 QT_SQLDIR    =$(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))/sqldrivers
79 QT_EGLDIR    =$(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))/egldeviceintegrations
db2ae3 80 QT_XORGDIR   =$(QT_PREFIX)/lib/xorg/$(QT_ARCHSUBDIR.$(BITS))
7035da 81
667d99 82 COMPONENT_POST_INSTALL_ACTION= ( \
db2ae3 83 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(MYSQL_LIBDIR.$(BITS))"' \
667d99 84     $(PROTO_DIR)$(QT_SQLDIR)/libqsqlmysql.so; \
db2ae3 85 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(PG_LIBDIR.$(BITS))"' \
667d99 86     $(PROTO_DIR)$(QT_SQLDIR)/libqsqlpsql.so; \
db2ae3 87 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
667d99 88     $(PROTO_DIR)$(QT_EGLDIR)/libqeglfs-kms-integration.so; \
db2ae3 89 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
667d99 90     $(PROTO_DIR)$(QT_EGLDIR)/libqeglfs-kms-egldevice-integration.so; \
db2ae3 91 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR)"' \
667d99 92     $(PROTO_DIR)$(QT_LIBDIR)/libQt5EglFsKmsSupport.so.$(COMPONENT_VERSION); \
AL 93 )
94
95 build:        $(BUILD_32_and_64)
96
97 install:    $(INSTALL_32_and_64)
98
99 # Build dependencies
100 REQUIRED_PACKAGES += database/freetds
704d46 101 REQUIRED_PACKAGES += database/mariadb-101/client
f05ab0 102 REQUIRED_PACKAGES += database/postgres-94/developer
667d99 103 REQUIRED_PACKAGES += system/header/header-drm
AL 104 REQUIRED_PACKAGES += x11/keyboard/data-xkb
105 REQUIRED_PACKAGES += x11/library/libpthread-stubs
106
107 # Auto-generated dependencies
7035da 108 REQUIRED_PACKAGES += SUNWcs
667d99 109 REQUIRED_PACKAGES += codec/jasper
704d46 110 REQUIRED_PACKAGES += database/mariadb-101/library
667d99 111 REQUIRED_PACKAGES += database/sqlite-3
AL 112 REQUIRED_PACKAGES += image/library/libjpeg6
113 REQUIRED_PACKAGES += image/library/libjpeg6-ijg
114 REQUIRED_PACKAGES += image/library/libpng16
115 REQUIRED_PACKAGES += image/library/libtiff
116 REQUIRED_PACKAGES += library/audio/gstreamer1
117 REQUIRED_PACKAGES += library/audio/gstreamer1/plugin/base
118 REQUIRED_PACKAGES += library/audio/openal
119 REQUIRED_PACKAGES += library/audio/pulseaudio
120 REQUIRED_PACKAGES += library/c++/harfbuzz
121 REQUIRED_PACKAGES += library/desktop/gtk3
122 REQUIRED_PACKAGES += library/desktop/pango
123 REQUIRED_PACKAGES += library/freetds
124 REQUIRED_PACKAGES += library/glib2
7035da 125 REQUIRED_PACKAGES += library/icu
db2ae3 126 REQUIRED_PACKAGES += library/libwebp
667d99 127 REQUIRED_PACKAGES += library/print/cups-libs
AL 128 REQUIRED_PACKAGES += library/sdl2
129 REQUIRED_PACKAGES += library/zlib
130 REQUIRED_PACKAGES += system/library
131 REQUIRED_PACKAGES += system/library/fontconfig
132 REQUIRED_PACKAGES += system/library/freetype-2
f5010f 133 REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
969846 134 REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
667d99 135 REQUIRED_PACKAGES += system/library/libdbus
AL 136 REQUIRED_PACKAGES += system/library/math
137 REQUIRED_PACKAGES += text/hunspell
138 REQUIRED_PACKAGES += x11/library/libice
139 REQUIRED_PACKAGES += x11/library/libsm
140 REQUIRED_PACKAGES += x11/library/libx11
141 REQUIRED_PACKAGES += x11/library/libxcb
142 REQUIRED_PACKAGES += x11/library/libxi
143 REQUIRED_PACKAGES += x11/library/libxkbcommon
144 REQUIRED_PACKAGES += x11/library/mesa