Date: Thu, 25 Apr 2013 21:19:01 GMT From: John Marino <draco@marino.st> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/178163: www/aws: [MAINTAINER] Support USES+= ada, bug fixes, split out demos Message-ID: <201304252119.r3PLJ1w6061297@red.freebsd.org> Resent-Message-ID: <201304252120.r3PLK0Vv095274@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 178163 >Category: ports >Synopsis: www/aws: [MAINTAINER] Support USES+= ada, bug fixes, split out demos >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Apr 25 21:20:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: John Marino >Release: >Organization: >Environment: >Description: The www/aws port was always a little rough. Some issues this update addresses: 1) support USES+= ada 2) Remove demos and put then in another port (they require aws to be installed before they can build) 3) Fix LDAP support 4) Fix PLIST in multiple places 5) Fix RPATH issues (tested in pkgsrc) 6) Fix gcc-aux incompatibilities 7) Use new gprbuild port 8) convert to new options framework 9) support multijob building make sure ports/178146 is committed first (it has several dependencies as well) >How-To-Repeat: >Fix: Patch attached with submission follows: --- www/aws/Makefile.orig 2013-04-25 13:04:39.000000000 +0200 +++ www/aws/Makefile 2013-04-26 01:00:48.000000000 +0200 @@ -3,15 +3,14 @@ PORTNAME= aws PORTVERSION= 2.10.0 +PORTREVISION= 1 CATEGORIES= www -MASTER_SITES= http://downloads.dragonlace.net/src/ \ - http://dragonlace.mirrors.ada.cx/src/ +MASTER_SITES= http://downloads.dragonlace.net/src/ MAINTAINER= draco@marino.st COMMENT= Adacore Ada Web Server and framework -BUILD_DEPENDS= gnat-aux>=20101204:${PORTSDIR}/lang/gnat-aux \ - gprbuild-aux>=20101120:${PORTSDIR}/devel/gprbuild-aux \ +BUILD_DEPENDS= gprbuild>=20120510:${PORTSDIR}/devel/gprbuild \ xmlada>=3.2:${PORTSDIR}/textproc/xmlada \ gnatpython>=20101207:${PORTSDIR}/devel/gnatpython @@ -19,21 +18,27 @@ USE_BZIP2= yes GNU_CONFIGURE= yes USE_GMAKE= yes -USE_LDCONFIG= yes -CC= gnatgcc +USES+= ada +MAKE_JOBS_SAFE= yes DOTBUILD= release -MAKE_ENV+= ADA_PROJECT_PATH=${PREFIX}/lib/gnat +ADDL_RPATH= ${LOCALBASE}/lib:${LOCALBASE}/lib/aws/native/relocatable -OPTIONS_DEFINE= SSL IPV6 DEMOS DEBUG LDAP DSRT RELOC +OPTIONS_DEFINE= SSL IPV6 DEBUG LDAP DSRT RELOC OPTIONS_DEFAULT= SSL -SSL_DESC= Enable HTTPS/SSL support -DEMOS_DESC= Build demo programs in examples/aws/demos -DSRT_DESC= Disable shared runtime -RELOC_DESC= Build shared libraries (default is static) +NO_OPTIONS_SORT= yes +aws_UNSET= IPV6 -CONF_ARGS= PROCESSORS=1 -CONF_ARGS+= GCC=gnatgcc +SSL_DESC= Enable HTTPS/SSL support +DSRT_DESC= Disable shared runtime +RELOC_DESC= Build shared libraries (default is static) +IPV6_DESC= Support IPv6 instead of IPv4 + +CONF_ARGS= PROCESSORS=${MAKE_JOBS_NUMBER} +CONF_ARGS+= GCC=ada CONF_ARGS+= PYTHON=python${PYTHON_VER} +CONF_ARGS+= XMLADA=true +CONF_ARGS+= PRJ_BUILD=${DOTBUILD} +CONF_ARGS+= prefix=${PREFIX} .include <bsd.port.options.mk> @@ -42,9 +47,8 @@ ################### .if ${PORT_OPTIONS:MSSL} +USE_OPENSSL= yes CONF_ARGS+= SOCKET=openssl -BUILD_DEPENDS+= openssl>=1:${PORTSDIR}/security/openssl -RUN_DEPENDS+= openssl>=1:${PORTSDIR}/security/openssl PLIST_SUB+= YSSL="" PLIST_SUB+= NSSL="@comment " .else @@ -57,8 +61,11 @@ #################### .if ${PORT_OPTIONS:MLDAP} +USE_OPENLDAP= yes CONF_ARGS+= LDAP=true -RUN_DEPENDS+= openldap24>=2.4:${PORTSDIR}/net/openldap24-client +PLIST_SUB+= LDAP="" +.else +PLIST_SUB+= LDAP="@comment " .endif #################### @@ -67,6 +74,11 @@ .if ${PORT_OPTIONS:MIPV6} CONF_ARGS+= IPv6=true +PLIST_SUB+= NIP6="@comment " +PLIST_SUB+= YIP6="" +.else +PLIST_SUB+= YIP6="@comment " +PLIST_SUB+= NIP6="" .endif ##################### @@ -97,76 +109,31 @@ ## DEMOS Support ## ##################### -.if ${PORT_OPTIONS:MDEMOS} -DEMO_DIRS+= agent -DEMO_DIRS+= auth -DEMO_DIRS+= com -DEMO_DIRS+= dispatch -DEMO_DIRS+= hello_world -DEMO_DIRS+= hello_wsdl -DEMO_DIRS+= hotplug -DEMO_DIRS+= interoplab -DEMO_DIRS+= jabber_demo -DEMO_DIRS+= multiple_sessions -DEMO_DIRS+= res_demo -DEMO_DIRS+= runme -DEMO_DIRS+= soap_demo -DEMO_DIRS+= soap_disp -DEMO_DIRS+= soap_vs -DEMO_DIRS+= split -DEMO_DIRS+= test_mail -DEMO_DIRS+= text_input -DEMO_DIRS+= vh_demo -DEMO_DIRS+= web_block -DEMO_DIRS+= web_block_ajax -DEMO_DIRS+= web_block_ajax_templates -DEMO_DIRS+= web_elements -DEMO_DIRS+= web_mail -DEMO_DIRS+= wps -DEMO_DIRS+= ws -DEMO_DIRS+= zdemo - -.if ${PORT_OPTIONS:MLDAP} -DEMO_DIRS+= test_ldap -PLIST_SUB+= LDAP="" -.else -PLIST_SUB+= LDAP="@comment " -.endif -PLIST_SUB+= DEMO="" -.else -PLIST_SUB+= DEMO="@comment " -PLIST_SUB+= LDAP="@comment " -.endif +# Option removed. +# Demos require an installed AWS to build. +# These demos must be moved to a separate port, e.g. www/aws-demos + +post-patch: + @${REINPLACE_CMD} \ + -e 's|@ADDITIONAL_RPATH@|${ADDL_RPATH}|' \ + -e 's|@PREFIX@|${LOCALBASE}|g' \ + ${WRKSRC}/src/src.gpr \ + ${WRKSRC}/include/include.gpr do-configure: cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \ - ${GMAKE} setup ${CONF_ARGS} + ${GMAKE} setup ${CONF_ARGS} do-build: # docs are built, but the .pdf format is intentionally disabled # The taTeX dependency brings in ~100MB so it's not worth it. - cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} build build_doc + cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \ + ${GMAKE} build build_doc test: install cd ${WRKSRC}/regtests && python${PYTHON_VER} testsuite.py do-install: cd ${WRKSRC} && ${GMAKE} install -.if ${PORT_OPTIONS:MDEMOS} - ${MAKE} demos - ${MAKE} demos-install -.endif - -demos: -.for dd in ${DEMO_DIRS} - cd ${WRKSRC}/demos/${dd} && ${GMAKE} -.endfor - -demos-install: - ${MKDIR} ${PREFIX}/share/examples/aws/demos -.for dd in ${DEMO_DIRS} - ${FIND} ${WRKSRC}/demos/${dd} -type f -perm -0001 \ - -exec ${INSTALL} {} ${PREFIX}/share/examples/aws/demos/ \; -.endfor .include <bsd.port.mk> --- /dev/null 2013-04-26 01:00:00.000000000 +0200 +++ www/aws/files/patch-include_include.gpr 2013-04-25 13:24:45.000000000 +0200 @@ -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 -- --- /dev/null 2013-04-26 01:00:00.000000000 +0200 +++ www/aws/files/patch-src_soap_soap-message-xml.adb 2013-04-25 13:23:58.000000000 +0200 @@ -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 --- /dev/null 2013-04-26 01:00:00.000000000 +0200 +++ www/aws/files/patch-src_src.gpr 2013-04-26 01:01:39.000000000 +0200 @@ -0,0 +1,20 @@ +--- src/src.gpr.orig 2011-01-09 15:47:58.000000000 +0100 ++++ src/src.gpr 2013-04-25 20:08:01.000000000 +0200 +@@ -77,7 +77,7 @@ + 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 +@@ -88,7 +88,7 @@ + Project'Library_Options & ("-lwldap32"); + when others => + for Library_Options use +- Project'Library_Options & ("-lldap"); ++ Project'Library_Options & ("-L@PREFIX@/lib", "-lldap"); + end case; + when "Disabled" => + null; --- /dev/null 2013-04-26 01:00:00.000000000 +0200 +++ www/aws/files/patch-docs_docs.gpr 2013-04-25 13:24:56.000000000 +0200 @@ -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; + + ------------- --- www/aws/pkg-plist.orig 2013-04-25 16:30:09.000000000 +0200 +++ www/aws/pkg-plist 2013-04-26 01:00:54.000000000 +0200 @@ -43,6 +43,9 @@ lib/aws/native/static/sha-process_data.ali lib/aws/native/static/sha.ali lib/aws/native/static/memory_streams.ali +%%LDAP%%lib/aws/native/static/aws-ldap-client.ali +%%LDAP%%lib/aws/native/static/aws-ldap-thin.ali +%%LDAP%%lib/aws/native/static/aws-ldap.ali lib/aws/native/static/libaws_ssl.a lib/aws/native/static/libaws_include.a lib/aws/native/static/libaws.a @@ -117,7 +120,8 @@ lib/aws/native/static/aws-os_lib.ali lib/aws/native/static/aws-net-thin.ali lib/aws/native/static/aws-net-stream_io.ali -lib/aws/native/static/aws-net-std__gnat.ali +%%NIP6%%lib/aws/native/static/aws-net-std__gnat.ali +%%YIP6%%lib/aws/native/static/aws-net-std__ipv6.ali %%YSSL%%lib/aws/native/static/aws-net-ssl__openssl.ali %%NSSL%%lib/aws/native/static/aws-net-ssl__dummy.ali %%YSSL%%lib/aws/native/static/aws-net-ssl-certificate__openssl.ali @@ -206,6 +210,9 @@ lib/aws/native/relocatable/sha-process_data.ali lib/aws/native/relocatable/sha.ali lib/aws/native/relocatable/memory_streams.ali +%%LDAP%%lib/aws/native/relocatable/aws-ldap-client.ali +%%LDAP%%lib/aws/native/relocatable/aws-ldap-thin.ali +%%LDAP%%lib/aws/native/relocatable/aws-ldap.ali lib/aws/native/relocatable/libaws_ssl.so lib/aws/native/relocatable/libaws.so lib/aws/native/relocatable/libaws_include.so @@ -280,7 +287,8 @@ lib/aws/native/relocatable/aws-os_lib.ali lib/aws/native/relocatable/aws-net-thin.ali lib/aws/native/relocatable/aws-net-stream_io.ali -lib/aws/native/relocatable/aws-net-std__gnat.ali +%%NIP6%%lib/aws/native/relocatable/aws-net-std__gnat.ali +%%YIP6%%lib/aws/native/relocatable/aws-net-std__ipv6.ali %%YSSL%%lib/aws/native/relocatable/aws-net-ssl__openssl.ali %%NSSL%%lib/aws/native/relocatable/aws-net-ssl__dummy.ali %%YSSL%%lib/aws/native/relocatable/aws-net-ssl-certificate__openssl.ali @@ -416,6 +424,11 @@ include/aws/soap-client.adb include/aws/soap.ads include/aws/native/aws-os_lib.ads +%%LDAP%%include/aws/aws-ldap-client.ads +%%LDAP%%include/aws/aws-ldap-client.adb +%%LDAP%%include/aws/aws-ldap-thin.ads +%%LDAP%%include/aws/aws-ldap-thin.adb +%%LDAP%%include/aws/aws-ldap.ads include/aws/components/zlib-thin.ads include/aws/components/zlib-thin.adb include/aws/components/zlib-streams.ads @@ -736,39 +749,6 @@ %%EXAMPLESDIR%%/images/aws_up.png %%EXAMPLESDIR%%/images/aws_logo.png %%EXAMPLESDIR%%/images/aws_down.png -%%DEMO%%%%EXAMPLESDIR%%/demos/agent -%%DEMO%%%%EXAMPLESDIR%%/demos/auth -%%DEMO%%%%EXAMPLESDIR%%/demos/com_1 -%%DEMO%%%%EXAMPLESDIR%%/demos/com_2 -%%DEMO%%%%EXAMPLESDIR%%/demos/dispatch -%%DEMO%%%%EXAMPLESDIR%%/demos/hello_world -%%DEMO%%%%EXAMPLESDIR%%/demos/hotplug -%%DEMO%%%%EXAMPLESDIR%%/demos/interoplab_main -%%DEMO%%%%EXAMPLESDIR%%/demos/jabber_demo -%%DEMO%%%%EXAMPLESDIR%%/demos/main -%%DEMO%%%%EXAMPLESDIR%%/demos/multiple_sessions -%%DEMO%%%%EXAMPLESDIR%%/demos/res_demo -%%DEMO%%%%EXAMPLESDIR%%/demos/runme -%%DEMO%%%%EXAMPLESDIR%%/demos/soap_client -%%DEMO%%%%EXAMPLESDIR%%/demos/soap_cvs -%%DEMO%%%%EXAMPLESDIR%%/demos/soap_server -%%DEMO%%%%EXAMPLESDIR%%/demos/soap_server_disp -%%DEMO%%%%EXAMPLESDIR%%/demos/soap_svs -%%DEMO%%%%EXAMPLESDIR%%/demos/split -%%LDAP%%%%EXAMPLESDIR%%/demos/test_ldap -%%DEMO%%%%EXAMPLESDIR%%/demos/test_mail -%%DEMO%%%%EXAMPLESDIR%%/demos/text_input -%%DEMO%%%%EXAMPLESDIR%%/demos/vh_demo -%%DEMO%%%%EXAMPLESDIR%%/demos/web_block -%%DEMO%%%%EXAMPLESDIR%%/demos/web_block_ajax -%%DEMO%%%%EXAMPLESDIR%%/demos/web_block_ajax_templates -%%DEMO%%%%EXAMPLESDIR%%/demos/web_elements -%%DEMO%%%%EXAMPLESDIR%%/demos/web_mail -%%DEMO%%%%EXAMPLESDIR%%/demos/wps -%%DEMO%%%%EXAMPLESDIR%%/demos/ws -%%DEMO%%%%EXAMPLESDIR%%/demos/wsdl_demo_client -%%DEMO%%%%EXAMPLESDIR%%/demos/wsdl_demo_server -%%DEMO%%%%EXAMPLESDIR%%/demos/zdemo share/gps/plug-ins/ada2wsdl.xml share/gps/plug-ins/aws.py share/gps/plug-ins/aws.xml @@ -798,4 +778,3 @@ @dirrm include/aws @dirrmtry lib/gnat @dirrmtry share/gps/plug-ins -@dirrmtry %%EXAMPLESDIR%%/demos >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304252119.r3PLJ1w6061297>