Bug 180097

Summary: [NEW PORT] Add devel/matreshka Ada development framework
Product: Ports & Packages Reporter: John Marino <draco>
Component: Individual Port(s)Assignee: William Grzybowski <wg>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.shar none

Description John Marino 2013-06-29 19:20:00 UTC
===========================================================================
Matreshka is an Ada framework to develop information systems.  It consists
of five major components: League, XML processor, Web framework, SQL access,
and the Modeling framework.

League:
    High level abstraction of localization and internationalization. Also
    provides calendrical calculations, regular expressions, and JSON.

XML processor: 
    Sax reader and writer, supports XML 1.0 and 1.1 as well as namespaces.
    It also has an XML catalogs resolver.

Web framework:
    Supports FastCGI, SOAP 1.2 and has a WSDL to Ada translator.

SQL access:
    Database abstraction of MySQL, Oracle, PostgreSQL, SQLite and Firebird.

Modeling framework:
    provides implementation of Meta Object Facility (MOF) written entirely
    in Ada.  Extension modules assist in the analysis of UML modules and
    extensions (MOF, OCL, and UML testing profile) and diagram definition.
===========================================================================

This port passes redports 8.4-amd64, 8.4-i386, 9.1-amd64 and 9.1-i386
It also passes pkg DEVELOPER_MODE=1.

Fix: Patch attached with submission follows:
Comment 1 John Marino 2013-07-01 17:07:16 UTC
Redports logs:
https://redports.org/buildarchive/20130629174700-7650/
Comment 2 William Grzybowski freebsd_committer freebsd_triage 2013-07-01 17:11:11 UTC
Responsible Changed
From-To: freebsd-ports-bugs->wg

I'll take it.
Comment 3 John Marino 2013-07-01 18:22:46 UTC
Matreshka is not truly jobs safe.
It may pass, but with high job numbers it can fail:

https://redports.org/buildarchive/20130701170100-28564/

MAKE_JOBS_SAFE should not be enabled, and perhaps MAKE_JOBS_UNSAFE=yes 
is prudent.
Comment 4 dfilter service freebsd_committer freebsd_triage 2013-07-01 20:18:32 UTC
Author: wg
Date: Mon Jul  1 19:18:17 2013
New Revision: 322140
URL: http://svnweb.freebsd.org/changeset/ports/322140

Log:
  devel/matreshka: Ada framework for information systems development
  
  Matreshka is an Ada framework to develop information systems.  It consists
  of five major components: League, XML processor, Web framework, SQL access,
  and the Modeling framework.
  
  League:
      High level abstraction of localization and internationalization. Also
      provides calendrical calculations, regular expressions, and JSON.
  
  XML processor:
      Sax reader and writer, supports XML 1.0 and 1.1 as well as namespaces.
      It also has an XML catalogs resolver.
  
  Web framework:
      Supports FastCGI, SOAP 1.2 and has a WSDL to Ada translator.
  
  SQL access:
      Database abstraction of MySQL, Oracle, PostgreSQL, SQLite and Firebird.
  
  Modeling framework:
      provides implementation of Meta Object Facility (MOF) written entirely
      in Ada.  Extension modules assist in the analysis of UML modules and
      extensions (MOF, OCL, and UML testing profile) and diagram definition.
  
  WWW: http://forge.ada-ru.org/matreshka
  
  PR:		ports/180097
  Submitted by:	John Marino <draco@marino.st>

Added:
  head/devel/matreshka/
  head/devel/matreshka/Makefile   (contents, props changed)
  head/devel/matreshka/distinfo   (contents, props changed)
  head/devel/matreshka/files/
  head/devel/matreshka/files/patch-Makefile.build   (contents, props changed)
  head/devel/matreshka/files/patch-Makefile.install   (contents, props changed)
  head/devel/matreshka/pkg-descr   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Mon Jul  1 19:13:50 2013	(r322139)
+++ head/devel/Makefile	Mon Jul  1 19:18:17 2013	(r322140)
@@ -1210,6 +1210,7 @@
     SUBDIR += magit
     SUBDIR += make++
     SUBDIR += makedepend
+    SUBDIR += matreshka
     SUBDIR += maven-ant-tasks
     SUBDIR += maven-wrapper
     SUBDIR += maven2

Added: head/devel/matreshka/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/matreshka/Makefile	Mon Jul  1 19:18:17 2013	(r322140)
@@ -0,0 +1,65 @@
+# Created by: John Marino <draco@marino.st>
+# $FreeBSD$
+
+PORTNAME=	matreshka
+PORTVERSION=	0.5.0
+CATEGORIES=	devel
+MASTER_SITES=	http://forge.ada-ru.org/matreshka/downloads/
+
+MAINTAINER=	draco@marino.st
+COMMENT=	Ada framework for information systems development
+
+LICENSE=	BSD
+
+BUILD_DEPENDS=	gprbuild>=20120510:${PORTSDIR}/devel/gprbuild
+
+USES=		ada
+USE_GMAKE=	yes
+DESTINY=	${WRKDIR}/destino
+
+OPTIONS_DEFINE=	SQLITE3 FIREBIRD PGSQL MYSQL ORACLE AMF
+OPTIONS_DEFAULT=SQLITE3 FIREBIRD PGSQL MYSQL
+
+AMF_DESC=	Build Ada Modeling Framework
+
+MAKE_JOBS_UNSAFE=	yes
+
+MAKE_ENV+=	SMP_MFLAGS=-j${MAKE_JOBS_NUMBER} \
+		DESTDIR=${DESTINY}
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MFIREBIRD}
+MAKE_ENV+= HAS_FIREBIRD=yes
+.endif
+
+.if ${PORT_OPTIONS:MMYSQL}
+MAKE_ENV+= HAS_MYSQL=yes
+.endif
+
+.if ${PORT_OPTIONS:MORACLE}
+MAKE_ENV+= HAS_OCI=yes
+.endif
+
+.if ${PORT_OPTIONS:MPGSQL}
+MAKE_ENV+= HAS_POSTGRESQL=yes
+.endif
+
+.if ${PORT_OPTIONS:MSQLITE3}
+MAKE_ENV+= HAS_SQLITE3=yes
+.endif
+
+.if ${PORT_OPTIONS:MAMF}
+MAKE_ENV+= WANT_AMF=yes
+.endif
+
+post-install:
+	${CP} -pR ${DESTINY}${PREFIX}/ ${PREFIX}/
+	@cd ${DESTINY}${PREFIX}; ${FIND} * \( -type f -or -type l \) | \
+	   ${SORT} > ${WRKDIR}/PLIST.all
+	@cd ${DESTINY}${PREFIX}; ${FIND} * -type d | ${AWK} '/\//' | ${SORT} -r | \
+	   ${SED} -e '/lib\/gnat$$/d' -e 's/^/@dirrm /g' >> ${WRKDIR}/PLIST.all
+	@echo "@unexec rmdir %D/lib/gnat 2>/dev/null || true" >> ${WRKDIR}/PLIST.all
+	@${CAT} ${WRKDIR}/PLIST.all >> ${TMPPLIST}
+
+.include <bsd.port.mk>

Added: head/devel/matreshka/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/matreshka/distinfo	Mon Jul  1 19:18:17 2013	(r322140)
@@ -0,0 +1,2 @@
+SHA256 (matreshka-0.5.0.tar.gz) = 09b7fd82f47d0e64ceaa1b538ed7f4e96351759ca10c0f307d0d20fec3bafe98
+SIZE (matreshka-0.5.0.tar.gz) = 32055197

Added: head/devel/matreshka/files/patch-Makefile.build
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/matreshka/files/patch-Makefile.build	Mon Jul  1 19:18:17 2013	(r322140)
@@ -0,0 +1,15 @@
+--- Makefile.build.orig	2013-03-26 10:11:24.640151000 +0000
++++ Makefile.build
+@@ -2,7 +2,11 @@ include Makefile.config
+ 
+ GPRBUILD_FLAGS = -p $(SMP_MFLAGS)
+ 
+-ALL_TARGETS = league xml fastcgi soap wsse wsdl2ada sql amf dd uml mofext ocl utp
++ALL_TARGETS = league xml fastcgi soap wsse wsdl2ada sql 
++
++ifdef WANT_AMF
++ALL_TARGETS += amf dd uml mofext ocl utp
++endif
+ 
+ ifdef HAS_FIREBIRD
+ ALL_TARGETS += firebird

Added: head/devel/matreshka/files/patch-Makefile.install
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/matreshka/files/patch-Makefile.install	Mon Jul  1 19:18:17 2013	(r322140)
@@ -0,0 +1,15 @@
+--- Makefile.install.orig	2012-12-05 19:49:10.977713000 +0000
++++ Makefile.install
+@@ -22,7 +22,11 @@ LIBEXT = dll
+ EXEEXT = .exe
+ endif
+ 
+-INSTALL_TARGETS = league xml fastcgi soap wsse wsdl2ada sql amf dd uml mofext ocl utp
++INSTALL_TARGETS = league xml fastcgi soap wsse wsdl2ada sql 
++
++ifdef WANT_AMF
++INSTALL_TARGETS += amf dd uml mofext ocl utp
++endif
+ 
+ ifdef HAS_FIREBIRD
+ INSTALL_TARGETS += firebird

Added: head/devel/matreshka/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/matreshka/pkg-descr	Mon Jul  1 19:18:17 2013	(r322140)
@@ -0,0 +1,24 @@
+Matreshka is an Ada framework to develop information systems.  It consists
+of five major components: League, XML processor, Web framework, SQL access,
+and the Modeling framework.
+
+League:
+    High level abstraction of localization and internationalization. Also
+    provides calendrical calculations, regular expressions, and JSON.
+
+XML processor: 
+    Sax reader and writer, supports XML 1.0 and 1.1 as well as namespaces.
+    It also has an XML catalogs resolver.
+
+Web framework:
+    Supports FastCGI, SOAP 1.2 and has a WSDL to Ada translator.
+
+SQL access:
+    Database abstraction of MySQL, Oracle, PostgreSQL, SQLite and Firebird.
+
+Modeling framework:
+    provides implementation of Meta Object Facility (MOF) written entirely
+    in Ada.  Extension modules assist in the analysis of UML modules and
+    extensions (MOF, OCL, and UML testing profile) and diagram definition.
+
+WWW: http://forge.ada-ru.org/matreshka
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 5 William Grzybowski freebsd_committer freebsd_triage 2013-07-01 20:20:44 UTC
State Changed
From-To: open->closed

New port added. Thanks!