aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authormarino <marino@FreeBSD.org>2014-10-16 08:46:11 +0800
committermarino <marino@FreeBSD.org>2014-10-16 08:46:11 +0800
commitc954671c68754d24220a6d917dbff0c43c58f17f (patch)
treeb2f30e67cc1cbae44a1ad534efb91f102107db2d /devel
parentae712f6f8a6b47fa3ad17e633171257be2ccf135 (diff)
downloadfreebsd-ports-gnome-c954671c68754d24220a6d917dbff0c43c58f17f.tar.gz
freebsd-ports-gnome-c954671c68754d24220a6d917dbff0c43c58f17f.tar.zst
freebsd-ports-gnome-c954671c68754d24220a6d917dbff0c43c58f17f.zip
devel/matreshka: Fix build on i386 platforms
The author of matreshka informed me that GPRBuild 2014 has a bug in it that suppresses flags like -msse2 and -march. It's been fixed in the Pro version, but not the GPL version. He worked around the bug instead, and this commit brings in the essential part of that workaround. The GPRBuild bug prevented Matreshka from building on i386 on all releases and all platforms. While here, remove @dirrm from pkg-plist, strip the installed libraries, convert to USES=pgsql and tighten the makefile up a bit. MFH: 2014Q4
Diffstat (limited to 'devel')
-rw-r--r--devel/matreshka/Makefile25
-rw-r--r--devel/matreshka/files/patch-Makefile.build29
-rw-r--r--devel/matreshka/files/patch-Makefile.config.in10
3 files changed, 47 insertions, 17 deletions
diff --git a/devel/matreshka/Makefile b/devel/matreshka/Makefile
index 2ea2be1b99d9..1b750623509b 100644
--- a/devel/matreshka/Makefile
+++ b/devel/matreshka/Makefile
@@ -3,7 +3,7 @@
PORTNAME= matreshka
PORTVERSION= 0.6.0
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= devel
MASTER_SITES= http://forge.ada-ru.org/matreshka/downloads/
@@ -30,6 +30,11 @@ MYSQL_CONFIGURE_ENABLE= mysql
ORACLE_CONFIGURE_ENABLE= oracle
AMF_CONFIGURE_ENABLE= amf
+MYSQL_USE= MYSQL=yes
+PGSQL_USES= pgsql
+SQLITE3_USE= SQLITE=yes
+FIREBIRD_USE= FIREBIRD=yes
+
MAKE_JOBS_UNSAFE= yes
MAKE_ENV+= SMP_MFLAGS=-j${MAKE_JOBS_NUMBER}
@@ -38,29 +43,15 @@ MAKE_ENV+= SMP_MFLAGS=-j${MAKE_JOBS_NUMBER}
.if ${PORT_OPTIONS:MFIREBIRD}
CONFIGURE_ARGS+= --with-firebird-libdir=${LOCALBASE}/lib
-USE_FIREBIRD= yes
-.endif
-
-.if ${PORT_OPTIONS:MMYSQL}
-USE_MYSQL= yes
-.endif
-
-.if ${PORT_OPTIONS:MPGSQL}
-USE_PGSQL= yes
-.endif
-
-.if ${PORT_OPTIONS:MSQLITE3}
-USE_SQLITE= yes
.endif
pre-configure:
cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${MAKE_CMD} config
post-install:
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so \
+ ${STAGEDIR}${PREFIX}/bin/wsdl2ada
@cd ${STAGEDIR}${PREFIX}; ${FIND} * \( -type f -or -type l \) | \
${SORT} >> ${TMPPLIST}
- @cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d | ${AWK} '/\//' | ${SORT} -r | \
- ${SED} -e '/lib\/gnat$$/d' -e 's/^/@dirrm /g' >> ${TMPPLIST}
- @echo "@unexec rmdir %D/lib/gnat 2>/dev/null || true" >> ${TMPPLIST}
.include <bsd.port.mk>
diff --git a/devel/matreshka/files/patch-Makefile.build b/devel/matreshka/files/patch-Makefile.build
new file mode 100644
index 000000000000..3db824c27443
--- /dev/null
+++ b/devel/matreshka/files/patch-Makefile.build
@@ -0,0 +1,29 @@
+--- Makefile.build.orig 2013-09-18 07:12:40.852703000 +0000
++++ Makefile.build
+@@ -1,5 +1,6 @@
+ include Makefile.config
+
++GNATMAKE = gnatmake
+ GPRBUILD_FLAGS = -p $(SMP_MFLAGS)
+
+ ALL_TARGETS = league xml fastcgi soap wsse wsdl2ada sql
+@@ -31,6 +32,19 @@ endif
+ all: $(ALL_TARGETS)
+
+ league:
++ifneq (, $(findstring x86,$(ARCHITECTURE)))
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-internals-strings-handlers-x86_utilities.adb
++ifeq ($(ARCHITECTURE), x86)
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-simd-intel-sse.adb
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-simd-intel-sse2.ads
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-internals-strings-handlers-generic_x86_sse2.adb
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-internals-strings-handlers-x86-sse2.ads
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-internals-strings-handlers-x86-sse2_popcnt.ads
++endif
++ifeq ($(ARCHITECTURE), x86_64)
++ $(GNATMAKE) -p -c -u -Pgnat/matreshka_league.gpr matreshka-internals-strings-handlers-x86_64_popcnt.ads
++endif
++endif
+ $(GPRBUILD) $(GPRBUILD_FLAGS) -Pgnat/matreshka_league.gpr
+
+ xml: league
diff --git a/devel/matreshka/files/patch-Makefile.config.in b/devel/matreshka/files/patch-Makefile.config.in
new file mode 100644
index 000000000000..da1b41d51d33
--- /dev/null
+++ b/devel/matreshka/files/patch-Makefile.config.in
@@ -0,0 +1,10 @@
+--- Makefile.config.in.orig 2013-12-22 22:34:01.201864000 +0000
++++ Makefile.config.in
+@@ -1,6 +1,7 @@
+
+ VERSION = @VERSION@
+ RTL_VERSION = @RTL_VERSION_SUFFIX@
++ARCHITECTURE = @ARCHITECTURE@
+ OPERATING_SYSTEM = @OPERATING_SYSTEM@
+
+ PREFIX = @PREFIX@