openssl-1.1: add patches for CVE-2024-2511 and CVE-2024-4741
[oi-userland.git] / components / library / qt5 / Makefile
blob1ed74ef49fe42412c2b12f025314fa9fd933bd70
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 USE_PARALLEL_BUILD= yes
20 include ../../../make-rules/shared-macros.mk
22 COMPONENT_NAME= qt
23 COMPONENT_VERSION_MJR= 5.15
24 COMPONENT_VERSION= $(COMPONENT_VERSION_MJR).13
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:9550ec8fc758d3d8d9090e261329700ddcd712e2dda97e5fcfeabfac22bea2ca
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 OPENSSL_VERSION= 3.1
47 CONFIGURE_ENV += OPENSSL_LIBS='-L$(OPENSSL_LIBDIR) -lssl -lcrypto'
48 CONFIGURE_ENV += OPENSSL_INCLUDE_PATH=$(OPENSSL_INCDIR)
50 CONFIGURE_OPTIONS = -prefix $(QT_PREFIX)
51 #CONFIGURE_OPTIONS += -verbose
52 CONFIGURE_OPTIONS += -opensource
53 CONFIGURE_OPTIONS += -confirm-license
54 CONFIGURE_OPTIONS += -nomake examples
55 CONFIGURE_OPTIONS += -nomake tests
56 CONFIGURE_OPTIONS += -c++std c++11
57 CONFIGURE_OPTIONS += -disable-reduce-exports
58 CONFIGURE_OPTIONS += -xcb
59 CONFIGURE_OPTIONS += -xcb-xlib
60 CONFIGURE_OPTIONS += -bundled-xcb-xinput
61 CONFIGURE_OPTIONS += -bindir $(QT_PREFIX)/bin/$(QT_ARCHSUBDIR.$(BITS))
62 CONFIGURE_OPTIONS += -libdir $(QT_PREFIX)/lib/$(QT_ARCHSUBDIR.$(BITS))
63 CONFIGURE_OPTIONS += -plugindir $(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))
64 CONFIGURE_OPTIONS += -importdir $(QT_PREFIX)/imports/$(QT_ARCHSUBDIR.$(BITS))
65 CONFIGURE_OPTIONS += -qmldir $(QT_PREFIX)/qml/$(QT_ARCHSUBDIR.$(BITS))
66 CONFIGURE_OPTIONS += -platform $(QT_PLATFORM.$(BITS))
67 CONFIGURE_OPTIONS += -plugin-sql-mysql
68 CONFIGURE_OPTIONS += -plugin-sql-psql
69 CONFIGURE_OPTIONS += -plugin-sql-sqlite
70 CONFIGURE_OPTIONS += -system-sqlite
71 CONFIGURE_OPTIONS += -openssl-linked
72 CONFIGURE_OPTIONS += OPENSSL_INCDIR=$(OPENSSL_INCDIR)
73 CONFIGURE_OPTIONS += OPENSSL_LIBDIR=$(OPENSSL_LIBDIR)
74 CONFIGURE_OPTIONS += $(CONFIGURE_OPTIONS.$(BITS))
76 COMPONENT_INSTALL_ENV+= INSTALL_ROOT=$(PROTO_DIR)
78 # Set runpaths to sql/egl plugins
79 QT_LIBDIR= $(QT_PREFIX)/lib/$(QT_ARCHSUBDIR.$(BITS))
80 QT_SQLDIR= $(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))/sqldrivers
81 QT_EGLDIR= $(QT_PREFIX)/plugins/$(QT_ARCHSUBDIR.$(BITS))/egldeviceintegrations
82 QT_XORGDIR= $(QT_PREFIX)/lib/xorg/$(QT_ARCHSUBDIR.$(BITS))
84 COMPONENT_POST_INSTALL_ACTION= ( \
85 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(MYSQL_LIBDIR)"' \
86 $(PROTO_DIR)$(QT_SQLDIR)/libqsqlmysql.so; \
87 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(PG_LIBDIR)"' \
88 $(PROTO_DIR)$(QT_SQLDIR)/libqsqlpsql.so; \
89 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
90 $(PROTO_DIR)$(QT_EGLDIR)/libqeglfs-kms-integration.so; \
91 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR):$(QT_XORGDIR)"' \
92 $(PROTO_DIR)$(QT_EGLDIR)/libqeglfs-kms-egldevice-integration.so; \
93 /usr/bin/elfedit -e 'dyn:runpath "$(GCC_LIBDIR):$(QT_LIBDIR)"' \
94 $(PROTO_DIR)$(QT_LIBDIR)/libQt5EglFsKmsSupport.so.$(COMPONENT_VERSION); \
97 # Build dependencies
98 REQUIRED_PACKAGES += $(CLANG_DEVELOPER_PKG)
99 REQUIRED_PACKAGES += $(MYSQL_CLIENT_PKG)
100 REQUIRED_PACKAGES += $(PG_DEVELOPER_PKG)
101 REQUIRED_PACKAGES += database/freetds
102 REQUIRED_PACKAGES += system/header/header-drm
103 REQUIRED_PACKAGES += x11/keyboard/data-xkb
104 REQUIRED_PACKAGES += x11/library/libpthread-stubs
105 #REQUIRED_PACKAGES += x11/library/libxi
107 # Auto-generated dependencies
108 REQUIRED_PACKAGES += $(CLANG_RUNTIME_PKG)
109 REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
110 REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
111 REQUIRED_PACKAGES += $(ICU_LIBRARY_PKG)
112 REQUIRED_PACKAGES += $(MYSQL_LIBRARY_PKG)
113 REQUIRED_PACKAGES += $(PG_LIBRARY_PKG)
114 REQUIRED_PACKAGES += SUNWcs
115 REQUIRED_PACKAGES += codec/jasper
116 REQUIRED_PACKAGES += compress/zstd
117 REQUIRED_PACKAGES += database/sqlite-3
118 REQUIRED_PACKAGES += image/library/libpng16
119 REQUIRED_PACKAGES += image/library/libtiff
120 REQUIRED_PACKAGES += library/audio/gstreamer1
121 REQUIRED_PACKAGES += library/audio/gstreamer1/plugin/base
122 REQUIRED_PACKAGES += library/audio/openal
123 REQUIRED_PACKAGES += library/audio/pulseaudio
124 REQUIRED_PACKAGES += library/c++/harfbuzz
125 REQUIRED_PACKAGES += library/desktop/gtk3
126 REQUIRED_PACKAGES += library/desktop/pango
127 REQUIRED_PACKAGES += library/desktop/speech-dispatcher
128 REQUIRED_PACKAGES += library/double-conversion
129 REQUIRED_PACKAGES += library/freetds
130 REQUIRED_PACKAGES += library/glib2
131 REQUIRED_PACKAGES += library/graphics/libmng
132 REQUIRED_PACKAGES += library/libwebp
133 REQUIRED_PACKAGES += library/md4c
134 REQUIRED_PACKAGES += library/pcre2
135 REQUIRED_PACKAGES += library/print/cups-libs
136 REQUIRED_PACKAGES += library/sdl2
137 REQUIRED_PACKAGES += library/security/openssl-31
138 REQUIRED_PACKAGES += library/zlib
139 REQUIRED_PACKAGES += system/library
140 REQUIRED_PACKAGES += system/library/fontconfig
141 REQUIRED_PACKAGES += system/library/freetype-2
142 REQUIRED_PACKAGES += system/library/libdbus
143 REQUIRED_PACKAGES += system/library/math
144 REQUIRED_PACKAGES += text/hunspell
145 REQUIRED_PACKAGES += x11/library/libice
146 REQUIRED_PACKAGES += x11/library/libsm
147 REQUIRED_PACKAGES += x11/library/libx11
148 REQUIRED_PACKAGES += x11/library/libxcb
149 REQUIRED_PACKAGES += x11/library/libxkbcommon
150 REQUIRED_PACKAGES += x11/library/mesa
151 REQUIRED_PACKAGES += x11/library/xcb-util-image
152 REQUIRED_PACKAGES += x11/library/xcb-util-keysyms
153 REQUIRED_PACKAGES += x11/library/xcb-util-renderutil
154 REQUIRED_PACKAGES += x11/library/xcb-util-wm