diff options
author | marino <marino@FreeBSD.org> | 2013-07-21 22:26:31 +0800 |
---|---|---|
committer | marino <marino@FreeBSD.org> | 2013-07-21 22:26:31 +0800 |
commit | a658efed57cec672a218894b25e69e41069f2989 (patch) | |
tree | 62155804c617fb58e46cc44fc5032127bdf19830 | |
parent | 8a14b157c65be4b42e78d0c4a5ee071b38fedcb4 (diff) | |
download | freebsd-ports-gnome-a658efed57cec672a218894b25e69e41069f2989.tar.gz freebsd-ports-gnome-a658efed57cec672a218894b25e69e41069f2989.tar.zst freebsd-ports-gnome-a658efed57cec672a218894b25e69e41069f2989.zip |
Add new port: lang/adacontrol
Adacontrol is a tool that analyzes language constructs in Ada programs. It
can be used as a standalone tool, or integrated into other tools. An
example of integration can be seen with the upcoming devel/ahven port.
Approved by: bapt (mentor)
-rw-r--r-- | lang/Makefile | 1 | ||||
-rw-r--r-- | lang/adacontrol/Makefile | 43 | ||||
-rw-r--r-- | lang/adacontrol/distinfo | 2 | ||||
-rw-r--r-- | lang/adacontrol/files/patch-src_Makefile | 32 | ||||
-rw-r--r-- | lang/adacontrol/pkg-descr | 15 | ||||
-rw-r--r-- | lang/adacontrol/pkg-plist | 23 |
6 files changed, 116 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile index 849bdb921f9b..0acf34fadb89 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -7,6 +7,7 @@ SUBDIR += STk SUBDIR += Sather SUBDIR += abcl + SUBDIR += adacontrol SUBDIR += afnix SUBDIR += algol68g SUBDIR += alisp diff --git a/lang/adacontrol/Makefile b/lang/adacontrol/Makefile new file mode 100644 index 000000000000..b9bf2cd0fd9b --- /dev/null +++ b/lang/adacontrol/Makefile @@ -0,0 +1,43 @@ +# Created by: John Marino <marino@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= adacontrol +PORTVERSION= 1.15r5 +CATEGORIES= lang +MASTER_SITES= SF/adacontrol +DISTNAME= adactl_old-${PORTVERSION}-src +EXTRACT_SUFX= .tgz + +MAINTAINER= marino@FreeBSD.org +COMMENT= Tool for detecting use or non-use of specific Ada constructs + +BUILD_DEPENDS= asis>=2011:${PORTSDIR}/lang/asis \ + gnat_util>=2013:${PORTSDIR}/lang/gnat_util + +USES= ada gmake +WRKSRC= ${WRKDIR}/adactl-${PORTVERSION} +DESTINY= ${WRKDIR}/destino +BUILD_WRKSRC= ${WRKSRC}/src +ALL_TARGET= build + +do-install: + # To support DESTDIR in the future, install twice + ${MKDIR} ${DESTINY}${PREFIX}/bin + ${MKDIR} ${DESTINY}${PREFIX}/share/gps/plug-ins + ${MKDIR} ${DESTINY}${PREFIX}/share/doc/gps/html + ${MKDIR} ${DESTINY}${PREFIX}/share/doc/adacontrol + ${MKDIR} ${DESTINY}${PREFIX}/share/gprconfig + ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/adactl ${BUILD_WRKSRC}/pfni \ + ${BUILD_WRKSRC}/ptree ${DESTINY}/${PREFIX}/bin + ${INSTALL_DATA} ${WRKSRC}/GPS/adacontrol.xml \ + ${DESTINY}${PREFIX}/share/gprconfig + ${INSTALL_DATA} ${WRKSRC}/GPS/*adactl* ${WRKSRC}/GPS/pfni.* \ + ${DESTINY}${PREFIX}/share/gps/plug-ins + ${INSTALL_MAN} ${WRKSRC}/doc/*.html \ + ${DESTINY}${PREFIX}/share/doc/gps/html + ${INSTALL_MAN} ${WRKSRC}/doc/*.pdf ${WRKSRC}/doc/*.html \ + ${DESTINY}${PREFIX}/share/doc/adacontrol + # Now install from DESTDIR + ${CP} -pR ${DESTINY}${PREFIX}/ ${PREFIX}/ + +.include <bsd.port.mk> diff --git a/lang/adacontrol/distinfo b/lang/adacontrol/distinfo new file mode 100644 index 000000000000..0ffff3f097eb --- /dev/null +++ b/lang/adacontrol/distinfo @@ -0,0 +1,2 @@ +SHA256 (adactl_old-1.15r5-src.tgz) = 0d495ee1f6c643c807f295474f32726c5935c5ec8a94c847c25e803b1546f4fb +SIZE (adactl_old-1.15r5-src.tgz) = 1700731 diff --git a/lang/adacontrol/files/patch-src_Makefile b/lang/adacontrol/files/patch-src_Makefile new file mode 100644 index 000000000000..e5796c9060c4 --- /dev/null +++ b/lang/adacontrol/files/patch-src_Makefile @@ -0,0 +1,32 @@ +--- src/Makefile.orig 2013-07-09 13:33:01.000000000 +0000 ++++ src/Makefile +@@ -2,7 +2,7 @@ + # Set PATH to ASIS library below (default corresponds to the case where you + # installed ASIS in the Gnat directory) + +-ASIS_TOP = /usr/gnat/ ++ASIS_TOP = ${PREFIX} + + ############################################################################### + # Depending on your version of ASIS, the ASIS directory may be split into +@@ -22,6 +22,10 @@ ASIS_INCLUDE = ${ASIS_TOP}/include/asis + ASIS_OBJ = ${ASIS_TOP}/lib/asis + ASIS_LIB = ${ASIS_TOP}/lib/asis + ++GU_INCLUDE = ${ASIS_TOP}/include/gnat_util ++GU_OBJ = ${ASIS_TOP}/lib/gnat_util ++GU_LIB = ${ASIS_TOP}/lib/gnat_util ++ + ############################################################################### + # SYSTEM COMMANDS (do not change) + +@@ -48,7 +52,8 @@ EXT = ${UNIX_EXT} + GARGS = -gnatf -gnatwa -aI${ASIS_INCLUDE} -aO${ASIS_OBJ} -g + CARGS = -cargs -O2 -gnatWh -gnat05 -gnato + BARGS = -bargs -E +-LARGS = -largs -L${ASIS_LIB} -lasis ++LARGS = -largs -L${ASIS_LIB} -lasis -L${GU_LIB} -lgnat_util ++GARGS+= -aI${GU_INCLUDE} -aO${GU_OBJ} + + # Uncomment the following line if you are running GnatPro 6.1.2 or above + #CARGS_EXTRA = ${CARGS} -fno-tree-vrp diff --git a/lang/adacontrol/pkg-descr b/lang/adacontrol/pkg-descr new file mode 100644 index 000000000000..0050e67e2de0 --- /dev/null +++ b/lang/adacontrol/pkg-descr @@ -0,0 +1,15 @@ +AdaControl is a free (GMGPL) tool that detects the use of various kinds of +constructs in Ada programs. Its first goal is to control proper usage of +style or programming rules, but it can also be used as a powerful tool to +search for use (or non-use) of various forms of programming styles or design +patterns. Searched elements range from very simple, like the occurrence of +certaine entities, declarations, or statements, to very sophisticated, like +verifying that certain programming patterns are being obeyed.. + +Which elements or constructs are searched is defined by a set of rules; the +following table gives a short summary of rules currently checked by +AdaControl. The number in parentheses after the rule name gives the number +of subrules, if any. Considering all possible rules and subrules, this makes +452 tests that can be performed currently by AdaControl! + +WWW: http://www.adalog.fr diff --git a/lang/adacontrol/pkg-plist b/lang/adacontrol/pkg-plist new file mode 100644 index 000000000000..cd9cd49a40a8 --- /dev/null +++ b/lang/adacontrol/pkg-plist @@ -0,0 +1,23 @@ +bin/adactl +bin/pfni +bin/ptree +%%DOCSDIR%%/adacontrol_pm.html +%%DOCSDIR%%/adacontrol_pm.pdf +%%DOCSDIR%%/adacontrol_ug.html +%%DOCSDIR%%/adacontrol_ug.pdf +share/doc/gps/html/adacontrol_pm.html +share/doc/gps/html/adacontrol_ug.html +share/gprconfig/adacontrol.xml +share/gps/plug-ins/adactl.gif +share/gps/plug-ins/adactl.py +share/gps/plug-ins/adactl_ask.gif +share/gps/plug-ins/pfni.py +share/gps/plug-ins/pfni.xml +share/gps/plug-ins/zadactl.xml +@dirrm %%DOCSDIR%% +@dirrmtry share/doc/gps/html +@dirrmtry share/doc/gps +@dirrmtry share/doc +@dirrmtry share/gprconfig +@dirrmtry share/gps/plug-ins +@dirrmtry share/gps |