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)
This commit is contained in:
parent
bdffd45829
commit
25a3e224f5
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=323392
@ -7,6 +7,7 @@
|
||||
SUBDIR += STk
|
||||
SUBDIR += Sather
|
||||
SUBDIR += abcl
|
||||
SUBDIR += adacontrol
|
||||
SUBDIR += afnix
|
||||
SUBDIR += algol68g
|
||||
SUBDIR += alisp
|
||||
|
43
lang/adacontrol/Makefile
Normal file
43
lang/adacontrol/Makefile
Normal file
@ -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>
|
2
lang/adacontrol/distinfo
Normal file
2
lang/adacontrol/distinfo
Normal file
@ -0,0 +1,2 @@
|
||||
SHA256 (adactl_old-1.15r5-src.tgz) = 0d495ee1f6c643c807f295474f32726c5935c5ec8a94c847c25e803b1546f4fb
|
||||
SIZE (adactl_old-1.15r5-src.tgz) = 1700731
|
32
lang/adacontrol/files/patch-src_Makefile
Normal file
32
lang/adacontrol/files/patch-src_Makefile
Normal file
@ -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
|
15
lang/adacontrol/pkg-descr
Normal file
15
lang/adacontrol/pkg-descr
Normal file
@ -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
|
23
lang/adacontrol/pkg-plist
Normal file
23
lang/adacontrol/pkg-plist
Normal file
@ -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
|
Loading…
Reference in New Issue
Block a user