diff options
author | marino <marino@pkgsrc.org> | 2012-07-08 20:14:28 +0000 |
---|---|---|
committer | marino <marino@pkgsrc.org> | 2012-07-08 20:14:28 +0000 |
commit | 8820997a5f0beed835f9efb60b729e4dc75c612e (patch) | |
tree | daaad1d070039adc53e7724267362cde00279d32 /www/aws | |
parent | 50cd4de187882884c02d8566f00d3f37b30a6970 (diff) | |
download | pkgsrc-8820997a5f0beed835f9efb60b729e4dc75c612e.tar.gz |
www/aws: Build with USE_LANGUAGES+= ada
1) Remove lang/gnat-aux dependency
2) USE_LANGUAGES+= ada (invokes lang/gcc-aux dependency)
3) Restore use of pkgsrc wrappers
4) Utilize custom capability of devel/gprbuild-aux Library_Options ("-R"
and "-Wl,-R" to redefine rpaths of shared libraries to remove
references to the work directory. This error was highlighted by new
updates to the PKG_DEVELOPER=yes checks.
5) Fix for Ada 2012 binding interpretation that prevented build on
lang/gcc-aux. (AI05-0115, aggregates with invisible components)
6) GPRBuild-based packages require USE_LANGUAGES+= c++ fortran in addition
to "c" and "ada" because GPRBUILD probes for these languages. If they
aren't on the language list, pkgsrc comes back with a warning message
that causes gprbuild to throw an unhandled exception due to a regex
failure. www/aws doesn't contain c++ or fortran despite the value of
USE_LANGUAGES.
Diffstat (limited to 'www/aws')
-rw-r--r-- | www/aws/Makefile | 32 | ||||
-rw-r--r-- | www/aws/distinfo | 6 | ||||
-rw-r--r-- | www/aws/options.mk | 8 | ||||
-rw-r--r-- | www/aws/patches/patch-docs_docs.gpr | 13 | ||||
-rw-r--r-- | www/aws/patches/patch-include_include.gpr | 12 | ||||
-rw-r--r-- | www/aws/patches/patch-src_soap_soap-message-xml.adb | 24 | ||||
-rw-r--r-- | www/aws/patches/patch-src_src.gpr | 13 |
7 files changed, 95 insertions, 13 deletions
diff --git a/www/aws/Makefile b/www/aws/Makefile index 9c08307223f..825a86b6da6 100644 --- a/www/aws/Makefile +++ b/www/aws/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.5 2012/03/16 04:31:15 obache Exp $ +# $NetBSD: Makefile,v 1.6 2012/07/08 20:14:28 marino Exp $ # DISTNAME= aws-${AWS_VERSION} -PKGREVISION= 2 +PKGREVISION= 3 CATEGORIES= www MASTER_SITES= http://downloads.dragonlace.net/src/ \ http://dragonlace.mirrors.ada.cx/src/ @@ -16,6 +16,12 @@ LICENSE= gnu-gpl-v2 PKG_DESTDIR_SUPPORT= user-destdir AWS_VERSION= 2.10.0.1 USE_TOOLS+= gmake makeinfo sed gawk +USE_LANGUAGES= c ada c++ fortran + +# Note: c++ and fortran aren't used, but gprconfig probes for them. +# When that happens, pkgsrc wrapper emits a warning message which causes +# gprconfig to crash due to output text not matching expected regexp +# Adding c++ and fortran to USE_LANGUAGES avoids this issue. PYTHON_VERSIONS_ACCEPTED= 26 27 @@ -23,6 +29,19 @@ PYTHON_VERSIONS_ACCEPTED= 26 27 MAKE_ENV+= ADA_PROJECT_PATH=${PREFIX}/lib/gnat +# Link options were added for the aws library +# "-R" option disables all rpaths except adalib and compiler libs. This is +# done because by default the rpaths will points at the WRKOBJDIR because +# it doesn't support the concept of DESTDIR. +# "-Wl,-R" adds a second rpath string. +# -Wl,-rpath is a better choice, but synonym -Wl,-R works on all BSD and SunOS +SUBST_CLASSES+= rpath +SUBST_STAGE.rpath= pre-configure +SUBST_MESSAGE.rpath= Adjust rpaths of shared libraries +SUBST_FILES.rpath= src/src.gpr include/include.gpr +SUBST_SED.rpath= -e "s,@ADDITIONAL_RPATH@,${ADDITIONAL_RPATH}," +ADDITIONAL_RPATH= ${PREFIX}/lib:${PREFIX}/lib/aws/native/relocatable + GENERATE_PLIST= cd ${DESTDIR}${PREFIX}; GENERATE_PLIST+= ${FIND} bin/aws_password; GENERATE_PLIST+= ${FIND} bin/awsres; @@ -42,14 +61,8 @@ GENERATE_PLIST+= ${FIND} share/gps/plug-ins/aws.xml; GENERATE_PLIST+= ${FIND} share/gps/plug-ins/aws_api.xml; GENERATE_PLIST+= ${FIND} share/gps/plug-ins/wsdl2aws.xml; -post-wrapper: - # We disable at least the wrapper binaries on all GNAT AUX to - # avoid potential linkage problems - ${RM} ${WRKDIR}/.wrapper/bin/* - do-configure: - cd ${WRKSRC} && ${SETENV} CC=gnatgcc \ - ${GMAKE} setup ${CONFIGURE_ARGS} + cd ${WRKSRC} && ${GMAKE} setup ${CONFIGURE_ARGS} do-build: cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} build build_doc @@ -64,7 +77,6 @@ do-install: .include "../../devel/zlib/buildlink3.mk" .include "../../lang/python/pyversion.mk" .include "../../devel/gnatpython/buildlink3.mk" -.include "../../lang/gnat-aux/buildlink3.mk" .include "../../textproc/xmlada/buildlink3.mk" .include "../../devel/gprbuild-aux/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/www/aws/distinfo b/www/aws/distinfo index 98a7e4de6d2..c90150fe5e0 100644 --- a/www/aws/distinfo +++ b/www/aws/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.3 2011/07/19 19:56:37 drochner Exp $ +$NetBSD: distinfo,v 1.4 2012/07/08 20:14:28 marino Exp $ SHA1 (aws-2.10.0.1.tar.bz2) = 3ea20d4328951089f93caa3693eb24d67cf76594 RMD160 (aws-2.10.0.1.tar.bz2) = 8d6c2e9e681f18b16bbd79e76e6b65bb8f07a871 @@ -19,3 +19,7 @@ SHA1 (patch-bh) = 59f370db7e47d5fb18fa239dfc3396703f7251c8 SHA1 (patch-bi) = 3878eb24a44a23f119d78aad5b0c5bcfce1fc4a2 SHA1 (patch-bj) = 6e138dbe344600ea870e33b030662422cadf6cbc SHA1 (patch-bk) = 7be4ff0eefa89a24d942fc38c55f81864dd483de +SHA1 (patch-docs_docs.gpr) = acbe31da756c0cc3ee86132eedd0f0cc0ae6dd0e +SHA1 (patch-include_include.gpr) = 8e65a8238077df79fedaafa8b95eb51c8897b6c0 +SHA1 (patch-src_soap_soap-message-xml.adb) = d7b84968c615c017fb33536d177ce8b4557e29dc +SHA1 (patch-src_src.gpr) = 500bb473414253696c43dfa8b5999681accdb6ca diff --git a/www/aws/options.mk b/www/aws/options.mk index 207f890a345..8d5fb32ee0d 100644 --- a/www/aws/options.mk +++ b/www/aws/options.mk @@ -1,4 +1,4 @@ -# $NetBSD: options.mk,v 1.3 2011/07/19 19:56:37 drochner Exp $ +# $NetBSD: options.mk,v 1.4 2012/07/08 20:14:28 marino Exp $ # xmlada is built-in (not optional) due to gprbuild dependency @@ -16,9 +16,11 @@ PKG_SUGGESTED_OPTIONS= ssl .include "../../mk/bsd.prefs.mk" .include "../../mk/bsd.options.mk" -CONFIGURE_ARGS+= GCC=gnatgcc +CONFIGURE_ARGS+= GCC=ada CONFIGURE_ARGS+= PROCESSORS=1 CONFIGURE_ARGS+= PYTHON=python${PYVERSSUFFIX} +CONFIGURE_ARGS+= XMLADA=true +CONFIGURE_ARGS+= prefix=${PREFIX} DOTBUILD= release # The system libgcc is from version 4.1 which doesn't include the symbol @@ -33,6 +35,8 @@ DOTBUILD= release .if $(OPSYS) == "NetBSD" CONFIGURE_ARGS+= ZLIB=false +.else +CONFIGURE_ARGS+= ZLIB=true .endif ################### diff --git a/www/aws/patches/patch-docs_docs.gpr b/www/aws/patches/patch-docs_docs.gpr new file mode 100644 index 00000000000..d7ea1305a07 --- /dev/null +++ b/www/aws/patches/patch-docs_docs.gpr @@ -0,0 +1,13 @@ +$NetBSD: patch-docs_docs.gpr,v 1.1 2012/07/08 20:14:28 marino Exp $ + +--- docs/docs.gpr.orig 2011-01-25 20:53:19.000000000 +0000 ++++ docs/docs.gpr +@@ -55,7 +55,7 @@ project Docs is + + package Binder is + for Default_Switches ("Ada") +- use Shared.Builder'Default_Switches ("Ada") & ("-static"); ++ use Shared.Builder'Default_Switches ("Ada"); + end Binder; + + ------------- diff --git a/www/aws/patches/patch-include_include.gpr b/www/aws/patches/patch-include_include.gpr new file mode 100644 index 00000000000..04e4aa0782a --- /dev/null +++ b/www/aws/patches/patch-include_include.gpr @@ -0,0 +1,12 @@ +$NetBSD: patch-include_include.gpr,v 1.1 2012/07/08 20:14:28 marino Exp $ + +--- include/include.gpr.orig 2011-01-25 20:52:57.000000000 +0000 ++++ include/include.gpr +@@ -40,6 +40,7 @@ project Include is + + for Library_Name use "aws_include"; + for Library_Kind use Shared.Library_Type; ++ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); + + --------- + -- Ide -- diff --git a/www/aws/patches/patch-src_soap_soap-message-xml.adb b/www/aws/patches/patch-src_soap_soap-message-xml.adb new file mode 100644 index 00000000000..ca5e4c8c35c --- /dev/null +++ b/www/aws/patches/patch-src_soap_soap-message-xml.adb @@ -0,0 +1,24 @@ +$NetBSD: patch-src_soap_soap-message-xml.adb,v 1.1 2012/07/08 20:14:28 marino Exp $ + +--- src/soap/soap-message-xml.adb.orig 2012-07-05 03:56:08.000000000 +0000 ++++ src/soap/soap-message-xml.adb +@@ -437,7 +437,8 @@ package body SOAP.Message.XML is + Faultstring => SOAP.Parameters.Get (S.Parameters, "faultstring")); + else + return Message.Response.Object' +- (S.Name_Space, S.Wrapper_Name, S.Parameters); ++ (Message.Object'(S.Name_Space, S.Wrapper_Name, S.Parameters) ++ with null record); + end if; + + exception +@@ -483,7 +484,8 @@ package body SOAP.Message.XML is + Faultstring => SOAP.Parameters.Get (S.Parameters, "faultstring")); + else + return Message.Response.Object' +- (S.Name_Space, S.Wrapper_Name, S.Parameters); ++ (Message.Object'(S.Name_Space, S.Wrapper_Name, S.Parameters) ++ with null record); + end if; + + exception diff --git a/www/aws/patches/patch-src_src.gpr b/www/aws/patches/patch-src_src.gpr new file mode 100644 index 00000000000..a7a7fba931e --- /dev/null +++ b/www/aws/patches/patch-src_src.gpr @@ -0,0 +1,13 @@ +$NetBSD: patch-src_src.gpr,v 1.1 2012/07/08 20:14:28 marino Exp $ + +--- src/src.gpr.orig 2011-01-25 20:52:57.000000000 +0000 ++++ src/src.gpr +@@ -77,7 +77,7 @@ project Src is + when "Windows_NT" => + for Library_Options use ("-lwsock32", "-lws2_32"); + when others => +- null; ++ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); + end case; + + case Shared.LDAP is |