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.
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.
12 # Copyright 2014 EveryCity Ltd. All rights reserved.
13 # Copyright 2015 Alexander Pyhalov
14 # Copyright 2017 Aurelien Larcher
15 # Copyright 2019 Michal Nowak
16 # Copyright 2022 Daniel Chan
19 include ..
/..
/..
/make-rules
/shared-macros.mk
22 COMPONENT_VERSION_MJR
= 5.15
23 COMPONENT_VERSION
= $(COMPONENT_VERSION_MJR
).4
25 COMPONENT_SUMMARY
= Qt cross-platform application and UI framework
26 COMPONENT_PROJECT_URL
= https
://www.qt.io
/
27 COMPONENT_SRC
= $(COMPONENT_NAME
)-everywhere-src-
$(COMPONENT_VERSION
)
28 COMPONENT_ARCHIVE
= $(COMPONENT_NAME
)-everywhere-opensource-src-
$(COMPONENT_VERSION
).
tar.xz
29 COMPONENT_ARCHIVE_HASH
= sha256
:615ff68d7af8eef3167de1fd15eac1b150e1fd69d1e2f4239e54447e7797253b
30 COMPONENT_ARCHIVE_URL
= https
://download.qt.io
/official_releases
/qt
/$(COMPONENT_VERSION_MJR
)/$(COMPONENT_VERSION
)/single
/$(COMPONENT_ARCHIVE
)
31 COMPONENT_FMRI
= library
/qt5
32 COMPONENT_CLASSIFICATION
= Desktop
(GNOME
)/Libraries
33 COMPONENT_LICENSE
= QT5
34 COMPONENT_LICENSE_FILE
= qt5.license
36 TEST_TARGET
= $(NO_TESTS
)
37 include $(WS_MAKE_RULES
)/common.mk
39 PATH
= $(PG_BINDIR
):$(MYSQL_BINDIR
):$(GCC_BINDIR
):$(PATH.gnu
)
41 QT_PREFIX
= $(QT5_BASEDIR
)
43 QT_ARCHSUBDIR
.64= $(MACH64
)
44 QT_PLATFORM
.64= solaris-g
++-64
46 # build with the distribution preferred libjpeg implementation
47 CFLAGS
+= $(JPEG_CPPFLAGS
) $(JPEG_CFLAGS
)
48 CXXFLAGS
+= $(JPEG_CPPFLAGS
) $(JPEG_CXXFLAGS
)
49 LDFLAGS
+= $(JPEG_LDFLAGS
)
52 CONFIGURE_ENV
+= OPENSSL_LIBS
='-L$(OPENSSL_LIBDIR) -lssl -lcrypto'
53 CONFIGURE_ENV
+= OPENSSL_INCLUDE_PATH
=$(OPENSSL_INCDIR
)
55 CONFIGURE_OPTIONS
= -prefix $(QT_PREFIX
)
56 #CONFIGURE_OPTIONS += -verbose
57 CONFIGURE_OPTIONS
+= -opensource
58 CONFIGURE_OPTIONS
+= -confirm-license
59 CONFIGURE_OPTIONS
+= -nomake examples
60 CONFIGURE_OPTIONS
+= -nomake tests
61 CONFIGURE_OPTIONS
+= -c
++std c
++11
62 CONFIGURE_OPTIONS
+= -disable-reduce-exports
63 CONFIGURE_OPTIONS
+= -xcb
64 CONFIGURE_OPTIONS
+= -xcb-xlib
65 CONFIGURE_OPTIONS
+= -bundled-xcb-xinput
66 CONFIGURE_OPTIONS
+= -bindir $(QT_PREFIX
)/bin
/$(QT_ARCHSUBDIR.
$(BITS
))
67 CONFIGURE_OPTIONS
+= -libdir $(QT_PREFIX
)/lib
/$(QT_ARCHSUBDIR.
$(BITS
))
68 CONFIGURE_OPTIONS
+= -plugindir
$(QT_PREFIX
)/plugins
/$(QT_ARCHSUBDIR.
$(BITS
))
69 CONFIGURE_OPTIONS
+= -importdir
$(QT_PREFIX
)/imports
/$(QT_ARCHSUBDIR.
$(BITS
))
70 CONFIGURE_OPTIONS
+= -qmldir
$(QT_PREFIX
)/qml
/$(QT_ARCHSUBDIR.
$(BITS
))
71 CONFIGURE_OPTIONS
+= -platform
$(QT_PLATFORM.
$(BITS
))
72 CONFIGURE_OPTIONS
+= -plugin-sql-mysql
73 CONFIGURE_OPTIONS
+= -plugin-sql-psql
74 CONFIGURE_OPTIONS
+= -plugin-sql-sqlite
75 CONFIGURE_OPTIONS
+= -system-sqlite
76 CONFIGURE_OPTIONS
+= -openssl-linked
77 CONFIGURE_OPTIONS
+= OPENSSL_INCDIR
=$(OPENSSL_INCDIR
)
78 CONFIGURE_OPTIONS
+= OPENSSL_LIBDIR
=$(OPENSSL_LIBDIR
)
79 CONFIGURE_OPTIONS
+= $(CONFIGURE_OPTIONS.
$(BITS
))
81 COMPONENT_INSTALL_ENV
+= INSTALL_ROOT
=$(PROTO_DIR
)
83 # Set runpaths to sql/egl plugins
84 QT_LIBDIR
= $(QT_PREFIX
)/lib
/$(QT_ARCHSUBDIR.
$(BITS
))
85 QT_SQLDIR
= $(QT_PREFIX
)/plugins
/$(QT_ARCHSUBDIR.
$(BITS
))/sqldrivers
86 QT_EGLDIR
= $(QT_PREFIX
)/plugins
/$(QT_ARCHSUBDIR.
$(BITS
))/egldeviceintegrations
87 QT_XORGDIR
= $(QT_PREFIX
)/lib
/xorg
/$(QT_ARCHSUBDIR.
$(BITS
))
89 COMPONENT_POST_INSTALL_ACTION
= ( \
90 /usr
/bin
/elfedit
-e
'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(MYSQL_LIBDIR)"' \
91 $(PROTO_DIR
)$(QT_SQLDIR
)/libqsqlmysql.so
; \
92 /usr
/bin
/elfedit
-e
'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(PG_LIBDIR)"' \
93 $(PROTO_DIR
)$(QT_SQLDIR
)/libqsqlpsql.so
; \
94 /usr
/bin
/elfedit
-e
'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
95 $(PROTO_DIR
)$(QT_EGLDIR
)/libqeglfs-kms-integration.so
; \
96 /usr
/bin
/elfedit
-e
'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
97 $(PROTO_DIR
)$(QT_EGLDIR
)/libqeglfs-kms-egldevice-integration.so
; \
98 /usr
/bin
/elfedit
-e
'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR)"' \
99 $(PROTO_DIR
)$(QT_LIBDIR
)/libQt5EglFsKmsSupport.so.
$(COMPONENT_VERSION
); \
103 REQUIRED_PACKAGES
+= $(CLANG_DEVELOPER_PKG
)
104 REQUIRED_PACKAGES
+= $(MYSQL_CLIENT_PKG
)
105 REQUIRED_PACKAGES
+= $(PG_DEVELOPER_PKG
)
106 REQUIRED_PACKAGES
+= database
/freetds
107 REQUIRED_PACKAGES
+= system
/header
/header-drm
108 REQUIRED_PACKAGES
+= x11
/keyboard
/data-xkb
109 REQUIRED_PACKAGES
+= x11
/library
/libpthread-stubs
110 #REQUIRED_PACKAGES += x11/library/libxi
112 # Auto-generated dependencies
113 REQUIRED_PACKAGES
+= $(CLANG_RUNTIME_PKG
)
114 REQUIRED_PACKAGES
+= $(GCC_RUNTIME_PKG
)
115 REQUIRED_PACKAGES
+= $(GXX_RUNTIME_PKG
)
116 REQUIRED_PACKAGES
+= $(MYSQL_LIBRARY_PKG
)
117 REQUIRED_PACKAGES
+= $(PG_LIBRARY_PKG
)
118 REQUIRED_PACKAGES
+= codec
/jasper
119 REQUIRED_PACKAGES
+= compress
/zstd
120 REQUIRED_PACKAGES
+= database
/sqlite-3
121 REQUIRED_PACKAGES
+= image
/library
/libpng16
122 REQUIRED_PACKAGES
+= image
/library
/libtiff
123 REQUIRED_PACKAGES
+= library
/audio
/gstreamer1
124 REQUIRED_PACKAGES
+= library
/audio
/gstreamer1
/plugin
/base
125 REQUIRED_PACKAGES
+= library
/audio
/openal
126 REQUIRED_PACKAGES
+= library
/audio
/pulseaudio
127 REQUIRED_PACKAGES
+= library
/c
++/harfbuzz
128 REQUIRED_PACKAGES
+= library
/desktop
/gtk3
129 REQUIRED_PACKAGES
+= library
/desktop
/pango
130 REQUIRED_PACKAGES
+= library
/desktop
/speech-dispatcher
131 REQUIRED_PACKAGES
+= library
/double-conversion
132 REQUIRED_PACKAGES
+= library
/freetds
133 REQUIRED_PACKAGES
+= library
/glib2
134 REQUIRED_PACKAGES
+= library
/graphics
/libmng
135 REQUIRED_PACKAGES
+= library
/icu
136 REQUIRED_PACKAGES
+= library
/libwebp
137 REQUIRED_PACKAGES
+= library
/md4c
138 REQUIRED_PACKAGES
+= library
/pcre2
139 REQUIRED_PACKAGES
+= library
/print/cups-libs
140 REQUIRED_PACKAGES
+= library
/sdl2
141 REQUIRED_PACKAGES
+= library
/security
/openssl-11
142 REQUIRED_PACKAGES
+= library
/zlib
143 REQUIRED_PACKAGES
+= SUNWcs
144 REQUIRED_PACKAGES
+= system
/library
145 REQUIRED_PACKAGES
+= system
/library
/fontconfig
146 REQUIRED_PACKAGES
+= system
/library
/freetype-2
147 REQUIRED_PACKAGES
+= system
/library
/libdbus
148 REQUIRED_PACKAGES
+= system
/library
/math
149 REQUIRED_PACKAGES
+= text
/hunspell
150 REQUIRED_PACKAGES
+= x11
/library
/libice
151 REQUIRED_PACKAGES
+= x11
/library
/libsm
152 REQUIRED_PACKAGES
+= x11
/library
/libx11
153 REQUIRED_PACKAGES
+= x11
/library
/libxcb
154 REQUIRED_PACKAGES
+= x11
/library
/libxkbcommon
155 REQUIRED_PACKAGES
+= x11
/library
/mesa
156 REQUIRED_PACKAGES
+= x11
/library
/xcb-util-image
157 REQUIRED_PACKAGES
+= x11
/library
/xcb-util-keysyms
158 REQUIRED_PACKAGES
+= x11
/library
/xcb-util-renderutil
159 REQUIRED_PACKAGES
+= x11
/library
/xcb-util-wm