Makefile revision 2899
012a352f4b26cfd874db8d06debc495c2303e8b2Bob Halley#
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# CDDL HEADER START
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence#
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# The contents of this file are subject to the terms of the
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# Common Development and Distribution License (the "License").
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# You may not use this file except in compliance with the License.
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley#
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# or http://www.opensolaris.org/os/licensing.
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# See the License for the specific language governing permissions
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# and limitations under the License.
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley#
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# When distributing Covered Code, include this CDDL HEADER in each
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# If applicable, add the following below this CDDL HEADER, with the
178f6ad061e54bc5babfca3577f72058fa0797c1Bob Halley# fields enclosed by brackets "[]" replaced with your own identifying
b897c52f865b2fc4e220e2110b874e59c716456bBob Halley# information: Portions Copyright [yyyy] [name of copyright owner]
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrence#
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrence# CDDL HEADER END
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley#
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley#
460b427411b72da26b1836b9424e2e70d65d9394David Lawrenceinclude ../../make-rules/shared-macros.mk
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyPATH=$(dir $(CC)):$(JAVA_HOME)/bin:/usr/bin:/usr/gnu/bin
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_NAME= libidn
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_VERSION= 1.19
b897c52f865b2fc4e220e2110b874e59c716456bBob HalleyCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_PROJECT_URL= http://www.gnu.org/software/libidn/
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_ARCHIVE_HASH= \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley sha256:8ed2e936b1ae3e30b45b54ca3672deaa83ee0f4d20db5ad83dc1af7222d39f41
b897c52f865b2fc4e220e2110b874e59c716456bBob HalleyCOMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/libidn/$(COMPONENT_ARCHIVE)
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCOMPONENT_BUGDB= library/libidn
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCOMPONENT_ARCHIVE_1 = tld-0.7.tar.gz
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_ARCHIVE_HASH_1 = \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley sha256:7423f48d15fb1377ee0050c3e1f22e8a91668c2f158afed57b8ead3fed908785
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCOMPONENT_ARCHIVE_URL_1 = http://download.berlios.de/tldchk/$(COMPONENT_ARCHIVE_1)
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceTPNO= 8079
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David Lawrenceinclude ../../make-rules/prep.mk
460b427411b72da26b1836b9424e2e70d65d9394David Lawrenceinclude ../../make-rules/configure.mk
460b427411b72da26b1836b9424e2e70d65d9394David Lawrenceinclude ../../make-rules/ips.mk
460b427411b72da26b1836b9424e2e70d65d9394David Lawrenceinclude ../../make-rules/lint-libraries.mk
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
460b427411b72da26b1836b9424e2e70d65d9394David LawrencePATCH_LEVEL = 0
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyLINT_FLAGS += -I$(PROTOUSRINCDIR)/idn
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence# Enable C99 mode + -Xc for its additional warnings.
460b427411b72da26b1836b9424e2e70d65d9394David Lawrencestudio_C99MODE = -Xc $(studio_C99_ENABLE)
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence# -xinline=%auto -- we like inlining where appropriate
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCFLAGS += -xinline=%auto
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence# -xbuiltin=%none -- builtins have been known to be buggy
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCFLAGS += -xbuiltin=%none
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCFLAGS += $(CPP_LARGEFILES)
c32b87bc54abacf95fb3b063d72b7d1855c1643bMichael GraffCFLAGS += $(XPG6MODE)
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCFLAGS += $(CPP_POSIX)
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCFLAGS += $(CPP_C99_EXTENDED_MATH)
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceCFLAGS += $(studio_PIC)
460b427411b72da26b1836b9424e2e70d65d9394David Lawrence
460b427411b72da26b1836b9424e2e70d65d9394David LawrenceGUNZIP = /usr/bin/gunzip
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyTAR = /usr/bin/tar
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyFIND = /usr/bin/find
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_ENV += INSTALL="$(INSTALL)"
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --includedir=/usr/include/idn
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --localstatedir=/var
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --enable-shared
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --disable-static
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --disable-csharp
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --disable-rpath
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --disable-valgrind-tests
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --enable-tld
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --enable-nls
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --disable-gtk-doc
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --enable-java
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --with-libiconv-prefix=$(CONFIGURE_PREFIX)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --with-libintl-prefix=$(CONFIGURE_PREFIX)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --with-html-dir=$(CONFIGURE_PREFIX)/share/doc
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCONFIGURE_OPTIONS += --with-pic
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyPROTOUSRSHAREDOCDIR = $(PROTOUSRSHAREDIR)/doc
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyIDNDOCDIR = $(PROTOUSRSHAREDOCDIR)/idn
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyHTMLDOCDIR = $(IDNDOCDIR)/html
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyHTMLDOCLIST = libidn-components.png libidn.html
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyDOCLIST = libidn-components.pdf libidn.pdf
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley# We must unpack the TLD database and touch the perl scripts in order
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley# to force re-generation of the TLD tables after augmenting them
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyCOMPONENT_PRE_CONFIGURE_ACTION = \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley ( cd $(SOURCE_DIR) ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(CP) $(COMPONENT_DIR)/tld-0.7.tar.gz . ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(GUNZIP) tld-0.7.tar.gz ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(TAR) xvf tld-0.7.tar > /dev/null 2>&1 ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(RM) tld-0.7.tar ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(RM) java/libidn-1.19.jar ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(RM) tld/no.tld tld/fr.tld ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(CP) doc/tld/fr.tld tld/ ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(CP) doc/tld/no.tld tld/ ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) . -type d -exec chmod 0755 {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./tld -type f -name "*.tld" -exec chmod 0644 {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./tld -type f -name "*.tld" -exec touch -acm {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./tld/templates -type f -exec chmod 0644 {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./tld/templates -type f -exec touch -acm {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./lib -type f -name "*.pl" -exec touch -acm {} + ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(FIND) ./lib -type f -name "*.pl" -exec chmod 0755 {} + )
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob HalleyASLR_MODE = $(ASLR_ENABLE)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halleybuild: $(BUILD_32_and_64)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halleyinstall: $(INSTALL_32_and_64)
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(MKDIR) $(HTMLDOCDIR) ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley list1='$(HTMLDOCLIST)' ; for f in $$list1; do \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(INSTALL) -m 0644 $(COMPONENT_DIR)/$(COMPONENT_SRC)/doc/$$f \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(HTMLDOCDIR)/ ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley done
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley list2='$(DOCLIST)' ; for f in $$list2; do \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(INSTALL) -m 0644 $(COMPONENT_DIR)/$(COMPONENT_SRC)/doc/$$f \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(IDNDOCDIR)/ ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley done
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(CP) -Rp $(COMPONENT_DIR)/$(COMPONENT_SRC)/doc/java \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(IDNDOCDIR)/ ; \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(CP) -Rp $(COMPONENT_DIR)/$(COMPONENT_SRC)/tld \
0b72c791466d0807bcf22522b5ddb7da902c2720Bob Halley $(IDNDOCDIR)/
$(CP) -Rp $(PROTOUSRSHAREDIR)/locale/en@boldquot \
$(PROTOUSRSHAREDIR)/locale/en
test: $(TEST_32_and_64)
BUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
include ../../make-rules/depend.mk