aboutsummaryrefslogtreecommitdiff
path: root/emulators/hercules
diff options
context:
space:
mode:
authorStefan Walter <stefan@FreeBSD.org>2006-05-13 21:49:41 +0000
committerStefan Walter <stefan@FreeBSD.org>2006-05-13 21:49:41 +0000
commit6b4fb1c448d9281ccef86edffde3bd6a1de0b6fb (patch)
treea00bd7c25af2dbb0abac25816ac40c99f53a547c /emulators/hercules
parentd1b053f8e1765dc4bfc10df125e139ea79307047 (diff)
downloadports-6b4fb1c448d9281ccef86edffde3bd6a1de0b6fb.tar.gz
ports-6b4fb1c448d9281ccef86edffde3bd6a1de0b6fb.zip
Notes
Diffstat (limited to 'emulators/hercules')
-rw-r--r--emulators/hercules/Makefile10
-rw-r--r--emulators/hercules/distinfo7
-rw-r--r--emulators/hercules/files/patch-configure257
-rw-r--r--emulators/hercules/files/patch-fbdcompile36
-rw-r--r--emulators/hercules/files/patch-hercifc.h14
-rw-r--r--emulators/hercules/files/patch-herconf36
-rw-r--r--emulators/hercules/files/patch-tuntap11
-rw-r--r--emulators/hercules/files/patch-tuntap-sin_len90
-rw-r--r--emulators/hercules/pkg-plist4
9 files changed, 117 insertions, 348 deletions
diff --git a/emulators/hercules/Makefile b/emulators/hercules/Makefile
index f435ce46277e..c20054610409 100644
--- a/emulators/hercules/Makefile
+++ b/emulators/hercules/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= hercules
-PORTVERSION= 3.03.1
+PORTVERSION= 3.04
CATEGORIES= emulators
MASTER_SITES= http://www.conmicro.cx/hercules/
@@ -45,15 +45,21 @@ IGNORE= does not compile on FreeBSD 4.x
.endif
.if defined(WITH_DEBUG)
-CONFIGURE_ENV+= CFLAGS=-g
+CFLAGS+= -g
.endif
.if defined(WITH_PTHREADS)
CONFIGURE_ARGS+= --disable-fthreads
.endif
.if defined(WITHOUT_NLS)
CONFIGURE_ARGS+= --disable-nls
+PLIST_SUB+= GETTEXT="@comment "
.else
USE_GETTEXT= yes
+PLIST_SUB+= GETTEXT=""
+.endif
+
+.if defined(CFLAGS)
+CONFIGURE_ARGS+= --enable-optimization="no"
.endif
.include <bsd.port.post.mk>
diff --git a/emulators/hercules/distinfo b/emulators/hercules/distinfo
index a5ed9fb4e0ee..23269a3f3310 100644
--- a/emulators/hercules/distinfo
+++ b/emulators/hercules/distinfo
@@ -1,4 +1,3 @@
-MD5 (hercules-3.03.1.tar.gz) = 8576461fff6ed642fc69350826cf3c1d
-SHA256 (hercules-3.03.1.tar.gz) = f654785f1a12a39707ed66bc54b202dc70b90ecf3102660182d7f1ddddb7eba9
-SIZE (hercules-3.03.1.tar.gz) = 2071850
-SIZE (hercules-2.17.1.tar.gz) = 1172656
+MD5 (hercules-3.04.tar.gz) = 7c7df7d52bf0365d5cbe051dc9e2e481
+SHA256 (hercules-3.04.tar.gz) = 4512a7c2b86b4a92c337c99761295aa4eaa54e90da3d0881c283b69c03b1eed5
+SIZE (hercules-3.04.tar.gz) = 2079774
diff --git a/emulators/hercules/files/patch-configure b/emulators/hercules/files/patch-configure
deleted file mode 100644
index 4a7ecc3c9411..000000000000
--- a/emulators/hercules/files/patch-configure
+++ /dev/null
@@ -1,257 +0,0 @@
---- config.h.in.orig Thu Dec 29 03:37:47 2005
-+++ config.h.in Wed Jan 25 20:05:14 2006
-@@ -433,6 +433,9 @@
- */
- #undef HAVE_SYS_NDIR_H
-
-+/* Define to 1 if you have the <sys/param.h> header file. */
-+#undef HAVE_SYS_PARAM_H
-+
- /* Define to 1 if you have the <sys/resource.h> header file. */
- #undef HAVE_SYS_RESOURCE_H
-
---- configure.orig Wed Jan 25 20:04:35 2006
-+++ configure Wed Jan 25 20:05:14 2006
-@@ -24562,6 +24562,14 @@ case "$host_os" in
- hc_cv_is_apple=no
- ;;
-
-+ freebsd*)
-+
-+ hc_cv_is_nix=yes
-+ hc_cv_is_windows=no
-+ hc_cv_is_mingw32=no
-+ hc_cv_is_apple=no
-+ ;;
-+
- mingw*)
-
- hc_cv_is_nix=no
-@@ -27941,6 +27949,158 @@ fi
- done
-
-
-+for ac_header in sys/param.h
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+ echo "$as_me:$LINENO: checking for $ac_header" >&5
-+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-+else
-+ # Is the header compilable?
-+echo "$as_me:$LINENO: checking $ac_header usability" >&5
-+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+$ac_includes_default
-+#include <$ac_header>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+ (eval $ac_compile) 2>conftest.er1
-+ ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } &&
-+ { ac_try='test -z "$ac_c_werror_flag"
-+ || test ! -s conftest.err'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; } &&
-+ { ac_try='test -s conftest.$ac_objext'
-+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); }; }; then
-+ ac_header_compiler=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking $ac_header presence" >&5
-+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h. */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h. */
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+ ac_status=$?
-+ grep -v '^ *+' conftest.er1 >conftest.err
-+ rm -f conftest.er1
-+ cat conftest.err >&5
-+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+ (exit $ac_status); } >/dev/null; then
-+ if test -s conftest.err; then
-+ ac_cpp_err=$ac_c_preproc_warn_flag
-+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+ else
-+ ac_cpp_err=
-+ fi
-+else
-+ ac_cpp_err=yes
-+fi
-+if test -z "$ac_cpp_err"; then
-+ ac_header_preproc=yes
-+else
-+ echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So? What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+ yes:no: )
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+ ac_header_preproc=yes
-+ ;;
-+ no:yes:* )
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-+ (
-+ cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists. ##
-+## ------------------------------------------ ##
-+_ASBOX
-+ ) |
-+ sed "s/^/$as_me: WARNING: /" >&2
-+ ;;
-+esac
-+echo "$as_me:$LINENO: checking for $ac_header" >&5
-+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+ echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+ eval "$as_ac_Header=\$ac_header_preproc"
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-+
-+fi
-+if test `eval echo '${'$as_ac_Header'}'` = yes; then
-+ cat >>confdefs.h <<_ACEOF
-+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-+_ACEOF
-+ hc_cv_have_sys_param_h=yes
-+else
-+ hc_cv_have_sys_param_h=no
-+fi
-+
-+done
-+
-+
- for ac_header in sys/mount.h
- do
- as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-@@ -27963,6 +28123,11 @@ cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
- $ac_includes_default
-+
-+ #if HAVE_SYS_PARAM_H
-+ #include <sys/param.h>
-+ #endif
-+
- #include <$ac_header>
- _ACEOF
- rm -f conftest.$ac_objext
---- configure.ac.orig Thu Dec 29 19:47:06 2005
-+++ configure.ac Wed Jan 25 20:05:14 2006
-@@ -280,6 +280,14 @@ case "$host_os" in
- hc_cv_is_apple=no
- ;;
-
-+ freebsd*)
-+
-+ hc_cv_is_nix=yes
-+ hc_cv_is_windows=no
-+ hc_cv_is_mingw32=no
-+ hc_cv_is_apple=no
-+ ;;
-+
- mingw*)
-
- hc_cv_is_nix=no
-@@ -450,13 +458,24 @@ AC_CHECK_HEADERS( net/route.h, [hc_cv
- #include <sys/socket.h>
- #endif
- ] )
-+
-+#------------------------------------------------------------------------------
-+# PROGRAMMING NOTE: on FreeBSD sys/param.h must be included before
-+# sys/mount.h.
-+AC_CHECK_HEADERS( sys/param.h, [hc_cv_have_sys_param_h=yes], [hc_cv_have_sys_param_h=no] )
-+AC_CHECK_HEADERS( sys/mount.h, [hc_cv_have_sys_mount_h=yes], [hc_cv_have_sys_mount_h=no],
-+[
-+ #if HAVE_SYS_PARAM_H
-+ #include <sys/param.h>
-+ #endif
-+] )
-+
- #------------------------------------------------------------------------------
-
- AC_CHECK_HEADERS( arpa/inet.h, [hc_cv_have_arpa_inet_h=yes], [hc_cv_have_arpa_inet_h=no] )
- AC_CHECK_HEADERS( linux/if_tun.h, [hc_cv_have_linux_if_tun_h=yes], [hc_cv_have_linux_if_tun_h=no] )
- AC_CHECK_HEADERS( sys/ioctl.h, [hc_cv_have_sys_ioctl_h=yes], [hc_cv_have_sys_ioctl_h=no] )
- AC_CHECK_HEADERS( sys/mman.h, [hc_cv_have_sys_mman_h=yes], [hc_cv_have_sys_mman_h=no] )
--AC_CHECK_HEADERS( sys/mount.h, [hc_cv_have_sys_mount_h=yes], [hc_cv_have_sys_mount_h=no] )
- AC_CHECK_HEADERS( sys/mtio.h, [hc_cv_have_sys_mtio_h=yes], [hc_cv_have_sys_mtio_h=no] )
- AC_CHECK_HEADERS( sys/resource.h, [hc_cv_have_sys_resource_h=yes], [hc_cv_have_sys_resource_h=no] )
- AC_CHECK_HEADERS( sys/uio.h, [hc_cv_have_sys_uio_h=yes], [hc_cv_have_sys_uio_h=no] )
---- hstdinc.h.orig Wed Dec 7 13:42:19 2005
-+++ hstdinc.h Wed Jan 25 20:05:14 2006
-@@ -102,6 +102,11 @@
- #ifdef HAVE_SYS_MMAN_H
- #include <sys/mman.h>
- #endif
-+/* PROGRAMMING NOTE: On FreeBSD, <sys/param.h> must be included before
-+ <sys/mount.h> */
-+#ifdef HAVE_SYS_PARAM_H
-+ #include <sys/param.h>
-+#endif
- #ifdef HAVE_SYS_MOUNT_H
- #include <sys/mount.h>
- #endif
diff --git a/emulators/hercules/files/patch-fbdcompile b/emulators/hercules/files/patch-fbdcompile
deleted file mode 100644
index bd9ea9f09c2f..000000000000
--- a/emulators/hercules/files/patch-fbdcompile
+++ /dev/null
@@ -1,36 +0,0 @@
-! Found by: jemalloc
---- fillfnam.c.orig Sat Dec 3 13:49:43 2005
-+++ fillfnam.c Wed Jan 25 20:05:14 2006
-@@ -4,7 +4,7 @@
-
- char *filterarray;
-
--int filter(const struct dirent *ent) {
-+int filter(struct dirent *ent) {
- if (filterarray == NULL)
- return(1);
- if (strncmp(ent->d_name, filterarray, strlen(filterarray)) == 0)
-@@ -50,7 +50,11 @@ int tab_pressed(char *cmdlinefull, int *
- strncpy(part2, cmdlinefull + i + 1, cmdoff - i - 1);
- part2[cmdoff - i - 1] = '\0';
-
-- path = (char*)malloc(strlen(part2) + 1);
-+ len = strlen(part2);
-+ /* We need at least 2+1 characters for ./\0 in else path. */
-+ if (len < 2)
-+ len = 2;
-+ path = (char*)malloc(len + 1);
- filename = part2;
- /* is it pure filename or is there whole path ? */
- tmp = strrchr(part2, '/');
---- hercifc.h.orig Thu Dec 1 17:37:25 2005
-+++ hercifc.h Wed Jan 25 20:05:14 2006
-@@ -88,7 +88,7 @@ typedef struct _CTLREQ
- union
- {
- struct ifreq ifreq;
--#if !defined(__APPLE__)
-+#if !defined(__APPLE__) && !defined(__FreeBSD__)
- struct rtentry rtentry;
- #endif
- }
diff --git a/emulators/hercules/files/patch-hercifc.h b/emulators/hercules/files/patch-hercifc.h
new file mode 100644
index 000000000000..dc507f58308a
--- /dev/null
+++ b/emulators/hercules/files/patch-hercifc.h
@@ -0,0 +1,14 @@
+--- hercifc.h.orig Fri Feb 24 18:36:35 2006
++++ hercifc.h Fri Feb 24 18:39:41 2006
+@@ -77,7 +77,11 @@
+ // --------------------------------------------------------------------
+
+ #define HERCIFC_CMD "hercifc" // Interface config command
++#if defined(__FreeBSD__)
++#define HERCTUN_DEV "/dev/tun" // Default TUN control dev
++#else
+ #define HERCTUN_DEV "/dev/net/tun" // Default TUN/TAP char dev
++#endif
+
+ typedef struct _CTLREQ
+ {
diff --git a/emulators/hercules/files/patch-herconf b/emulators/hercules/files/patch-herconf
deleted file mode 100644
index 2dc561d4b871..000000000000
--- a/emulators/hercules/files/patch-herconf
+++ /dev/null
@@ -1,36 +0,0 @@
---- hostopts.h.orig Wed Nov 30 23:46:13 2005
-+++ hostopts.h Wed Jan 25 20:05:14 2006
-@@ -199,6 +199,33 @@
- #define HOW_TO_IMPLEMENT_SH_COMMAND USE_ANSI_SYSTEM_API_FOR_SH_COMMAND
- #define SET_CONSOLE_CURSOR_SHAPE_METHOD CURSOR_SHAPE_NOT_SUPPORTED
-
-+
-+/*-------------------------------------------------------------------*/
-+/* Hard-coded FreeBSD-specific features and options... */
-+/*-------------------------------------------------------------------*/
-+#elif defined(__FreeBSD__) /* "FreeBSD" options */
-+
-+#define DLL_IMPORT extern
-+#define DLL_EXPORT
-+
-+#undef OPTION_SCSI_ERASE_TAPE /* (NOT supported) */
-+#undef OPTION_SCSI_ERASE_GAP /* (NOT supported) */
-+
-+#undef OPTION_TUNTAP_SETMACADDR /* TUNTAP_SetMACAddr broken */
-+#undef OPTION_TUNTAP_DELADD_ROUTES /* Del/Add Routes broken */
-+
-+#define MAX_DEVICE_THREADS 0 /* (0 == unlimited) */
-+#define MIXEDCASE_FILENAMES_ARE_UNIQUE /* ("Foo" and "fOo" unique) */
-+
-+#define DEFAULT_HERCPRIO 0
-+#define DEFAULT_TOD_PRIO -20
-+#define DEFAULT_CPU_PRIO 15
-+#define DEFAULT_DEV_PRIO 8
-+
-+#define HOW_TO_IMPLEMENT_SH_COMMAND USE_ANSI_SYSTEM_API_FOR_SH_COMMAND
-+#define SET_CONSOLE_CURSOR_SHAPE_METHOD CURSOR_SHAPE_NOT_SUPPORTED
-+
-+
- /*-------------------------------------------------------------------*/
- /* Hard-coded OTHER host-specific features and options... */
- /*-------------------------------------------------------------------*/
diff --git a/emulators/hercules/files/patch-tuntap b/emulators/hercules/files/patch-tuntap
index 7bee1c3e1f54..15969cd93681 100644
--- a/emulators/hercules/files/patch-tuntap
+++ b/emulators/hercules/files/patch-tuntap
@@ -21,17 +21,6 @@
PLCSSTDFRM pReply;
pPort = &pLCSDEV->pLCSBLK->Port[pLCSDEV->bPort];
---- hercifc.h.orig Thu Dec 1 17:37:25 2005
-+++ hercifc.h Wed Jan 25 20:05:14 2006
-@@ -77,7 +77,7 @@
- // --------------------------------------------------------------------
-
- #define HERCIFC_CMD "hercifc" // Interface config command
--#define HERCTUN_DEV "/dev/net/tun" // Default TUN/TAP char dev
-+#define HERCTUN_DEV "/dev/tun" // Default TUN/TAP char dev
-
- typedef struct _CTLREQ
- {
--- tuntap.c.orig Sun Dec 11 16:44:16 2005
+++ tuntap.c Wed Jan 25 20:05:14 2006
@@ -159,6 +159,25 @@ int TUNTAP_CreateInterface(
diff --git a/emulators/hercules/files/patch-tuntap-sin_len b/emulators/hercules/files/patch-tuntap-sin_len
new file mode 100644
index 000000000000..cb4be7f86241
--- /dev/null
+++ b/emulators/hercules/files/patch-tuntap-sin_len
@@ -0,0 +1,90 @@
+--- ./tuntap.c.orig Sun Apr 9 12:00:35 2006
++++ ./tuntap.c Sun Apr 9 12:01:35 2006
+@@ -230,6 +230,7 @@ int TUNTAP_SetIPAddr( char*
+ sin = (struct sockaddr_in*)&ifreq.ifr_addr;
+
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetDevName || !*pszNetDevName )
+ {
+@@ -266,6 +267,7 @@ int TUNTAP_SetDestAddr( char
+ sin = (struct sockaddr_in*)&ifreq.ifr_addr;
+
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetDevName || !*pszNetDevName )
+ {
+@@ -302,6 +304,7 @@ int TUNTAP_SetNetMask( char*
+ sin = (struct sockaddr_in*)&ifreq.ifr_netmask;
+
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetDevName || !*pszNetDevName )
+ {
+@@ -339,6 +342,7 @@ int TUNTAP_SetMTU( char* p
+ sin = (struct sockaddr_in*)&ifreq.ifr_addr;
+
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetDevName || !*pszNetDevName )
+ {
+@@ -424,6 +428,7 @@ int TUNTAP_SetFlags ( char*
+ sin = (struct sockaddr_in*)&ifreq.ifr_addr;
+
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetDevName || !*pszNetDevName )
+ {
+@@ -465,6 +470,7 @@ int TUNTAP_AddRoute( char* p
+
+ sin = (struct sockaddr_in*)&rtentry.rt_dst;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszDestAddr ||
+ !inet_aton( pszDestAddr, &sin->sin_addr ) )
+@@ -476,6 +482,7 @@ int TUNTAP_AddRoute( char* p
+
+ sin = (struct sockaddr_in*)&rtentry.rt_genmask;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetMask ||
+ !inet_aton( pszNetMask, &sin->sin_addr ) )
+@@ -489,6 +496,7 @@ int TUNTAP_AddRoute( char* p
+ {
+ sin = (struct sockaddr_in*)&rtentry.rt_gateway;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !inet_aton( pszGWAddr, &sin->sin_addr ) )
+ {
+@@ -530,6 +538,7 @@ int TUNTAP_DelRoute( char* p
+
+ sin = (struct sockaddr_in*)&rtentry.rt_dst;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszDestAddr ||
+ !inet_aton( pszDestAddr, &sin->sin_addr ) )
+@@ -541,6 +550,7 @@ int TUNTAP_DelRoute( char* p
+
+ sin = (struct sockaddr_in*)&rtentry.rt_genmask;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszNetMask ||
+ !inet_aton( pszNetMask, &sin->sin_addr ) )
+@@ -552,6 +562,7 @@ int TUNTAP_DelRoute( char* p
+
+ sin = (struct sockaddr_in*)&rtentry.rt_gateway;
+ sin->sin_family = AF_INET;
++ sin->sin_len = sizeof( struct sockaddr_in );
+
+ if( !pszGWAddr ||
+ !inet_aton( pszGWAddr, &sin->sin_addr ) )
diff --git a/emulators/hercules/pkg-plist b/emulators/hercules/pkg-plist
index 4a6ef99e71c4..84a195522a82 100644
--- a/emulators/hercules/pkg-plist
+++ b/emulators/hercules/pkg-plist
@@ -75,5 +75,5 @@ lib/hercules/hdtqeth.so
%%DATADIR%%/tapeconv.jcl
%%DATADIR%%/zzsacard.bin
@dirrm share/hercules
-share/locale/de/LC_MESSAGES/hercules.mo
-share/locale/nl/LC_MESSAGES/hercules.mo
+%%GETTEXT%%share/locale/de/LC_MESSAGES/hercules.mo
+%%GETTEXT%%share/locale/nl/LC_MESSAGES/hercules.mo