rust/cargo-c: update to 0.10.7+cargo-0.84.0
[oi-userland.git] / components / network / asterisk / Makefile
blob8acf9a8ae43aedcaa45359c63a3606258f8ccaf2
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 2016 Andrey Sokolov. All rights reserved.
13 # Copyright 2017 Alexander Pyhalov
14 # Copyright 2021 Olaf Bohlen
15 # Copyright 2023,2024 Friedrich Kink
18 USE_PARALLEL_BUILD= yes
19 include ../../../make-rules/shared-macros.mk
21 COMPONENT_NAME= asterisk
22 COMPONENT_VERSION= 22.1.0
23 COMPONENT_SUMMARY= Asterisk is an all-purpose telephony server
24 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
25 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
26 COMPONENT_ARCHIVE_HASH= sha256:c892e9a51919d62bee2bed8b7c6f59ec79dfd48768ae289df61dba2da83f4413
27 COMPONENT_PROJECT_URL= https://www.asterisk.org
28 COMPONENT_ARCHIVE_URL= https://downloads.asterisk.org/pub/telephony/asterisk/old-releases/$(COMPONENT_ARCHIVE)
29 COMPONENT_FMRI= network/asterisk
30 COMPONENT_CLASSIFICATION=Applications/Internet
31 COMPONENT_LICENSE= GPLv2
32 COMPONENT_LICENSE_FILE= COPYING
34 TEST_TARGET= $(NO_TESTS)
35 include $(WS_MAKE_RULES)/common.mk
37 PATH= $(PATH.gnu)
39 PATCH_LEVEL= 0
41 COMPONENT_PRE_CONFIGURE_ACTION += ( $(CLONEY) $(SOURCE_DIR) $(@D) );
44 # res_geolocation does not build with the illumos linker due to missing capabilities/options
45 # no workaround known so far
46 # also remove deprecated functions
48 # does not work currently
49 # contrib/scripts/get_mp3_source.sh
50 # therefore exclude
51 # ./menuselect/menuselect --enable format_mp3 menuselect.makeopts; \
53 COMPONENT_POST_CONFIGURE_ACTION += ( \
54 cd $(@D); \
55 $(GSED) -i -e 's:LDAP_INCLUDE=:LDAP_INCLUDE=-I/usr/include/openldap:' makeopts; \
56 $(GSED) -i -e 's:-L/usr/lib/amd64::g' makeopts; \
57 $(GSED) -i -e 's/ -lldap-2.6//' makeopts; \
58 $(GSED) -i -e 's/LDAP_LIB= -lldap/LDAP_LIB= -lldap-2.6/' makeopts; \
59 $(GSED) -i -e "s:-L$(OPENSSL_PREFIX)/lib :-L$(OPENSSL_LIBDIR.$(BITS)) :" makeopts; \
60 $(GSED) -i -e "s:$(MYSQL_HOME)$(MYSQL_HOME):$(MYSQL_HOME):g" makeopts; \
61 $(GSED) -i -e "s:-L$(MYSQL_LIBDIR):-L$(MYSQL_LIBDIR) -R$(MYSQL_LIBDIR):" makeopts; \
62 $(GSED) -i -e "s:-L$(PG_LIBDIR.$(BITS)):-L$(PG_LIBDIR.$(BITS)) -R$(PG_LIBDIR.$(BITS)):" makeopts; \
63 $(GMAKE) menuselect.makeopts; \
64 ./menuselect/menuselect --disable res_geolocation menuselect.makeopts; \
65 ./menuselect/menuselect --enable res_config_mysql menuselect.makeopts; \
66 ./menuselect/menuselect --enable cdr_radius menuselect.makeopts; \
67 ./menuselect/menuselect --enable cel_radius menuselect.makeopts; \
68 ./menuselect/menuselect --enable res_mwi_external menuselect.makeopts; \
69 ./menuselect/menuselect --enable res_ari_mailboxes menuselect.makeopts; \
70 ./menuselect/menuselect --enable res_cliexec menuselect.makeopts; \
71 ./menuselect/menuselect --enable check_expr menuselect.makeopts; \
72 ./menuselect/menuselect --enable check_expr2 menuselect.makeopts; \
73 ./menuselect/menuselect --enable stereorize menuselect.makeopts; \
74 ./menuselect/menuselect --enable res_chan_stats menuselect.makeopts; \
75 ./menuselect/menuselect --enable res_endpoint_stats menuselect.makeopts; \
76 ./menuselect/menuselect --enable res_stasis_mailbox menuselect.makeopts; \
77 ./menuselect/menuselect --enable res_mwi_external_ami menuselect.makeopts; \
78 ./menuselect/menuselect --enable app_voicemail_odbc menuselect.makeopts; \
79 ./menuselect/menuselect --enable app_saycounted menuselect.makeopts; \
80 ./menuselect/menuselect --enable app_statsd menuselect.makeopts; \
81 ./menuselect/menuselect --enable G711_NEW_ALGORITHM menuselect.makeopts; \
82 ./menuselect/menuselect --enable G711_REDUCED_BRANCHING menuselect.makeopts; \
83 ./menuselect/menuselect --disable app_adsiprog menuselect.makeopts; \
84 ./menuselect/menuselect --disable app_getcpeid menuselect.makeopts; \
85 ./menuselect/menuselect --disable res_adsi menuselect.makeopts; \
88 CONFIGURE_BINDIR= /usr/bin
89 CONFIGURE_SBINDIR= /usr/sbin
91 CONFIGURE_OPTIONS += --sysconfdir=$(ETCDIR)
92 CONFIGURE_OPTIONS += --localstatedir=$(VARDIR)
93 CONFIGURE_OPTIONS += --with-gnu-ld=no
94 CONFIGURE_OPTIONS += --with-crypto=$(OPENSSL_PREFIX)
95 CONFIGURE_OPTIONS += --with-ssl=$(OPENSSL_PREFIX)
96 CONFIGURE_OPTIONS += --with-pjproject-bundled
97 CONFIGURE_OPTIONS += --with-libjwt-bundled
98 CONFIGURE_OPTIONS += --with-gsm=internal
99 CONFIGURE_OPTIONS += --with-ilbc=internal
100 CONFIGURE_OPTIONS += --with-unixodbc
101 CONFIGURE_OPTIONS += --with-ldap
102 CONFIGURE_OPTIONS += --with-gmime
103 CONFIGURE_OPTIONS += --with-netsnmp
104 CONFIGURE_OPTIONS += --with-vorbis
105 CONFIGURE_OPTIONS += --with-ogg
106 CONFIGURE_OPTIONS += --with-opus
107 CONFIGURE_OPTIONS += --with-sdl
108 CONFIGURE_OPTIONS += --with-neon
109 CONFIGURE_OPTIONS += --with-lua
110 CONFIGURE_OPTIONS += --with-tds
111 CONFIGURE_OPTIONS += --with-jansson
112 CONFIGURE_OPTIONS += --with-libedit
113 CONFIGURE_OPTIONS += --with-libxml2
114 CONFIGURE_OPTIONS += --with-libxslt
115 CONFIGURE_OPTIONS += --with-libcurl
116 CONFIGURE_OPTIONS += --with-gtk2
117 CONFIGURE_OPTIONS += --with-popt
118 CONFIGURE_OPTIONS += --with-spandsp
119 CONFIGURE_OPTIONS += --with-speex
120 CONFIGURE_OPTIONS += --with-speexdsp
121 CONFIGURE_OPTIONS += --with-mysqlclient=$(MYSQL_HOME)
122 #CONFIGURE_OPTIONS += --with-avcodec
123 CONFIGURE_OPTIONS += --with-postgres=$(PG_HOME)
124 CONFIGURE_OPTIONS += NOISY_BUILD=yes
125 CONFIGURE_OPTIONS += PKG_CONFIG_PATH=$(PKG_CONFIG_PATH.$(BITS))
126 CONFIGURE_OPTIONS += LDFLAGS="-m64 -lldap-2.6 -L$(JPEG_LIBDIR)"
127 CONFIGURE_OPTIONS += CPPFLAGS="-I/usr/include/jansson -I/usr/include/odbc -I/usr/include/openldap"
128 # HAVE_OPENSSL_BIO_METHOD not properly recognised by configure therefore expiclitly set
129 CONFIGURE_OPTIONS += CFLAGS="-m64 -I/usr/include/odbc -DHAVE_OPENSSL_BIO_METHOD"
131 COMPONENT_INSTALL_TARGETS += samples
133 # Build dependencies
134 REQUIRED_PACKAGES += $(PG_DEVELOPER_PKG)
135 REQUIRED_PACKAGES += $(MYSQL_BASEPKG)
136 REQUIRED_PACKAGES += library/popt
138 # Auto-generated dependencies
139 REQUIRED_PACKAGES += $(MYSQL_LIBRARY_PKG)
140 REQUIRED_PACKAGES += $(OPENSSL_PKG)
141 REQUIRED_PACKAGES += $(PG_LIBRARY_PKG)
142 REQUIRED_PACKAGES += SUNWcs
143 REQUIRED_PACKAGES += codec/speex
144 REQUIRED_PACKAGES += database/sqlite-3
145 REQUIRED_PACKAGES += library/freetds
146 REQUIRED_PACKAGES += library/glib2
147 REQUIRED_PACKAGES += library/gmime3
148 REQUIRED_PACKAGES += library/jansson
149 REQUIRED_PACKAGES += library/libedit
150 REQUIRED_PACKAGES += library/libical
151 REQUIRED_PACKAGES += library/libogg
152 REQUIRED_PACKAGES += library/libvorbis
153 REQUIRED_PACKAGES += library/libxml2
154 REQUIRED_PACKAGES += library/libxslt
155 REQUIRED_PACKAGES += library/neon
156 REQUIRED_PACKAGES += library/openldap
157 REQUIRED_PACKAGES += library/spandsp
158 REQUIRED_PACKAGES += library/speexdsp
159 REQUIRED_PACKAGES += library/unixodbc
160 REQUIRED_PACKAGES += library/zlib
161 REQUIRED_PACKAGES += runtime/lua-54
162 REQUIRED_PACKAGES += service/network/unbound
163 REQUIRED_PACKAGES += shell/bash
164 REQUIRED_PACKAGES += shell/ksh93
165 REQUIRED_PACKAGES += system/library
166 REQUIRED_PACKAGES += system/library/math
167 REQUIRED_PACKAGES += system/management/snmp/net-snmp
168 REQUIRED_PACKAGES += web/curl