commit | author | age
|
060fa7
|
1 |
# |
D |
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 2011-2013, EveryCity Ltd. All rights reserved. |
|
13 |
# Copyright 2016-2017, Wiselabs Software Ltda - http://www.wiselabs.com.br . All rights reserved. |
|
14 |
# Copyright 2019, Michal Nowak |
|
15 |
# Copyright 2022, erwinlem |
|
16 |
# Copyright 2022, Daniel Bell |
642f9f
|
17 |
# Copyright 2023,2024 Friedrich Kink |
060fa7
|
18 |
# |
D |
19 |
|
35d88b
|
20 |
BUILD_STYLE= cmake |
77e1bc
|
21 |
USE_PARALLEL_BUILD = yes |
MT |
22 |
|
060fa7
|
23 |
include ../../../make-rules/shared-macros.mk |
D |
24 |
|
|
25 |
COMPONENT_NAME= mariadb |
642f9f
|
26 |
COMPONENT_VERSION= 10.6.17 |
77e1bc
|
27 |
COMPONENT_MAJOR_VERSION=$(subst $(space),.,$(wordlist 1,2,$(subst ., ,$(HUMAN_VERSION)))) |
060fa7
|
28 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
D |
29 |
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
642f9f
|
30 |
COMPONENT_ARCHIVE_HASH= sha256:fb41b0702059c046832d60138733acb73e4c0e5a1a0681061709d25591e4b086 |
060fa7
|
31 |
COMPONENT_PROJECT_URL= https://www.mariadb.org/ |
642f9f
|
32 |
COMPONENT_ARCHIVE_URL= https://dlm.mariadb.com/3713563/MariaDB/$(COMPONENT_SRC)/source/$(COMPONENT_ARCHIVE) |
77e1bc
|
33 |
#COMPONENT_SIG_URL= https://dlm.mariadb.com/3588623/MariaDB/$(COMPONENT_SRC)/source/$(COMPONENT_ARCHIVE).asc |
MT |
34 |
COMPONENT_LICENSE= GPL-2.0-only |
|
35 |
COMPONENT_LICENSE_FILE= COPYING |
060fa7
|
36 |
|
D |
37 |
include $(WS_MAKE_RULES)/common.mk |
77e1bc
|
38 |
|
MT |
39 |
MARIADBV = $(subst .,,$(COMPONENT_MAJOR_VERSION)) |
ef96ad
|
40 |
|
060fa7
|
41 |
JAVA_HOME=/usr/jdk/openjdk1.8.0 |
D |
42 |
AR=/usr/bin/gar |
|
43 |
RANLIB=/usr/bin/granlib |
|
44 |
PCRE_INCLUDE=/usr/include/pcre |
|
45 |
|
|
46 |
CFLAGS += -fPIC |
|
47 |
CXXFLAGS += -fPIC |
|
48 |
CPPFLAGS += -I$(PCRE_INCLUDE) -I$(JAVA_HOME)/include/solaris |
|
49 |
# Prevents "Text relocation remains referenced against symbol offset |
|
50 |
# in file ../../sql/mysqld_dtrace_all.o" error |
0d37ea
|
51 |
LDFLAGS += -Bsymbolic -mimpure-text -lrt -L$(OPENSSL_PREFIX)/lib/$(MACH64) |
060fa7
|
52 |
|
D |
53 |
CONFIGURE_PREFIX=/usr/mariadb/$(COMPONENT_MAJOR_VERSION) |
|
54 |
CONFDIR=/etc/mariadb/$(COMPONENT_MAJOR_VERSION) |
|
55 |
DATA_PREFIX=/var/mariadb/$(COMPONENT_MAJOR_VERSION) |
|
56 |
|
|
57 |
CMAKE_PLUGINDIR.64 = lib/$(MACH64)/plugin |
|
58 |
|
|
59 |
CMAKE_OPTIONS+= -DCMAKE_C_COMPILER=$(CC) |
|
60 |
CMAKE_OPTIONS+= -DCMAKE_CXX_COMPILER=$(CXX) |
|
61 |
CMAKE_OPTIONS+= -DCMAKE_AR=$(AR) |
|
62 |
CMAKE_OPTIONS+= -DCMAKE_RANLIB=$(RANLIB) |
|
63 |
|
|
64 |
CMAKE_OPTIONS+= -DINSTALL_LAYOUT=SVR4 |
|
65 |
CMAKE_OPTIONS+= -DCMAKE_INSTALL_PREFIX=$(CONFIGURE_PREFIX) |
|
66 |
CMAKE_OPTIONS+= -DINSTALL_BINDIR=$(CMAKE_BINDIR.$(BITS)) |
|
67 |
CMAKE_OPTIONS+= -DINSTALL_INFODIR=bin |
|
68 |
CMAKE_OPTIONS+= -DINSTALL_INCLUDEDIR=include |
|
69 |
CMAKE_OPTIONS+= -DINSTALL_LIBDIR=$(CMAKE_LIBDIR.$(BITS)) |
|
70 |
CMAKE_OPTIONS+= -DINSTALL_PLUGINDIR=$(CMAKE_PLUGINDIR.$(BITS)) |
|
71 |
CMAKE_OPTIONS+= -DINSTALL_MANDIR=man |
|
72 |
CMAKE_OPTIONS+= -DINSTALL_SHAREDIR=share |
|
73 |
CMAKE_OPTIONS+= -DINSTALL_MYSQLSHAREDIR=share |
|
74 |
CMAKE_OPTIONS+= -DINSTALL_SBINDIR=$(CMAKE_BINDIR.$(BITS)) |
|
75 |
CMAKE_OPTIONS+= -DINSTALL_SCRIPTDIR=$(CMAKE_BINDIR.$(BITS)) |
|
76 |
CMAKE_OPTIONS+= -DMYSQL_DATADIR=$(DATA_PREFIX)/data |
|
77 |
CMAKE_OPTIONS+= -DSYSCONFDIR=$(CONFDIR) |
|
78 |
CMAKE_OPTIONS+= -DINSTALL_SYSCONFDIR=$(CONFDIR) |
|
79 |
CMAKE_OPTIONS+= -DENABLE_DTRACE=ON |
|
80 |
CMAKE_OPTIONS+= -DWITH_READLINE=ON |
|
81 |
CMAKE_OPTIONS+= -DWITH_EMBEDDED_SERVER=ON |
|
82 |
CMAKE_OPTIONS+= -DWITHOUT_MROONGA_STORAGE_ENGINE=ON |
|
83 |
CMAKE_OPTIONS+= -DHAVE_VISIBILITY_HIDDEN=0 |
|
84 |
CMAKE_OPTIONS+= -DMY_CONTEXT_USE_UCONTEXT=1 |
|
85 |
CMAKE_OPTIONS+= -DWITH_EXTRA_CHARSETS=complex |
|
86 |
CMAKE_OPTIONS+= -DWITH_ZLIB=system |
|
87 |
CMAKE_OPTIONS+= -DWITH_PCRE=system |
|
88 |
CMAKE_OPTIONS+= -DWITH_SSL=system |
|
89 |
CMAKE_OPTIONS+= -DINSTALL_SUPPORTFILESDIR=share/mysql |
|
90 |
CMAKE_OPTIONS+= -DCMAKE_BUILD_TYPE=Release |
77e1bc
|
91 |
CMAKE_OPTIONS+= -DCMAKE_REQUIRED_INCLUDES="$(PCRE_INCLUDE) $(OPENSSL_INCDIR)" |
060fa7
|
92 |
CMAKE_OPTIONS+= -DWITH_INNOBASE_STORAGE_ENGINE=1 |
D |
93 |
CMAKE_OPTIONS+= -DWITH_INNODB_MEMCACHED=ON |
|
94 |
CMAKE_OPTIONS+= -DWITH_COMMENT="OpenIndiana MariaDB" |
|
95 |
CMAKE_OPTIONS+= -DWITH_XTRADB_STORAGE_ENGINE=1 |
|
96 |
CMAKE_OPTIONS+= -DWITH_CSV_STORAGE_ENGINE=1 |
|
97 |
CMAKE_OPTIONS+= -DCOMPILATION_COMMENT="OpenIndiana package" |
|
98 |
CMAKE_OPTIONS+= -DJAVA_INCLUDE_PATH=$(JAVA_HOME)/include |
78e83b
|
99 |
CMAKE_OPTIONS+= -DJAVA_AWT_LIBRARY=/usr/java/jre/lib/$(MACH64)/libjawt.so |
K |
100 |
CMAKE_OPTIONS+= -DJAVA_JVM_LIBRARY=/usr/java/jre/lib/$(MACH64)/server/libjvm.so |
77e1bc
|
101 |
CMAKE_OPTIONS+= -DMARIADB_UNIX_ADDR=/tmp/mariadb$(MARIADBV).sock |
MT |
102 |
CMAKE_OPTIONS+= -DMYSQL_UNIX_ADDR=/tmp/mariadb$(MARIADBV).sock |
|
103 |
CMAKE_OPTIONS+= -DPLUGIN_ROCKSDB=NO |
060fa7
|
104 |
|
77e1bc
|
105 |
CMAKE_ENV += CPPFLAGS="$(CPPFLAGS) -I$(OPENSSL_INCDIR)" |
060fa7
|
106 |
|
77e1bc
|
107 |
# Testing |
MT |
108 |
COMPONENT_TEST_DIR = $(@D)/mysql-test |
|
109 |
COMPONENT_TEST_CMD = ./mtr |
|
110 |
COMPONENT_TEST_ARGS += --parallel=$(PARALLEL_JOBS) |
|
111 |
COMPONENT_TEST_ARGS += --mem |
|
112 |
COMPONENT_TEST_ARGS += --force |
|
113 |
COMPONENT_TEST_ARGS += --retry=0 |
|
114 |
COMPONENT_TEST_ARGS += --force-restart |
|
115 |
COMPONENT_TEST_ARGS += --max-test-fail=0 |
|
116 |
COMPONENT_TEST_ARGS += --skip-test-list=$(COMPONENT_DIR)/files/disabled-tests |
060fa7
|
117 |
|
77e1bc
|
118 |
MARIADB_TEST_TRANSFORMS += -n |
MT |
119 |
MARIADB_TEST_TRANSFORMS += -e 's/ */ /g' # Collapse spaces |
|
120 |
MARIADB_TEST_TRANSFORMS += -e 's/ \] [0-9]*$$/ \]/' # Timing |
|
121 |
MARIADB_TEST_TRANSFORMS += -e 's/ w[0-9]\{1,\} / /' # Worker number |
|
122 |
MARIADB_TEST_TRANSFORMS += -e '/\[ [^ ]\{1,\} \]/p' # Print test results only |
060fa7
|
123 |
|
77e1bc
|
124 |
# Mangle test results and sort them |
MT |
125 |
COMPONENT_TEST_TRANSFORMS += \ |
|
126 |
"| ( \ |
|
127 |
$(GSED) -u -n -e '/^-\{32\}/q' ; \ |
|
128 |
$(GSED) -u $(MARIADB_TEST_TRANSFORMS) -e '/^-\{32\}/Q' | $(SORT) ; \ |
|
129 |
print "--------------------------------" ; \ |
|
130 |
$(CAT) \ |
|
131 |
) | $(COMPONENT_TEST_TRANSFORMER) -e '/^Spent /d'" |
|
132 |
# Skipped tests that require debug build could vary |
|
133 |
COMPONENT_TEST_TRANSFORMS += "-e '/\[ skipped \] Requires debug build$$/d'" |
642f9f
|
134 |
COMPONENT_TEST_TRANSFORMS += "-e '/\[ skipped \] Extra checkpoint 1 after/d'" |
77e1bc
|
135 |
# Because of above the final stat of skipped tests could vary as well |
MT |
136 |
COMPONENT_TEST_TRANSFORMS += "-e '/^[0-9]\{1,\} tests were skipped/d'" |
|
137 |
|
|
138 |
# Manually added test dependencies |
|
139 |
TEST_REQUIRED_PACKAGES += library/perl-5/dbd-mariadb |
|
140 |
TEST_REQUIRED_PACKAGES += library/perl-5/dbi |
|
141 |
|
060fa7
|
142 |
# Auto-generated dependencies |
D |
143 |
REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG) |
|
144 |
REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG) |
0d37ea
|
145 |
REQUIRED_PACKAGES += SUNWcs |
060fa7
|
146 |
REQUIRED_PACKAGES += compress/bzip2 |
D |
147 |
REQUIRED_PACKAGES += compress/xz |
0d37ea
|
148 |
REQUIRED_PACKAGES += compress/zstd |
060fa7
|
149 |
REQUIRED_PACKAGES += library/libxml2 |
D |
150 |
REQUIRED_PACKAGES += library/lz4 |
|
151 |
REQUIRED_PACKAGES += library/lzo |
|
152 |
REQUIRED_PACKAGES += library/pcre2 |
|
153 |
REQUIRED_PACKAGES += library/security/cracklib |
35d88b
|
154 |
REQUIRED_PACKAGES += library/security/openssl-31 |
060fa7
|
155 |
REQUIRED_PACKAGES += library/unixodbc |
D |
156 |
REQUIRED_PACKAGES += library/zlib |
|
157 |
REQUIRED_PACKAGES += runtime/perl |
|
158 |
REQUIRED_PACKAGES += service/security/kerberos-5 |
0d37ea
|
159 |
REQUIRED_PACKAGES += shell/ksh93 |
060fa7
|
160 |
REQUIRED_PACKAGES += system/library |
D |
161 |
REQUIRED_PACKAGES += system/library/math |
|
162 |
REQUIRED_PACKAGES += system/library/security/gss |
0d37ea
|
163 |
REQUIRED_PACKAGES += web/curl |