diff options
author | John Marino <marino@FreeBSD.org> | 2014-03-12 23:00:09 +0000 |
---|---|---|
committer | John Marino <marino@FreeBSD.org> | 2014-03-12 23:00:09 +0000 |
commit | c7dba22f726744545fff6f0aa0873dd4565512d0 (patch) | |
tree | 483fa3db0a47ecb17c5dd1d9ddd609f58399fcb0 /textproc | |
parent | af83d5986391f8bdb59bb6e6321cfae7a083739c (diff) | |
download | ports-c7dba22f726744545fff6f0aa0873dd4565512d0.tar.gz ports-c7dba22f726744545fff6f0aa0873dd4565512d0.zip |
Notes
Diffstat (limited to 'textproc')
-rw-r--r-- | textproc/adabrowse/Makefile | 30 | ||||
-rw-r--r-- | textproc/adabrowse/files/ad-projects-impl.ads | 8 | ||||
-rw-r--r-- | textproc/adabrowse/files/build.gpr | 16 | ||||
-rw-r--r-- | textproc/adabrowse/files/patch-Makefile | 129 |
4 files changed, 49 insertions, 134 deletions
diff --git a/textproc/adabrowse/Makefile b/textproc/adabrowse/Makefile index 006203f6508c..4ed95dc95d96 100644 --- a/textproc/adabrowse/Makefile +++ b/textproc/adabrowse/Makefile @@ -3,6 +3,7 @@ PORTNAME= adabrowse PORTVERSION= 4.0.3 +PORTREVISION= 1 CATEGORIES= textproc MASTER_SITES= http://home.datacomm.ch/t_wolf/tw/ada95/adabrowse/ DISTNAME= ${PORTNAME}_${PORTVERSION}_src @@ -10,17 +11,36 @@ DISTNAME= ${PORTNAME}_${PORTVERSION}_src MAINTAINER= marino@FreeBSD.org COMMENT= HTML generator for Ada 95 library unit specifications +LICENSE= GPLv2 + BUILD_DEPENDS= asis>=2011:${PORTSDIR}/lang/asis \ gnat_util>=2013:${PORTSDIR}/lang/gnat_util -LICENSE= GPLv2 - -USES= ada gmake +USES= ada WRKSRC= ${WRKDIR}/${PORTNAME}_${PORTVERSION} -MAKE_ENV= ADA_INCLUDE_PATH=${LOCALBASE}/lib/asis -MAKE_JOBS_UNSAFE=yes +PORTDOCS= *.html *.css + +OPTIONS_DEFINE= DOCS + +.include <bsd.port.options.mk> + +post-extract: + ${CP} ${FILESDIR}/ad-* ${FILESDIR}/build.gpr ${WRKSRC} + ${RM} ${WRKSRC}/sdefault.adb + +do-build: +# Since we only need one C object, just compile it manually rather +# than bring in GPRBuild as a dependency + ${MKDIR} ${WRKSRC}/obj + (cd ${WRKSRC}/obj && ${SETENV} ${MAKE_ENV} ada -c -O2 ../util-nl.c) + (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} gnatmake -Pbuild) do-install: ${INSTALL_PROGRAM} ${WRKSRC}/adabrowse ${STAGEDIR}${PREFIX}/bin/adabrowse +.if ${PORT_OPTIONS:MDOCS} + ${MKDIR} ${STAGEDIR}/${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/*.html ${WRKSRC}/doc/*.css \ + ${STAGEDIR}/${DOCSDIR}/ +.endif .include <bsd.port.mk> diff --git a/textproc/adabrowse/files/ad-projects-impl.ads b/textproc/adabrowse/files/ad-projects-impl.ads new file mode 100644 index 000000000000..7b6e154553f6 --- /dev/null +++ b/textproc/adabrowse/files/ad-projects-impl.ads @@ -0,0 +1,8 @@ +-- The FSF GNAT 4.9 Project code is hopelessly too modern for AdaBrowse to +-- hook into it. Just build AdaBrowse without it. + +pragma License (GPL); + +with AD.Projects.Impl_No; +private package AD.Projects.Impl + renames AD.Projects.Impl_No; diff --git a/textproc/adabrowse/files/build.gpr b/textproc/adabrowse/files/build.gpr new file mode 100644 index 000000000000..f1546dc1256b --- /dev/null +++ b/textproc/adabrowse/files/build.gpr @@ -0,0 +1,16 @@ +with "asis"; +with "gnat_util"; +project Build is + + for Languages use ("Ada", "C"); + for Source_Dirs use ("."); + for Object_dir use "obj"; + for Exec_Dir use "."; + for Main use ("adabrowse"); + + package Compiler is + for Default_Switches ("C") use ("-O2"); + for Default_Switches ("ada") use ("-O2", "-gnatwa"); + end Compiler; + +end Build; diff --git a/textproc/adabrowse/files/patch-Makefile b/textproc/adabrowse/files/patch-Makefile deleted file mode 100644 index 6747046f6986..000000000000 --- a/textproc/adabrowse/files/patch-Makefile +++ /dev/null @@ -1,129 +0,0 @@ ---- Makefile.orig 2005-04-28 20:10:20.000000000 +0000 -+++ Makefile -@@ -71,7 +71,7 @@ - # it has to work with the ancient GNU make 3.77 (distributed with GNAT 3.15p). - - GCC_OPTIONS = -O2 --LD_OPTIONS = -lasis -+LD_OPTIONS = -L$(PREFIX)/lib/asis -lasis -L$(PREFIX)/lib/gnat_util -lgnat_util - - host := $(shell gcc -dumpmachine) - -@@ -79,23 +79,10 @@ RM := rm -f - CP := cp - ADABROWSE := adabrowse - NASTY := nasty --GET_GCC := get_gcc - EXE := - CONFIGURE := adconf - PATH_SEP := : - --ifeq "$(findstring mingw32, $(host))" "mingw32" -- # Assume we're on Windows -- RM := cmd.exe /c del -- CP := cmd.exe /c copy -- ADABROWSE := adabrowse.exe -- NASTY := nasty.exe -- GET_GCC := get_gcc.exe -- CONFIGURE := adconf.exe -- EXE := .exe -- PATH_SEP := ; --endif -- - # GNAT-specific gcc options: enable all warnings, and style checking. - # The style checking flags are nearly as plain "-gnaty", but do not - # check comment format, and do not require explicit specs for all -@@ -104,9 +91,6 @@ endif - - GNAT_OPTIONS := -gnatwa -gnaty3abefhiklmprt - --GET_GCC_GEN = get_gcc.o get_gcc.ali --GET_GCC_FULL = $(GET_GCC_GEN) get_gcc.txt get_gcc.use -- - ifdef GNATSRC - - INTERNAL_GNAT_SRC := $(subst \,/,$(subst \\,/,$(GNATSRC))) -@@ -201,14 +185,14 @@ endif - - all: ./config/$(CONFIGURE) run-conf - $(MAKE) $(ADABROWSE) \ -- ADABROWSE_GCC_LIB=$(dir $(subst \,/,$(shell $(shell ./get_gcc -gcc get_gcc.use) -print-libgcc-file-name)))adainclude \ -+ ADABROWSE_GCC_LIB=$(dir $(subst \,/,$(shell ada -print-libgcc-file-name)))adainclude \ - ADABROWSE_GNATSRC=$(INTERNAL_GNAT_SRC) - - # Configuration stuff. We build an executable adconf, which then figures out - # from its parameters and by trying to compile a certain file whether or not - # we do have project manager support. - --./config/$(CONFIGURE): get_gcc.use ./config/adconf.adb -+./config/$(CONFIGURE): ./config/adconf.adb - cd ./config; gnatmake -q -I.. adconf - - # If adconf is called with two argument only (i.e., GNATSRC is not set), it -@@ -223,39 +207,13 @@ all: ./config/$(CONFIGURE) run-conf - - run-conf: - cd ./config; \ -- ./$(CONFIGURE) $(shell ./get_gcc -gcc get_gcc.use) \ -+ ./$(CONFIGURE) ada \ - $(ASIS_DIR) \ - $(INTERNAL_GNAT_SRC) \ -- $(dir $(subst \,/,$(shell $(shell ./get_gcc -gcc get_gcc.use) -print-libgcc-file-name)))adainclude -+ $(dir $(subst \,/,$(shell ada -print-libgcc-file-name)))adainclude - -cd ./config; $(CP) ad-projects-impl.ads .. - -cd ./config; $(CP) ad-projects-impl_yes-get_parent.adb .. - --# All this 'get_gcc' stuff here is GNAT specific: we try to dynamically --# figure out the name of the gcc used by GNAT. On some systems, it --# appears that this name is "gnatgcc", not "gcc"! -- --get_gcc.o : -- gnatmake -q -c -f get_gcc.adb -- --get_gcc.ali: -- gnatmake -q -c -f get_gcc.adb -- --$(GET_GCC): get_gcc.o get_gcc.ali get_gcc.adb -- gnatmake -q get_gcc -- --# Note: the dependency below first ensures that all the files we're --# going to delete in the rm command actually exist. This is a work- --# around for Win 2k, where make stops because cmd.exe /c del returns --# a failure exit code because some files may not exist. However, they --# must not exist when we run gnatmake, or we won't have the desired --# output in get_gcc.err. (The trick is that the first line in that --# file will be the compile command gnatmake uses for get_gcc.adb, --# which will start with the compiler name.) -- --get_gcc.use: $(GET_GCC) -- $(RM) $(GET_GCC) $(GET_GCC_GEN) -- gnatmake get_gcc 2>get_gcc.use -- - # Ok, finally we can build adabrowse! The first dependency handles the - # C file in the distribution. All the others may be regenerated. - -@@ -271,18 +229,17 @@ endif - $(ADABROWSE): util-nl.o \ - ad-setup.ads \ - ad-projects-impl.ads ad-projects-impl_yes-get_parent.adb -- gnatmake $(GCC_OPTIONS) adabrowse -cargs $(GNAT_OPTIONS) \ -- -largs $(LD_OPTIONS) -+ gnatmake $(GCC_OPTIONS) \ -+ -aI$(PREFIX)/include/asis -aO${PREFIX}/lib/asis \ -+ -aI$(PREFIX)/include/gnat_util -aO/${PREFIX}/lib/gnat_util \ -+ adabrowse -cargs $(GNAT_OPTIONS) -largs $(LD_OPTIONS) - strip $(ADABROWSE) - - $(NASTY): nasty.adb - gnatmake nasty -cargs $(GCC_OPTIONS) - --ad-setup.ads: get_gcc.use -- $(shell ./get_gcc -setup get_gcc.use) -- --util-nl.o: get_gcc.use util-nl.c -- $(shell ./get_gcc -gcc get_gcc.use) -c $(GCC_OPTIONS) util-nl.c -+util-nl.o: util-nl.c -+ ada -c $(GCC_OPTIONS) util-nl.c - - clean: - $(RM) $(ADABROWSE) $(NASTY) $(GET_GCC) *.o *.ali |