aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--devel/gnustep-make/Makefile12
-rw-r--r--devel/gnustep-make/files/GNUstep.sh31
-rw-r--r--devel/gnustep-make/files/gdomap_if1
-rw-r--r--devel/gnustep-make/pkg-plist4
-rw-r--r--devel/gnustep/Makefile12
-rw-r--r--devel/gnustep/files/GNUstep.sh31
-rw-r--r--devel/gnustep/files/gdomap_if1
-rw-r--r--devel/gnustep/pkg-plist4
-rw-r--r--lang/gnustep-base/Makefile12
-rw-r--r--lang/gnustep-base/files/GNUstep.sh31
-rw-r--r--lang/gnustep-base/files/gdomap_if1
-rw-r--r--lang/gnustep-base/pkg-plist4
-rw-r--r--lang/gnustep-guile/Makefile12
-rw-r--r--lang/gnustep-guile/files/GNUstep.sh31
-rw-r--r--lang/gnustep-guile/files/gdomap_if1
-rw-r--r--lang/gnustep-guile/pkg-plist4
-rw-r--r--lang/gnustep-objc/Makefile12
-rw-r--r--lang/gnustep-objc/files/GNUstep.sh31
-rw-r--r--lang/gnustep-objc/files/gdomap_if1
-rw-r--r--lang/gnustep-objc/pkg-plist4
-rw-r--r--x11-toolkits/gnustep-gui/Makefile12
-rw-r--r--x11-toolkits/gnustep-gui/files/GNUstep.sh31
-rw-r--r--x11-toolkits/gnustep-gui/files/gdomap_if1
-rw-r--r--x11-toolkits/gnustep-gui/pkg-plist4
-rw-r--r--x11-toolkits/gnustep-xgps/Makefile12
-rw-r--r--x11-toolkits/gnustep-xgps/files/GNUstep.sh31
-rw-r--r--x11-toolkits/gnustep-xgps/files/gdomap_if1
-rw-r--r--x11-toolkits/gnustep-xgps/pkg-plist4
28 files changed, 322 insertions, 14 deletions
diff --git a/devel/gnustep-make/Makefile b/devel/gnustep-make/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/devel/gnustep-make/Makefile
+++ b/devel/gnustep-make/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/devel/gnustep-make/files/GNUstep.sh b/devel/gnustep-make/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/devel/gnustep-make/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/devel/gnustep-make/files/gdomap_if b/devel/gnustep-make/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/devel/gnustep-make/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/devel/gnustep-make/pkg-plist b/devel/gnustep-make/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/devel/gnustep-make/pkg-plist
+++ b/devel/gnustep-make/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/devel/gnustep/Makefile b/devel/gnustep/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/devel/gnustep/Makefile
+++ b/devel/gnustep/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/devel/gnustep/files/GNUstep.sh b/devel/gnustep/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/devel/gnustep/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/devel/gnustep/files/gdomap_if b/devel/gnustep/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/devel/gnustep/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/devel/gnustep/pkg-plist b/devel/gnustep/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/devel/gnustep/pkg-plist
+++ b/devel/gnustep/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/lang/gnustep-base/Makefile b/lang/gnustep-base/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/lang/gnustep-base/Makefile
+++ b/lang/gnustep-base/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/lang/gnustep-base/files/GNUstep.sh b/lang/gnustep-base/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/lang/gnustep-base/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/lang/gnustep-base/files/gdomap_if b/lang/gnustep-base/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/lang/gnustep-base/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/lang/gnustep-base/pkg-plist b/lang/gnustep-base/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/lang/gnustep-base/pkg-plist
+++ b/lang/gnustep-base/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/lang/gnustep-guile/Makefile b/lang/gnustep-guile/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/lang/gnustep-guile/Makefile
+++ b/lang/gnustep-guile/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/lang/gnustep-guile/files/GNUstep.sh b/lang/gnustep-guile/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/lang/gnustep-guile/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/lang/gnustep-guile/files/gdomap_if b/lang/gnustep-guile/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/lang/gnustep-guile/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/lang/gnustep-guile/pkg-plist b/lang/gnustep-guile/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/lang/gnustep-guile/pkg-plist
+++ b/lang/gnustep-guile/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/lang/gnustep-objc/Makefile b/lang/gnustep-objc/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/lang/gnustep-objc/Makefile
+++ b/lang/gnustep-objc/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/lang/gnustep-objc/files/GNUstep.sh b/lang/gnustep-objc/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/lang/gnustep-objc/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/lang/gnustep-objc/files/gdomap_if b/lang/gnustep-objc/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/lang/gnustep-objc/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/lang/gnustep-objc/pkg-plist b/lang/gnustep-objc/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/lang/gnustep-objc/pkg-plist
+++ b/lang/gnustep-objc/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/x11-toolkits/gnustep-gui/Makefile b/x11-toolkits/gnustep-gui/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/x11-toolkits/gnustep-gui/Makefile
+++ b/x11-toolkits/gnustep-gui/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/x11-toolkits/gnustep-gui/files/GNUstep.sh b/x11-toolkits/gnustep-gui/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/x11-toolkits/gnustep-gui/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/x11-toolkits/gnustep-gui/files/gdomap_if b/x11-toolkits/gnustep-gui/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/x11-toolkits/gnustep-gui/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/x11-toolkits/gnustep-gui/pkg-plist b/x11-toolkits/gnustep-gui/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/x11-toolkits/gnustep-gui/pkg-plist
+++ b/x11-toolkits/gnustep-gui/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R
diff --git a/x11-toolkits/gnustep-xgps/Makefile b/x11-toolkits/gnustep-xgps/Makefile
index 1ed7822d87f5..a1b99dfcc0ab 100644
--- a/x11-toolkits/gnustep-xgps/Makefile
+++ b/x11-toolkits/gnustep-xgps/Makefile
@@ -47,4 +47,16 @@ GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
+ETCDIR= ${PREFIX}/../etc
+
+post-patch:
+.for f in bundle gswapp gswbundle woapp wobundle
+ ${PERL} -pi -e 's/\$$\(TAR\) ch --exclude=CVS --to-stdout/\$$\(TAR\) -ch --exclude=CVS -f -/g' ${WRKSRC}/make/${f}.make
+.endfor
+
+post-install:
+ @${MKDIR} ${ETCDIR}
+ ${INSTALL_SCRIPT} ${FILESDIR}/GNUstep.sh ${ETCDIR}/rc.d
+ ${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
+
.include <bsd.port.post.mk>
diff --git a/x11-toolkits/gnustep-xgps/files/GNUstep.sh b/x11-toolkits/gnustep-xgps/files/GNUstep.sh
new file mode 100644
index 000000000000..0c53c376a68e
--- /dev/null
+++ b/x11-toolkits/gnustep-xgps/files/GNUstep.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+IFFILE=${PREFIX}/etc/gdomap_if
+PIDFILE=/var/run/gdomap.pid
+GNUSTEP_SYSTEM_ROOT=${PREFIX}/GNUstep/System
+
+case "$1" in
+start)
+ if [ -e ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh ]; then
+ . ${GNUSTEP_SYSTEM_ROOT}/Makefiles/GNUstep.sh
+ if [ -x ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap ]; then
+ rm -f ${PIDFILE}
+ ${GNUSTEP_SYSTEM_ROOT}/Tools/gdomap -a ${IFFILE} -I ${PIDFILE}
+ echo -n ' GNUstep'
+ fi
+ fi
+ ;;
+stop)
+ [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0
diff --git a/x11-toolkits/gnustep-xgps/files/gdomap_if b/x11-toolkits/gnustep-xgps/files/gdomap_if
new file mode 100644
index 000000000000..dcb650b9b376
--- /dev/null
+++ b/x11-toolkits/gnustep-xgps/files/gdomap_if
@@ -0,0 +1 @@
+127.0.0.1 255.255.255.0
diff --git a/x11-toolkits/gnustep-xgps/pkg-plist b/x11-toolkits/gnustep-xgps/pkg-plist
index 111ddde99892..15383b1ed3bc 100644
--- a/x11-toolkits/gnustep-xgps/pkg-plist
+++ b/x11-toolkits/gnustep-xgps/pkg-plist
@@ -1268,6 +1268,8 @@ System/Tools/plser
System/Tools/set_show_service
System/Tools/sfparse
System/share/config.site
+../etc/gdomap_if
+../etc/rc.d/GNUstep.sh
@exec mkdir -p %D/Local
@exec mkdir -p %D/Local/Users
@exec mkdir -p %D/Local/Users/Administrator
@@ -1350,5 +1352,3 @@ System/share/config.site
@dirrm Local/Users/Administrator
@dirrm Local/Users
@dirrm Local
-@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %B
-@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R