diff options
author | marino <marino@FreeBSD.org> | 2015-06-22 07:35:11 +0800 |
---|---|---|
committer | marino <marino@FreeBSD.org> | 2015-06-22 07:35:11 +0800 |
commit | 5728e378ea71e41bf7e060565d628d96a1560f0a (patch) | |
tree | 334292b317dbedb07cc04c29e3fa203b91acbb87 /textproc/xmlada | |
parent | 0dd41bbaac5b5de95c1fc2c261dcd10baf47b937 (diff) | |
download | freebsd-ports-gnome-5728e378ea71e41bf7e060565d628d96a1560f0a.tar.gz freebsd-ports-gnome-5728e378ea71e41bf7e060565d628d96a1560f0a.tar.zst freebsd-ports-gnome-5728e378ea71e41bf7e060565d628d96a1560f0a.zip |
textproc/xmlada: Upgrade version 4.5.0.0 => 4.6.0.0, overhaul make system
Due to the unavailability of a public repository, this version uses
Adacores 2015 distribution of xmlada. It's probably a minor update
from the previous one.
The major change, however, is the creation of a custom makefile to build
and install xmlada. Why? because gnatmake will lose the ability to
build project files in the near future, so xmlada makefiles were changed
to use gprbuild to build and itself it. One problem: gprbuild needs
xmlada as a build dependency. (and it also needs gprbuild to build
itself!!) I could have chosen to keep using gnatmake, but I decided to
bite the bullet, fix it correctly now and not have to get stuck by it
by future versions of gnat that remove project management from gnatmake.
Having to support a bootstrap gprbuild is nonsense in my opinion, so
both will have to be built manually. Morever, the GPL 2015 distinfo
file removed all the vital *.gpr files which other packages' configure
script absolutely depends on. These had to be recreated from scratch
as well.
Noticeable changes:
- no more .lgpr files, these are incorporated in generated *.gpr now
- xmlada_input.gpr renamed to xmlada_input_sources.gpr as expected
since we had to create it anyway
- xmlada_shared.gpr no longer exists; it was incorporated into each
gpr that pulled it in
- RPATH hack no longer necessary
- symlinks of 5 libraries at $LOCALBASE/lib were removed (useless)
- rpaths are now correct and have $LOCALBASE/lib/xmlada/relocatable
as path (this was big fix made possible by new Makefile)
- xmlada seems to build a lot faster, fully jobs safe
- GNU configure not longer performed
- GNU make no longer a build dependency
I verified packages that depend on xmlada build as expected. I also
verified that the manually generated libraries look very similar in
size to the gnatmake generated libraries.
Since the library version changed, I'm also bumping ports directly
dependent on xmlada.
Diffstat (limited to 'textproc/xmlada')
-rw-r--r-- | textproc/xmlada/Makefile | 174 | ||||
-rw-r--r-- | textproc/xmlada/distinfo | 4 | ||||
-rw-r--r-- | textproc/xmlada/files/Makefile.bsd | 137 | ||||
-rw-r--r-- | textproc/xmlada/files/generic_gpr.in | 19 | ||||
-rw-r--r-- | textproc/xmlada/files/patch-Makefile.in | 104 | ||||
-rw-r--r-- | textproc/xmlada/files/patch-dom_dom.gpr | 10 | ||||
-rw-r--r-- | textproc/xmlada/files/patch-input__sources_input__sources.gpr | 10 | ||||
-rw-r--r-- | textproc/xmlada/files/patch-sax_sax.gpr | 10 | ||||
-rw-r--r-- | textproc/xmlada/files/patch-schema_schema.gpr | 10 | ||||
-rw-r--r-- | textproc/xmlada/pkg-plist | 48 |
10 files changed, 305 insertions, 221 deletions
diff --git a/textproc/xmlada/Makefile b/textproc/xmlada/Makefile index 65aa9672e138..49ba5662e1d3 100644 --- a/textproc/xmlada/Makefile +++ b/textproc/xmlada/Makefile @@ -2,20 +2,29 @@ # $FreeBSD$ PORTNAME= xmlada -PORTVERSION= 4.5.0.0 +PORTVERSION= 4.6.0.0 CATEGORIES= textproc MASTER_SITES= http://downloads.dragonlace.net/src/ +DISTNAME= xmlada-gpl-2015-src MAINTAINER= marino@FreeBSD.org COMMENT= Adacore XML suite for the Ada language LICENSE= GPLv3 -GNU_CONFIGURE= yes -USES= ada gmake tar:bzip2 -MAKE_ARGS+= PROCESSORS=${MAKE_JOBS_NUMBER} -ALL_TARGET= static relocatable -PLIST_SUB+= LIBVER=4.5.0w +USES= ada +MAKE_ARGS+= PROCESSORS=${MAKE_JOBS_NUMBER} \ + LIBVER=${PORTVERSION} +ALL_TARGET= schema/lib/static/libxmlada_schema.a \ + schema/lib/relocatable/libxmlada_schema.so +PLIST_SUB+= LIBVER=${PORTVERSION} +MAKEFILE= Makefile.bsd +PORTDOCS= * +DUNICODE= ${WRKSRC}/unicode/dummy_unicode.adb +DINPSRC= ${WRKSRC}/input_sources/dummy_input_sources.adb +DSAX= ${WRKSRC}/sax/dummy_sax.adb +DDOM= ${WRKSRC}/dom/dummy_dom.adb +DSCHEMA= ${WRKSRC}/schema/dummy_schema.adb OPTIONS_DEFINE= DOCS @@ -26,27 +35,136 @@ BUILD_DEPENDS+= sphinx-build:${PORTSDIR}/textproc/py-sphinx ALL_TARGET+= docs .endif -# Link options were added for sax, dom, schema, and input_sources libraries -# "-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 - -post-patch: - @${REINPLACE_CMD} -e "s,@ADDITIONAL_RPATH@,${LOCALBASE}/lib," \ - ${WRKSRC}/sax/sax.gpr \ - ${WRKSRC}/dom/dom.gpr \ - ${WRKSRC}/schema/schema.gpr \ - ${WRKSRC}/input_sources/input_sources.gpr - -do-build: - # Override build target to avoid -jX getting passed to makefile - # Parallel builds are handled with PROCESSORS setting - (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \ - ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET}) - -post-install: - ${RM} -rf ${STAGEDIR}${PREFIX}/share/doc/xmlada/_sources +FIND1= cd ${WRKSRC}/unicode && ${FIND} -s * \( -name "unicode*.ad[bs]" \ + -a ! -name "unicode.ads" \) -exec ${PRINTF} ', "%s"' {} \; +FIND2= cd ${WRKSRC}/input_sources && ${FIND} -s * \( -name "input*.ad[bs]" \ + -a ! -name "input_sources.ads" \) -exec ${PRINTF} ', "%s"' {} \; +FIND3= cd ${WRKSRC}/sax && \ + ${FIND} -s * -name "sax-*.ad[bs]" -exec ${PRINTF} ', "%s"' {} \; +FIND4= cd ${WRKSRC}/dom && \ + ${FIND} -s * -name "dom-*.ad[bs]" -exec ${PRINTF} ', "%s"' {} \; +FIND5= cd ${WRKSRC}/schema && ${FIND} -s * \( -name "schema*.ad[bs]" \ + -a ! -name "schema.ads" \) -depth 0 -maxdepth 0 \ + -exec ${PRINTF} ', "%s"' {} \; + +post-patch: dummy-unicode dummy-input_sources dummy-sax dummy-dom dummy-schema + @${CP} ${FILESDIR}/Makefile.bsd ${WRKSRC} + # vital gpr files are missing from GPL 2015, recreate them + @${SED} -e 's|@exec_prefix@|$${prefix}|' \ + -e 's|@libdir@|$${exec_prefix}/lib|' \ + -e 's|@includedir@|$${prefix}/include|' \ + -e 's|@DEFAULT_LIBRARY_TYPE@|static|' \ + -e 's|@PACKAGE_VERSION@|${PORTVERSION}|' \ + ${WRKSRC}/xmlada-config.in > ${WRKSRC}/xmlada-config + @${SED} -e '/^with/d' -e 's|@ZONE@|unicode|' \ + -e "s|@FILES@|`${FIND1}`|" \ + -e 's|@VERSION@|${PORTVERSION}|' ${FILESDIR}/generic_gpr.in \ + > ${WRKSRC}/distrib/xmlada_unicode.gpr + @${SED} -e 's|@DEPENDS@|unicode|' -e 's|@ZONE@|input_sources|' \ + -e "s|@FILES@|`${FIND2}`|" \ + -e 's|@VERSION@|${PORTVERSION}|' ${FILESDIR}/generic_gpr.in \ + > ${WRKSRC}/distrib/xmlada_input_sources.gpr + @${SED} -e 's|@DEPENDS@|input_sources|' -e 's|@ZONE@|sax|' \ + -e "s|@FILES@|`${FIND3}`|" \ + -e 's|@VERSION@|${PORTVERSION}|' ${FILESDIR}/generic_gpr.in \ + > ${WRKSRC}/distrib/xmlada_sax.gpr + @${SED} -e 's|@DEPENDS@|sax|' -e 's|@ZONE@|dom|' \ + -e "s|@FILES@|`${FIND4}`|" \ + -e 's|@VERSION@|${PORTVERSION}|' ${FILESDIR}/generic_gpr.in \ + > ${WRKSRC}/distrib/xmlada_dom.gpr + @${SED} -e 's|@DEPENDS@|dom|' -e 's|@ZONE@|schema|' \ + -e "s|@FILES@|`${FIND5}`|" \ + -e 's|@VERSION@|${PORTVERSION}|' ${FILESDIR}/generic_gpr.in \ + > ${WRKSRC}/distrib/xmlada_schema.gpr + # Since we want to pull in all 5 libs, we only need to specify schema + ${REINPLACE_CMD} -e '/unicode/d' ${WRKSRC}/distrib/xmlada.gpr + +do-install: + ${MKDIR} ${STAGEDIR}${PREFIX}/include/xmlada \ + ${STAGEDIR}${PREFIX}/lib/gnat \ + ${STAGEDIR}${PREFIX}/lib/xmlada/relocatable \ + ${STAGEDIR}${PREFIX}/lib/xmlada/static \ + ${STAGEDIR}${PREFIX}/share/gps/plug-ins \ + ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/dom/*.ad[bs] \ + ${WRKSRC}/input_sources/*.ad[bs] \ + ${WRKSRC}/sax/*.ad[bs] \ + ${WRKSRC}/schema/*.ad[bs] \ + ${WRKSRC}/unicode/*.ad[bs] \ + ${STAGEDIR}${PREFIX}/include/xmlada + ${RM} ${STAGEDIR}${PREFIX}/include/xmlada/dummy_*.adb + ${INSTALL_DATA} ${WRKSRC}/dom/obj/relocatable/*.ali \ + ${WRKSRC}/input_sources/obj/relocatable/*.ali \ + ${WRKSRC}/sax/obj/relocatable/*.ali \ + ${WRKSRC}/schema/obj/relocatable/*.ali \ + ${WRKSRC}/unicode/obj/relocatable/*.ali \ + ${WRKSRC}/dom/lib/relocatable/* \ + ${WRKSRC}/input_sources/lib/relocatable/* \ + ${WRKSRC}/sax/lib/relocatable/* \ + ${WRKSRC}/schema/lib/relocatable/* \ + ${WRKSRC}/unicode/lib/relocatable/* \ + ${STAGEDIR}${PREFIX}/lib/xmlada/relocatable + ${INSTALL_DATA} ${WRKSRC}/dom/obj/static/*.ali \ + ${WRKSRC}/input_sources/obj/static/*.ali \ + ${WRKSRC}/sax/obj/static/*.ali \ + ${WRKSRC}/schema/obj/static/*.ali \ + ${WRKSRC}/unicode/obj/static/*.ali \ + ${WRKSRC}/dom/lib/static/* \ + ${WRKSRC}/input_sources/lib/static/* \ + ${WRKSRC}/sax/lib/static/* \ + ${WRKSRC}/schema/lib/static/* \ + ${WRKSRC}/unicode/lib/static/* \ + ${STAGEDIR}${PREFIX}/lib/xmlada/static + ${INSTALL_DATA} ${WRKSRC}/distrib/xml*.gpr \ + ${STAGEDIR}${PREFIX}/lib/gnat + ${INSTALL_DATA} ${WRKSRC}/distrib/xmlada_gps.py \ + ${STAGEDIR}${PREFIX}/share/gps/plug-ins + ${INSTALL_SCRIPT} ${WRKSRC}/xmlada-config ${STAGEDIR}${PREFIX}/bin +.if ${PORT_OPTIONS:MDOCS} + (cd ${WRKSRC}/docs/_build/html && \ + ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) + ${RM} -r ${STAGEDIR}${DOCSDIR}/_sources \ + ${STAGEDIR}${DOCSDIR}/.buildinfo +.endif + +dummy-unicode: + @${GREP} ^package ${WRKSRC}/unicode/unicode-*.ads | \ + ${AWK} '{print "with " $$2 ";"}' | ${SORT} > ${DUNICODE} + @${ECHO} 'procedure dummy_unicode is' >> ${DUNICODE} + @${ECHO} 'begin' >> ${DUNICODE} + @${ECHO} ' null;' >> ${DUNICODE} + @${ECHO} 'end dummy_unicode;' >> ${DUNICODE} + +dummy-input_sources: + @${GREP} ^package ${WRKSRC}/input_sources/input_sources-*.ads | \ + ${AWK} '{print "with " $$2 ";"}' | ${SORT} > ${DINPSRC} + @${ECHO} 'procedure dummy_input_sources is' >> ${DINPSRC} + @${ECHO} 'begin' >> ${DINPSRC} + @${ECHO} ' null;' >> ${DINPSRC} + @${ECHO} 'end dummy_input_sources;' >> ${DINPSRC} + +dummy-sax: + @${GREP} ^package ${WRKSRC}/sax/sax-*.ads | \ + ${AWK} '{print "with " $$2 ";"}' | ${SORT} > ${DSAX} + @${ECHO} 'procedure dummy_sax is' >> ${DSAX} + @${ECHO} 'begin' >> ${DSAX} + @${ECHO} ' null;' >> ${DSAX} + @${ECHO} 'end dummy_sax;' >> ${DSAX} + +dummy-dom: + @${GREP} ^package ${WRKSRC}/dom/dom-*.ads | \ + ${AWK} '{print "with " $$2 ";"}' | ${SORT} > ${DDOM} + @${ECHO} 'procedure dummy_dom is' >> ${DDOM} + @${ECHO} 'begin' >> ${DDOM} + @${ECHO} ' null;' >> ${DDOM} + @${ECHO} 'end dummy_dom;' >> ${DDOM} + +dummy-schema: + @${GREP} ^package ${WRKSRC}/schema/schema-*.ads | \ + ${AWK} '{print "with " $$2 ";"}' | ${SORT} > ${DSCHEMA} + @${ECHO} 'procedure dummy_schema is' >> ${DSCHEMA} + @${ECHO} 'begin' >> ${DSCHEMA} + @${ECHO} ' null;' >> ${DSCHEMA} + @${ECHO} 'end dummy_schema;' >> ${DSCHEMA} .include <bsd.port.mk> diff --git a/textproc/xmlada/distinfo b/textproc/xmlada/distinfo index 941ca1734005..881242f7eed5 100644 --- a/textproc/xmlada/distinfo +++ b/textproc/xmlada/distinfo @@ -1,2 +1,2 @@ -SHA256 (xmlada-4.5.0.0.tar.bz2) = 6dde7083ee4d0c04d0a26afce4c2bb5c56c611c941681e2649bb9c1b8e1b49e4 -SIZE (xmlada-4.5.0.0.tar.bz2) = 637544 +SHA256 (xmlada-gpl-2015-src.tar.gz) = 96a092e0d99140539c23767a468a402a471b8c783c03ff2851217dd097f84f85 +SIZE (xmlada-gpl-2015-src.tar.gz) = 1425673 diff --git a/textproc/xmlada/files/Makefile.bsd b/textproc/xmlada/files/Makefile.bsd new file mode 100644 index 000000000000..6d439e324f09 --- /dev/null +++ b/textproc/xmlada/files/Makefile.bsd @@ -0,0 +1,137 @@ +ADALIB!= gnatls -v | grep adalib | awk '{print $$1}' + +STATIC_FLAGS= -gnatQ -O2 -gnatn -gnatp -gnatA -j${PROCESSORS} +DYNAMIC_FLAGS= -fPIC ${STATIC_FLAGS} + + +# +# unicode depends on nothing +# + +unicode/lib/static/libxmlada_unicode.a: unicode/dummy_unicode.adb + @echo building static ${.TARGET:R} library + @rm -f ${.TARGET} + gnatmake -c ${.ALLSRC} -D unicode/obj/static ${STATIC_FLAGS} + rm unicode/obj/static/dummy* + ar cq ${.TARGET} unicode/obj/static/*.o + ranlib ${.TARGET} + +unicode/lib/relocatable/libxmlada_unicode.so: unicode/dummy_unicode.adb + @${ECHO} building shared library ${.TARGET:R} + @rm -f ${.TARGET} ${.TARGET}.${LIBVER} + gnatmake -c ${.ALLSRC} -D unicode/obj/relocatable ${DYNAMIC_FLAGS} + rm unicode/obj/relocatable/dummy* + ada -shared -Wl,-rpath,${PREFIX}/lib/xmlada/relocatable \ + -L${ADALIB} -lgnat -Wl,-rpath,${ADALIB} \ + -o ${.TARGET}.${LIBVER} -Wl,-soname,${.TARGET:T}.${LIBVER} \ + unicode/obj/relocatable/*.o + ln -s ${.TARGET:T}.${LIBVER} ${.TARGET} + +# +# input sources depends on unicode +# + +input_sources/lib/static/libxmlada_input_sources.a: input_sources/dummy_input_sources.adb unicode/lib/static/libxmlada_unicode.a + @echo building static ${.TARGET:R} library + @rm -f ${.TARGET} + gnatmake -c ${.ALLSRC:M*.adb} -D input_sources/obj/static -aOunicode/obj/static -aIunicode ${STATIC_FLAGS} + rm input_sources/obj/static/dummy* + ar cq ${.TARGET} input_sources/obj/static/*.o + ranlib ${.TARGET} + +input_sources/lib/relocatable/libxmlada_input_sources.so: input_sources/dummy_input_sources.adb unicode/lib/relocatable/libxmlada_unicode.so + @${ECHO} building shared library ${.TARGET:R} + @rm -f ${.TARGET} ${.TARGET}.${LIBVER} + gnatmake -c ${.ALLSRC:M*.adb} -D input_sources/obj/relocatable -aOunicode/obj/relocatable -aIunicode ${DYNAMIC_FLAGS} + rm input_sources/obj/relocatable/dummy* + ada -shared -Wl,-rpath,${PREFIX}/lib/xmlada/relocatable \ + -L${ADALIB} -lgnat -Wl,-rpath,${ADALIB} \ + -Lunicode/lib/relocatable -lxmlada_unicode \ + -o ${.TARGET}.${LIBVER} -Wl,-soname,${.TARGET:T}.${LIBVER} \ + input_sources/obj/relocatable/*.o + ln -s ${.TARGET:T}.${LIBVER} ${.TARGET} + +# +# sax depends on input sources and unicode (sufficent to limit to I.S) +# + +sax/lib/static/libxmlada_sax.a: sax/dummy_sax.adb input_sources/lib/static/libxmlada_input_sources.a + @echo building static ${.TARGET:R} library + @rm -f ${.TARGET} + gnatmake -c ${.ALLSRC:M*.adb} -D sax/obj/static -aOunicode/obj/static -aOinput_sources/obj/static -aIunicode -aIinput_sources ${STATIC_FLAGS} + rm sax/obj/static/dummy* + ar cq ${.TARGET} sax/obj/static/*.o + ranlib ${.TARGET} + +sax/lib/relocatable/libxmlada_sax.so: sax/dummy_sax.adb input_sources/lib/relocatable/libxmlada_input_sources.so + @${ECHO} building shared library ${.TARGET:R} + @rm -f ${.TARGET} ${.TARGET}.${LIBVER} + gnatmake -c ${.ALLSRC:M*.adb} -D sax/obj/relocatable -aOunicode/obj/relocatable -aOinput_sources/obj/relocatable -aIunicode -aIinput_sources ${DYNAMIC_FLAGS} + rm sax/obj/relocatable/dummy* + ada -shared -Wl,-rpath,${PREFIX}/lib/xmlada/relocatable \ + -L${ADALIB} -lgnat -Wl,-rpath,${ADALIB} \ + -Lunicode/lib/relocatable -lxmlada_unicode \ + -Linput_sources/lib/relocatable -lxmlada_input_sources \ + -o ${.TARGET}.${LIBVER} -Wl,-soname,${.TARGET:T}.${LIBVER} \ + sax/obj/relocatable/*.o + ln -s ${.TARGET:T}.${LIBVER} ${.TARGET} + +# +# dom depends on three other libraries (sufficent to limit to sax) +# + +dom/lib/static/libxmlada_dom.a: dom/dummy_dom.adb sax/lib/static/libxmlada_sax.a + @echo building static ${.TARGET:R} library + @rm -f ${.TARGET} + gnatmake -c ${.ALLSRC:M*.adb} -D dom/obj/static -aOunicode/obj/static -aOinput_sources/obj/static -aOsax/obj/static -aIunicode -aIinput_sources -aIsax ${STATIC_FLAGS} + rm dom/obj/static/dummy* + ar cq ${.TARGET} dom/obj/static/*.o + ranlib ${.TARGET} + +dom/lib/relocatable/libxmlada_dom.so: dom/dummy_dom.adb sax/lib/relocatable/libxmlada_sax.so + @${ECHO} building shared library ${.TARGET:R} + @rm -f ${.TARGET} ${.TARGET}.${LIBVER} + gnatmake -c ${.ALLSRC:M*.adb} -D dom/obj/relocatable -aOunicode/obj/relocatable -aOinput_sources/obj/relocatable -aOsax/obj/relocatable -aIunicode -aIinput_sources -aIsax ${DYNAMIC_FLAGS} + rm dom/obj/relocatable/dummy* + ada -shared -Wl,-rpath,${PREFIX}/lib/xmlada/relocatable \ + -L${ADALIB} -lgnat -Wl,-rpath,${ADALIB} \ + -Lunicode/lib/relocatable -lxmlada_unicode \ + -Linput_sources/lib/relocatable -lxmlada_input_sources \ + -Lsax/lib/relocatable -lxmlada_sax \ + -o ${.TARGET}.${LIBVER} -Wl,-soname,${.TARGET:T}.${LIBVER} \ + dom/obj/relocatable/*.o + ln -s ${.TARGET:T}.${LIBVER} ${.TARGET} + +# +# schema depends on four other libraries (sufficent to limit to dom) +# + +schema/lib/static/libxmlada_schema.a: schema/dummy_schema.adb dom/lib/static/libxmlada_dom.a + @echo building static ${.TARGET:R} library + @rm -f ${.TARGET} + gnatmake -c ${.ALLSRC:M*.adb} -D schema/obj/static -aOunicode/obj/static -aOinput_sources/obj/static -aOsax/obj/static -aOdom/obj/static -aIunicode -aIinput_sources -aIsax -aIdom ${STATIC_FLAGS} + rm schema/obj/static/dummy* + ar cq ${.TARGET} schema/obj/static/*.o + ranlib ${.TARGET} + +schema/lib/relocatable/libxmlada_schema.so: schema/dummy_schema.adb dom/lib/relocatable/libxmlada_dom.so + @${ECHO} building shared library ${.TARGET:R} + @rm -f ${.TARGET} ${.TARGET}.${LIBVER} + gnatmake -c ${.ALLSRC:M*.adb} -D schema/obj/relocatable -aOunicode/obj/relocatable -aOinput_sources/obj/relocatable -aOsax/obj/relocatable -aOdom/obj/relocatable -aIunicode -aIinput_sources -aIsax -aIdom ${DYNAMIC_FLAGS} + rm schema/obj/relocatable/dummy* + ada -shared -Wl,-rpath,${PREFIX}/lib/xmlada/relocatable \ + -L${ADALIB} -lgnat -Wl,-rpath,${ADALIB} \ + -Lunicode/lib/relocatable -lxmlada_unicode \ + -Linput_sources/lib/relocatable -lxmlada_input_sources \ + -Lsax/lib/relocatable -lxmlada_sax \ + -Ldom/lib/relocatable -lxmlada_dom \ + -o ${.TARGET}.${LIBVER} -Wl,-soname,${.TARGET:T}.${LIBVER} \ + schema/obj/relocatable/*.o + ln -s ${.TARGET:T}.${LIBVER} ${.TARGET} + +# +# Sphinx documentation +# + +docs: + ${MAKE} -e -C docs diff --git a/textproc/xmlada/files/generic_gpr.in b/textproc/xmlada/files/generic_gpr.in new file mode 100644 index 000000000000..f3ed30face72 --- /dev/null +++ b/textproc/xmlada/files/generic_gpr.in @@ -0,0 +1,19 @@ +with "xmlada_@DEPENDS@"; +project XmlAda_@ZONE@ is + for Library_Name use "xmlada_@ZONE@"; + Version := "@VERSION@"; + So_Ext := ".so"; + + type Xmlada_Kind_Type is ("static", "relocatable"); + Xmlada_Kind : Xmlada_Kind_Type := external ("LIBRARY_TYPE", "static"); + Libdir := "../../lib/xmlada/" & Xmlada_Kind; + + for Library_Kind use Xmlada_Kind; + for Library_Dir use Libdir; + for Library_Version use + "lib" & Project'Library_Name & So_Ext & "." & Version; + for Source_Dirs use ("../../include/xmlada"); + for Source_Files use ("@ZONE@.ads"@FILES@); + for Externally_Built use "true"; + +end XmlAda_@ZONE@; diff --git a/textproc/xmlada/files/patch-Makefile.in b/textproc/xmlada/files/patch-Makefile.in deleted file mode 100644 index 6cbb75dc0bd5..000000000000 --- a/textproc/xmlada/files/patch-Makefile.in +++ /dev/null @@ -1,104 +0,0 @@ ---- Makefile.in.orig 2014-05-22 22:46:42.000000000 +0000 -+++ Makefile.in -@@ -83,72 +83,51 @@ run_test_valgrind: test - cd dom/test; valgrind --tool=memcheck --leak-check=full ./testxml -auto - - docs: force -- -${MAKE} -e -C docs html latexpdf -+ -${MAKE} -e -C docs html - - # Rule for installing the modules - %_inst: force -- ${CP} $*/*.ad[bs] ${includedir}/xmlada -- cd $*; ls *.ad[bs] > ${prefix}/lib/gnat/xmlada/xmlada_$*.lgpr -- -cd ${xmllib}; ${CHMOD} ugo+w *.ali -- -${CP} $*/lib/${LIBRARY_TYPE}/*.ali ${xmllib} -- ${RM} ${libdir}/libxmlada_$** -- ${RM} ${xmllib}libxmlada_$** -+ ${CP} $*/*.ad[bs] ${DESTDIR}${includedir}/xmlada -+ cd $*; ls *.ad[bs] > ${DESTDIR}${prefix}/lib/gnat/xmlada/xmlada_$*.lgpr -+ -cd ${DESTDIR}${xmllib}; ${CHMOD} ugo+w *.ali -+ -${CP} $*/lib/${LIBRARY_TYPE}/*.ali ${DESTDIR}${xmllib} -+ ${RM} ${DESTDIR}${libdir}/libxmlada_$** -+ ${RM} ${DESTDIR}${xmllib}libxmlada_$** - ifeq (${LIBRARY_TYPE},static) -- ${INSTALL} $*/lib/${LIBRARY_TYPE}/libxmlada_$*.a ${xmllib} -+ ${INSTALL} $*/lib/${LIBRARY_TYPE}/libxmlada_$*.a ${DESTDIR}${xmllib} - else --ifeq (${LIBEXT},.dll) -- ${INSTALL} $*/lib/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT} ${xmllib} -- cd ${bindir}; ${CP} ${libdir}/xmlada/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT} libxmlada_$*${LIBEXT} --else -- ${INSTALL} $*/lib/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} ${xmllib} -+ ${INSTALL} $*/lib/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} ${DESTDIR}${xmllib} - - @# prefix/lib/xmlada/relocatable/libxmlada.so -> libxmlada.so.4.4.0w -- cd ${xmllib}; ${LN_S} libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT} -- -- @# prefix/lib/xmlada/relocatable/libxmlada.so.4.4 -> libxmlada.so.4.4.0w -- -cd ${xmllib}; ${LN_S} libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${basename ${VERSION}} -- -- @# prefix/lib/xmlada/relocatable/libxmlada.so.4 -> libxmlada.so.4.4.0w --ifneq (${basename ${basename ${VERSION}}},${basename ${VERSION}}) -- cd ${xmllib}; ${LN_S} libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${basename ${basename ${VERSION}}} -- -- @# prefix/lib/libxmlada.so.4 -> prefix/lib/xmlada/relocatable/libxmlada.so.4.4.0w -- cd ${libdir}; ${LN_S} xmlada/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${basename ${basename ${VERSION}}} --endif -- -- @# prefix/lib/libxmlada.so.4.4 -> prefix/lib/xmlada/relocatable/libxmlada.so.4.4.0w -- -cd ${libdir}; ${LN_S} xmlada/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${basename ${VERSION}} -+ cd ${DESTDIR}${xmllib}; ${LN_S} libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT} - - @# prefix/lib/libxmlada.so.4.4.0w -> prefix/lib/xmlada/relocatable/libxmlada.so.4.4.0w -- -cd ${libdir}; ${LN_S} xmlada/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${VERSION} --endif -+ -cd ${DESTDIR}${libdir}; ${LN_S} xmlada/${LIBRARY_TYPE}/libxmlada_$*${LIBEXT}.${VERSION} libxmlada_$*${LIBEXT}.${VERSION} - endif -- cd ${xmllib}; ${CHMOD} ugo-w *.ali -+ cd ${DESTDIR}${xmllib}; ${CHMOD} ugo-w *.ali - - install_dirs: force -- @${MKDIR} ${bindir} -- @${MKDIR} ${xmllib} -- @${MKDIR} ${prefix}/lib/gnat/xmlada -- @${MKDIR} ${libdir} -- @${MKDIR} ${datadir}/doc/xmlada -- @${MKDIR} ${includedir}/xmlada -- @${MKDIR} ${datadir}/gps/plug-ins/ -+ @${MKDIR} ${DESTDIR}${bindir} -+ @${MKDIR} ${DESTDIR}${xmllib} -+ @${MKDIR} ${DESTDIR}${prefix}/lib/gnat/xmlada -+ @${MKDIR} ${DESTDIR}${libdir} -+ @${MKDIR} ${DESTDIR}${datadir}/doc/xmlada -+ @${MKDIR} ${DESTDIR}${includedir}/xmlada -+ @${MKDIR} ${DESTDIR}${datadir}/gps/plug-ins/ - - ## Do the installation for either shared or static, depending on - ## $LIBRARY_TYPE - install_library_type: install_dirs ${MODULE_INSTALL} -- ${INSTALL} distrib/xmlada_shared.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada_dom.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada_sax.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada_input.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada_schema.gpr ${prefix}/lib/gnat/ -- ${INSTALL} distrib/xmlada_unicode.gpr ${prefix}/lib/gnat/ -- ${INSTALL} xmlada-config ${bindir} -- -$(CP) -r docs/_build/html/* $(datadir)/doc/xmlada/ 2>/dev/null -- -$(CP) -r docs/_build/latex/XMLAda.pdf $(datadir)/doc/xmlada/ 2>/dev/null -- ${CHMOD} +x ${bindir}/xmlada-config -- ${INSTALL} distrib/xmlada_gps.py ${datadir}/gps/plug-ins/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_shared.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_dom.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_sax.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_input.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_schema.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_DATA} distrib/xmlada_unicode.gpr ${DESTDIR}${prefix}/lib/gnat/ -+ ${BSD_INSTALL_SCRIPT} xmlada-config ${DESTDIR}${bindir} -+ -$(CP) -r docs/_build/html/* ${DESTDIR}$(datadir)/doc/xmlada/ 2>/dev/null -+ ${BSD_INSTALL_DATA} distrib/xmlada_gps.py ${DESTDIR}${datadir}/gps/plug-ins/ - - ## Do the installation for an explicit target - install_static: diff --git a/textproc/xmlada/files/patch-dom_dom.gpr b/textproc/xmlada/files/patch-dom_dom.gpr deleted file mode 100644 index afa8bd0b50c3..000000000000 --- a/textproc/xmlada/files/patch-dom_dom.gpr +++ /dev/null @@ -1,10 +0,0 @@ ---- dom/dom.gpr.orig 2014-04-10 13:48:38.000000000 +0000 -+++ dom/dom.gpr -@@ -10,6 +10,7 @@ project Dom is - for Library_Dir use "lib/" & Project'Library_Kind; - for Library_Version use "lib" & Project'Library_Name - & Shared.So_Ext & "." & Shared.Version; -+ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); - - package Builder renames Shared.Builder; - package Compiler renames Shared.Compiler; diff --git a/textproc/xmlada/files/patch-input__sources_input__sources.gpr b/textproc/xmlada/files/patch-input__sources_input__sources.gpr deleted file mode 100644 index 38174ee62380..000000000000 --- a/textproc/xmlada/files/patch-input__sources_input__sources.gpr +++ /dev/null @@ -1,10 +0,0 @@ ---- input_sources/input_sources.gpr.orig 2014-04-10 13:48:38.000000000 +0000 -+++ input_sources/input_sources.gpr -@@ -9,6 +9,7 @@ project Input_Sources is - for Library_Dir use "lib/" & Project'Library_Kind; - for Library_Version use "lib" & Project'Library_Name - & Shared.So_Ext & "." & Shared.Version; -+ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); - - package Builder renames Shared.Builder; - package Compiler renames Shared.Compiler; diff --git a/textproc/xmlada/files/patch-sax_sax.gpr b/textproc/xmlada/files/patch-sax_sax.gpr deleted file mode 100644 index 5374c038db5b..000000000000 --- a/textproc/xmlada/files/patch-sax_sax.gpr +++ /dev/null @@ -1,10 +0,0 @@ ---- sax/sax.gpr.orig 2014-04-10 13:48:38.000000000 +0000 -+++ sax/sax.gpr -@@ -10,6 +10,7 @@ project Sax is - for Library_Dir use "lib/" & Project'Library_Kind; - for Library_Version use "lib" & Project'Library_Name - & Shared.So_Ext & "." & Shared.Version; -+ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); - - package Builder renames Shared.Builder; - package Compiler renames Shared.Compiler; diff --git a/textproc/xmlada/files/patch-schema_schema.gpr b/textproc/xmlada/files/patch-schema_schema.gpr deleted file mode 100644 index e28401af8e6b..000000000000 --- a/textproc/xmlada/files/patch-schema_schema.gpr +++ /dev/null @@ -1,10 +0,0 @@ ---- schema/schema.gpr.orig 2014-04-10 13:48:38.000000000 +0000 -+++ schema/schema.gpr -@@ -11,6 +11,7 @@ project Schema is - for Library_Dir use "lib/" & Project'Library_Kind; - for Library_Version use "lib" & Project'Library_Name - & Shared.So_Ext & "." & Shared.Version; -+ for Library_Options use ("-R", "-Wl,-R,@ADDITIONAL_RPATH@"); - - package Builder renames Shared.Builder; - package Compiler renames Shared.Compiler; diff --git a/textproc/xmlada/pkg-plist b/textproc/xmlada/pkg-plist index da871b80a3fa..fec645555609 100644 --- a/textproc/xmlada/pkg-plist +++ b/textproc/xmlada/pkg-plist @@ -193,22 +193,11 @@ include/xmlada/unicode-names.ads include/xmlada/unicode.adb include/xmlada/unicode.ads lib/gnat/xmlada.gpr -lib/gnat/xmlada/xmlada_dom.lgpr -lib/gnat/xmlada/xmlada_input_sources.lgpr -lib/gnat/xmlada/xmlada_sax.lgpr -lib/gnat/xmlada/xmlada_schema.lgpr -lib/gnat/xmlada/xmlada_unicode.lgpr lib/gnat/xmlada_dom.gpr -lib/gnat/xmlada_input.gpr +lib/gnat/xmlada_input_sources.gpr lib/gnat/xmlada_sax.gpr lib/gnat/xmlada_schema.gpr -lib/gnat/xmlada_shared.gpr lib/gnat/xmlada_unicode.gpr -lib/libxmlada_dom.so.%%LIBVER%% -lib/libxmlada_input_sources.so.%%LIBVER%% -lib/libxmlada_sax.so.%%LIBVER%% -lib/libxmlada_schema.so.%%LIBVER%% -lib/libxmlada_unicode.so.%%LIBVER%% lib/xmlada/relocatable/dom-core-attrs.ali lib/xmlada/relocatable/dom-core-cdata_sections.ali lib/xmlada/relocatable/dom-core-character_datas.ali @@ -512,39 +501,4 @@ lib/xmlada/static/unicode-names-yi_radicals.ali lib/xmlada/static/unicode-names-yi_syllables.ali lib/xmlada/static/unicode-names.ali lib/xmlada/static/unicode.ali -%%PORTDOCS%%%%DOCSDIR%%/_static/adacore_transparent.png -%%PORTDOCS%%%%DOCSDIR%%/_static/ajax-loader.gif -%%PORTDOCS%%%%DOCSDIR%%/_static/basic.css -%%PORTDOCS%%%%DOCSDIR%%/_static/comment-bright.png -%%PORTDOCS%%%%DOCSDIR%%/_static/comment-close.png -%%PORTDOCS%%%%DOCSDIR%%/_static/comment.png -%%PORTDOCS%%%%DOCSDIR%%/_static/contents.png -%%PORTDOCS%%%%DOCSDIR%%/_static/doctools.js -%%PORTDOCS%%%%DOCSDIR%%/_static/down-pressed.png -%%PORTDOCS%%%%DOCSDIR%%/_static/down.png -%%PORTDOCS%%%%DOCSDIR%%/_static/favicon.ico -%%PORTDOCS%%%%DOCSDIR%%/_static/file.png -%%PORTDOCS%%%%DOCSDIR%%/_static/jquery.js -%%PORTDOCS%%%%DOCSDIR%%/_static/minus.png -%%PORTDOCS%%%%DOCSDIR%%/_static/navigation.png -%%PORTDOCS%%%%DOCSDIR%%/_static/plus.png -%%PORTDOCS%%%%DOCSDIR%%/_static/pygments.css -%%PORTDOCS%%%%DOCSDIR%%/_static/searchtools.js -%%PORTDOCS%%%%DOCSDIR%%/_static/sphinxdoc.css -%%PORTDOCS%%%%DOCSDIR%%/_static/underscore.js -%%PORTDOCS%%%%DOCSDIR%%/_static/up-pressed.png -%%PORTDOCS%%%%DOCSDIR%%/_static/up.png -%%PORTDOCS%%%%DOCSDIR%%/_static/websupport.js -%%PORTDOCS%%%%DOCSDIR%%/dom.html -%%PORTDOCS%%%%DOCSDIR%%/genindex.html -%%PORTDOCS%%%%DOCSDIR%%/index.html -%%PORTDOCS%%%%DOCSDIR%%/input.html -%%PORTDOCS%%%%DOCSDIR%%/intro.html -%%PORTDOCS%%%%DOCSDIR%%/objects.inv -%%PORTDOCS%%%%DOCSDIR%%/sax.html -%%PORTDOCS%%%%DOCSDIR%%/schema.html -%%PORTDOCS%%%%DOCSDIR%%/search.html -%%PORTDOCS%%%%DOCSDIR%%/searchindex.js -%%PORTDOCS%%%%DOCSDIR%%/unicode.html -%%PORTDOCS%%%%DOCSDIR%%/using.html share/gps/plug-ins/xmlada_gps.py |