Makefile revision 6035
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
1fdd2470b625a58b57d0b155e6caf8c4fc0afe8aAutomatic Updater# CDDL HEADER START
75c0816e8295e180f4bc7f10db3d0d880383bc1cMark Andrews#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The contents of this file are subject to the terms of the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Common Development and Distribution License (the "License").
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You may not use this file except in compliance with the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# or http://www.opensolaris.org/os/licensing.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# See the License for the specific language governing permissions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and limitations under the License.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# When distributing Covered Code, include this CDDL HEADER in each
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# If applicable, add the following below this CDDL HEADER, with the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# fields enclosed by brackets "[]" replaced with your own identifying
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# information: Portions Copyright [yyyy] [name of copyright owner]
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# CDDL HEADER END
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
e21a2904f02a03fa06b6db04d348f65fe9c67b2bMark Andrews#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinBUILD_BITS= 64_and_32
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# All components using gobject-introspection must be built with gcc as
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# gobject-introspection 1.46 causes the build to fail when using Studio.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPILER = gcc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../../make-rules/shared-macros.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Override PATH set in shared-macros.mk by setting the GNU PATH as default.
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsPATH=$(GNUBIN):$(USRBINDIR)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_NAME= avahi
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_VERSION= 0.6.32
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTPNO= 27473
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_ARCHIVE_HASH= sha256:d54991185d514a0aba54ebeb408d7575b60f5818a772e28fa0e18b98bc1db454
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_ARCHIVE_URL= https://github.com/lathiat/avahi/releases/download/v$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_PROJECT_URL= http://www.avahi.org/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUGDB= library/avahi
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Depends on a Python module from Desktop that is only available 32-bit in S11.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinifeq ($(BUILD_TYPE), evaluation)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinBUILD_32_and_64=
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsINSTALL_32_and_64=
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPUBLISH_STAMP=
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinendif
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTEST_TARGET= $(NO_TESTS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude $(WS_MAKE_RULES)/common.mk
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_SBINDIR.64 = $(CONFIGURE_BINDIR.64)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --enable-shared
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --disable-static
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --sysconfdir=$(ETCDIR)
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --with-avahi-user=daemon
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --with-avahi-group=other
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --localstatedir=$(VARDIR)/avahi
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --with-distro=none
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --disable-gtk3
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --disable-pygtk
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-qt3
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-qt4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --disable-mono
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-monodoc
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --enable-tests
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-autoipd
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-gdbm
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --enable-dbm
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# xmltoman is not available
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS += --disable-manpages
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS.64 += --enable-doxygen-man
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCONFIGURE_OPTIONS.32 += --disable-doxygen-man
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# stack-protector breaks build with gcc 5.3 if not explicitly disabled until
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# fix for 23185183 is available on all build machines (s12_99 or later)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += --disable-stack-protector
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += CPP="$(CC) -E"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLDFLAGS += -ldns_sd
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += PYTHON=$(PYTHON.$(PYTHON_VERSION))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCONFIGURE_OPTIONS += am_cv_python_pythondir="$(PYTHON_VENDOR_PACKAGES)"
a1ad6695ed6f988406cf155aa26376f84f73bcb9Automatic UpdaterCONFIGURE_OPTIONS += am_cv_python_pyexecdir="$(PYTHON_VENDOR_PACKAGES)"
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater
a1ad6695ed6f988406cf155aa26376f84f73bcb9Automatic Updater# NOCONFIGURE=yes -> do not execute "configure" directly from "autogen.sh" (/wo CONFIGURE_OPTIONS...)
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# running of configure /wo CONFIGURE_OPTIONS + ENV -> configure will fail (on --with-distro=none is missing)
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# because "sunos" is not among the distros known to avahi.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_PREP_ACTION += \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein ( cd $(@D) ; set NOCONFIGURE=yes $(CONFIG_SHELL) autogen.sh )
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# g-i-r-scanner also need to have PATH to cc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUILD_ENV += CC="$(CC)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinCOMPONENT_BUILD_ENV += CFLAGS="$(CFLAGS)"
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCOMPONENT_BUILD_ENV += LDFLAGS="$(LDFLAGS)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(BUILD_32_and_64): PATH = $(SPRO_VROOT)/bin:$(GNUBIN):$(USRBINDIR)
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterCOMPONENT_POST_INSTALL_ACTION += \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein ( $(PYTHON.$(PYTHON_VERSION)) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES) )
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# Enable ASLR for this component
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinASLR_MODE = $(ASLR_ENABLE)
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic Updater# build standalone sub-components only
9c6a5d1f22f972232d7a9fd5c5fa64f10bacbdffAutomatic UpdaterSUBDIRS = avahi-common avahi-core avahi-client avahi-glib avahi-gobject avahi-ui
7208386cd37a2092c70eddf80cf29519b16c4c80Mark Andrews$(BUILD_32): COMPONENT_BUILD_TARGETS += SUBDIRS="$(SUBDIRS)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(INSTALL_32): COMPONENT_INSTALL_TARGETS += SUBDIRS="$(SUBDIRS)"
507151045be68c671ffd4e2f37e17cdfa0376fc4Automatic Updater
507151045be68c671ffd4e2f37e17cdfa0376fc4Automatic Updater# gobject-introspection tools are used to build, not a runtime dependency
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += library/desktop/gobject/gobject-introspection
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += library/desktop/gtk2
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += library/expat
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsREQUIRED_PACKAGES += library/glib2
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsREQUIRED_PACKAGES += library/libdaemon
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += runtime/python-27
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsREQUIRED_PACKAGES += service/network/dns/mdns
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsREQUIRED_PACKAGES += shell/ksh93
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += system/core-os
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += system/library/dbus
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsREQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinREQUIRED_PACKAGES += system/library/libdbus
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein