aboutsummaryrefslogtreecommitdiff
path: root/www/aws
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2013-04-30 12:13:12 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2013-04-30 12:13:12 +0000
commit8f3258f0771b9eaa598675cdfc5db210a4baa83f (patch)
tree530fafd833cb9e83c92a1fe83c7685fc9228a087 /www/aws
parentbbba0e231a0536981e065e7135797974c2cf3eb7 (diff)
downloadports-8f3258f0771b9eaa598675cdfc5db210a4baa83f.tar.gz
ports-8f3258f0771b9eaa598675cdfc5db210a4baa83f.zip
support USES+= ada
Remove demos and put then in another port (they require aws to be installed before they can build) Fix LDAP support Fix PLIST in multiple places Fix RPATH issues (tested in pkgsrc) Fix gcc-aux incompatibilities Use new gprbuild port convert to new options framework support multijob building Remove demos Rename ipv6 options to ip6 to avoid having it on by default. PR: ports/178163 Submitted by: John Marino <draco@marino.st>
Notes
Notes: svn path=/head/; revision=316923
Diffstat (limited to 'www/aws')
-rw-r--r--www/aws/Makefile116
-rw-r--r--www/aws/files/patch-docs_docs.gpr13
-rw-r--r--www/aws/files/patch-include_include.gpr12
-rw-r--r--www/aws/files/patch-src_soap_soap-message-xml.adb24
-rw-r--r--www/aws/files/patch-src_src.gpr20
-rw-r--r--www/aws/pkg-plist51
6 files changed, 125 insertions, 111 deletions
diff --git a/www/aws/Makefile b/www/aws/Makefile
index 1d5275813a14..2ea84b1f6275 100644
--- a/www/aws/Makefile
+++ b/www/aws/Makefile
@@ -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,26 @@ USE_PYTHON= yes
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 IP6 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
-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)
+IP6_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 +46,8 @@ CONF_ARGS+= PYTHON=python${PYTHON_VER}
###################
.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,16 +60,24 @@ PLIST_SUB+= NSSL=""
####################
.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
####################
## IPv6 Support ##
####################
-.if ${PORT_OPTIONS:MIPV6}
+.if ${PORT_OPTIONS:MIP6}
CONF_ARGS+= IPv6=true
+PLIST_SUB+= NIP6="@comment "
+PLIST_SUB+= YIP6=""
+.else
+PLIST_SUB+= YIP6="@comment "
+PLIST_SUB+= NIP6=""
.endif
#####################
@@ -97,76 +108,31 @@ CONF_ARGS+= DEFAULT_LIBRARY_TYPE=relocatable
## 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
+# Option removed.
+# Demos require an installed AWS to build.
+# These demos must be moved to a separate port, e.g. www/aws-demos
-.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
+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>
diff --git a/www/aws/files/patch-docs_docs.gpr b/www/aws/files/patch-docs_docs.gpr
new file mode 100644
index 000000000000..d7ea1305a07d
--- /dev/null
+++ b/www/aws/files/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/files/patch-include_include.gpr b/www/aws/files/patch-include_include.gpr
new file mode 100644
index 000000000000..04e4aa0782a4
--- /dev/null
+++ b/www/aws/files/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/files/patch-src_soap_soap-message-xml.adb b/www/aws/files/patch-src_soap_soap-message-xml.adb
new file mode 100644
index 000000000000..ca5e4c8c35c0
--- /dev/null
+++ b/www/aws/files/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/files/patch-src_src.gpr b/www/aws/files/patch-src_src.gpr
new file mode 100644
index 000000000000..ce940d623add
--- /dev/null
+++ b/www/aws/files/patch-src_src.gpr
@@ -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;
diff --git a/www/aws/pkg-plist b/www/aws/pkg-plist
index 929ece40cd54..f9b0056fbbe5 100644
--- a/www/aws/pkg-plist
+++ b/www/aws/pkg-plist
@@ -43,6 +43,9 @@ lib/aws/native/static/sha-strings.ali
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-parameters.ali
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-strings.ali
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-parameters.ali
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.ads
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 @@ include/aws/aws.ads
%%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 @@ share/gps/plug-ins/wsdl2aws.xml
@dirrm include/aws
@dirrmtry lib/gnat
@dirrmtry share/gps/plug-ins
-@dirrmtry %%EXAMPLESDIR%%/demos