diff -r a49f9f0272f2 -r 55c87002c655 components/yasm/Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/yasm/Makefile Mon Sep 05 04:50:43 2016 -0700 @@ -0,0 +1,116 @@ +# +# CDDL HEADER START +# +# The contents of this file are subject to the terms of the +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. +# +# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE +# or http://www.opensolaris.org/os/licensing. +# See the License for the specific language governing permissions +# and limitations under the License. +# +# When distributing Covered Code, include this CDDL HEADER in each +# file and include the License file at usr/src/OPENSOLARIS.LICENSE. +# If applicable, add the following below this CDDL HEADER, with the +# fields enclosed by brackets "[]" replaced with your own identifying +# information: Portions Copyright [yyyy] [name of copyright owner] +# +# CDDL HEADER END +# + +# +# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved. +# +include ../../make-rules/shared-macros.mk + +COMPONENT_NAME= yasm +COMPONENT_VERSION= 1.3.0 +COMPONENT_PROJECT_URL= http://yasm.tortall.net/ +COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) +COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz +COMPONENT_ARCHIVE_HASH= \ + sha256:3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f +COMPONENT_ARCHIVE_URL= http://www.tortall.net/projects/$(COMPONENT_NAME)/releases/$(COMPONENT_ARCHIVE) +COMPONENT_BUGDB= utility/yasm + +TPNO= 23620 + +# We're i386-only +ifeq ($(MACH), sparc) +PUBLISH_STAMP= +endif + +# Enable ASLR for this component +ASLR_MODE = $(ASLR_ENABLE) + +PYTHON_VERSIONS= 2.7 + +include $(WS_MAKE_RULES)/prep.mk +include $(WS_MAKE_RULES)/configure.mk +include $(WS_MAKE_RULES)/ips.mk + +# Adjust all the source files in all the Makefile.inc files to generate +# shared libraries rather than a library archive. +# Note that the version number (in the shared-libraries.patch file) should be +# bumped anytime upstream makes an incompatible change (that we're aware of). +COMPONENT_PRE_CONFIGURE_ACTION = \ + $(CLONEY) $(SOURCE_DIR) $(@D) ; \ + mlist=`/usr/bin/find $(SOURCE_DIR) -name 'Makefile.inc'` ; \ + for f in $$mlist ; do \ + $(GSED) -i -e 's|libyasm_a_SOURCES|libyasm_la_SOURCES|g' \ + -e 's|LDADD = libyasm.a|LDADD = libyasm.la|g' \ + $$f ; \ + done ; \ + (cd $(@D) ; \ + libtoolize --automake --copy ; \ + aclocal -I m4 ; \ + autoheader ; \ + automake --add-missing --copy ; \ + autoconf) + +CONFIGURE_ENV += CFLAGS="$(CFLAGS)" +CONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)" +CONFIGURE_ENV += LDFLAGS="$(LDFLAGS)" + +CONFIGURE_ENV += am_cv_python_pythondir=$(PYTHON_VENDOR_PACKAGES) +CONFIGURE_ENV += am_cv_python_pyexecdir=$(PYTHON_VENDOR_PACKAGES) + +CONFIGURE_OPTIONS += --enable-python +CONFIGURE_OPTIONS += --disable-python-bindings + +# Needed for "gmake test" to work successfully. +# If SHELLOPTS is exported (as it is by the userland makefiles), +# then all shell options get exported to child invocations of bash, +# which results in test failures due to nounset and xtrace being +# set unexpectedly, and errors such as "$1: unbound variable" and +# diffs failing due to script tracing in output files. +unexport SHELLOPTS + +sparc: + @echo "Not available." + +configure_sparc: sparc +build_sparc: sparc +install_sparc: sparc +test_sparc: sparc + +configure_i386: $(CONFIGURE_32_and_64) +build_i386: $(BUILD_32_and_64) +install_i386: $(INSTALL_32_and_64) +test_i386: $(TEST_32_and_64) + +# common targets. we're i386-only so we have to +# be slightly tricky. + +configure: configure_$(MACH) + +build: build_$(MACH) + +install: install_$(MACH) + +test: test_$(MACH) + +# Required for man pages. +REQUIRED_PACKAGES += developer/documentation-tool/xmlto +REQUIRED_PACKAGES += system/library