summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorproff <proff@pkgsrc.org>1999-12-15 06:05:15 +0000
committerproff <proff@pkgsrc.org>1999-12-15 06:05:15 +0000
commit877d64b2d1c188a9ede2f86f8c6315912e219b3c (patch)
tree4cff2894633c1931050615408bca98cfb92ce654
parent103be4857ac08d197d1ac20d6989d112e1ed6096 (diff)
downloadpkgsrc-877d64b2d1c188a9ede2f86f8c6315912e219b3c.tar.gz
netbsd patches for GHC/Haskell.
-rw-r--r--lang/ghc/patches/patch-aa63
-rw-r--r--lang/ghc/patches/patch-ab15
-rw-r--r--lang/ghc/patches/patch-ac37
-rw-r--r--lang/ghc/patches/patch-ad22
-rw-r--r--lang/ghc/patches/patch-ae22
-rw-r--r--lang/ghc/patches/patch-af13
6 files changed, 172 insertions, 0 deletions
diff --git a/lang/ghc/patches/patch-aa b/lang/ghc/patches/patch-aa
new file mode 100644
index 00000000000..1e11a6ac943
--- /dev/null
+++ b/lang/ghc/patches/patch-aa
@@ -0,0 +1,63 @@
+$NetBSD: patch-aa,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- ghc/lib/misc/SocketPrim.lhs Wed Sep 15 09:06:26 1999
++++ ghc/lib/misc/SocketPrim.lhs Tue Dec 14 13:00:08 1999
+@@ -941,10 +941,56 @@
+
+ #endif
+
++#if netbsd_TARGET_OS || netbsd_elf_TARGET_OS
++
++data Family =
++ AF_UNSPEC -- unspecified
++ | AF_UNIX -- local to host (pipes, portals)
++ | AF_INET -- internetwork: UDP, TCP, etc.
++ | AF_IMPLINK -- arpanet imp addresses
++ | AF_PUP -- pup protocols: e.g. BSP
++ | AF_CHAOS -- mit CHAOS protocols
++ | AF_NS -- XEROX NS protocols
++ | AF_ISO -- ISO protocols
++-- | AF_OSI is the same as AF_ISO
++ | AF_ECMA -- european computer manufacturers
++ | AF_DATAKIT -- datakit protocols
++ | AF_CCITT -- CCITT protocols, X.25 etc
++ | AF_SNA -- IBM SNA
++ | AF_DECnet -- DECnet
++ | AF_DLI -- DEC Direct data link interface
++ | AF_LAT -- LAT
++ | AF_HYLINK -- NSC Hyperchannel
++ | AF_APPLETALK -- Apple Talk
++ | AF_ROUTE -- Internal Routing Protocol
++ | AF_LINK -- Link layer interface
++ | Pseudo_AF_XTP -- eXpress Transfer Protocol (no AF)
++ | AF_COIP -- connection-oriented IP, aka ST II
++ | AF_CNT -- Computer Network Technology
++ | Psuedo_AF_RTIP -- Help Identify RTIP packets
++ | AF_IPX -- Novell Internet Protocol
++ | AF_INET6 -- IPv6
++ | Pseudo_AF_PIP -- Help Identify PIP packets
++ | AF_ISDN -- Integrated Services Digital Network
++-- | AF_E164 is the same as AF_ISDN
++ | AF_NATM -- native ATM access
++ | AF_ARP -- (rev.) addr. res. prot. (RFC 826)
++ | Pseudo_AF_KEY -- Internal key-management function
++ | Pseudo_AF_HDRCMPLT -- Used by BPF to not rewrite hdrs in iface output
++ | AF_MAX
++ deriving (Eq, Ord, Ix, Show)
++
++packFamily = index (AF_UNSPEC, AF_MAX)
++unpackFamily family = (range (AF_UNSPEC, AF_MAX))!!family
++
++#endif
++
++
+ -- Alpha running OSF or a SPARC with SunOS, rather than Solaris.
+
+ #if osf1_TARGET_OS || osf3_TARGET_OS || sunos4_TARGET_OS || hpux_TARGET_OS || \
+- aix_TARGET_OS || freebsd2_TARGET_OS || freebsd3_TARGET_OS
++ aix_TARGET_OS || freebsd2_TARGET_OS || freebsd3_TARGET_OS || \
++ netbsd_TARGET_OS || netbsd_elf_TARGET_OS
+ data SocketType =
+ Stream
+ | Datagram
+diff -u -r old/fptools/ghc/rts/MBlock.c work.i386/fptools/ghc/rts/MBlock.c
diff --git a/lang/ghc/patches/patch-ab b/lang/ghc/patches/patch-ab
new file mode 100644
index 00000000000..ccb354b74ef
--- /dev/null
+++ b/lang/ghc/patches/patch-ab
@@ -0,0 +1,15 @@
+$NetBSD: patch-ab,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- ghc/rts/MBlock.c Wed Sep 15 09:06:54 1999
++++ ghc/rts/MBlock.c Tue Dec 14 10:27:15 1999
+@@ -47,6 +47,10 @@
+ */
+ #define ASK_FOR_MEM_AT 0x50000000
+
++#elif netbsd_TARGET_OS
++/* NetBSD i386 shared libs are at 0x40000000
++ */
++#define ASK_FOR_MEM_AT 0x50000000
+ #elif linux_TARGET_OS
+ /* Any ideas?
+ */
diff --git a/lang/ghc/patches/patch-ac b/lang/ghc/patches/patch-ac
new file mode 100644
index 00000000000..e860375bced
--- /dev/null
+++ b/lang/ghc/patches/patch-ac
@@ -0,0 +1,37 @@
+$NetBSD: patch-ac,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- ghc/driver/ghc-asm.lprl Wed Sep 15 09:05:45 1999
++++ ghc/driver/ghc-asm.lprl Tue Dec 14 22:09:04 1999
+@@ -104,7 +104,7 @@
+ $T_HDR_direct = "\t.SPACE \$TEXT\$\n\t.SUBSPA \$CODE\$\n\t\.align 4\n";
+
+ #--------------------------------------------------------#
+- } elsif ( $TargetPlatform =~ /^i386-.*-(linuxaout|freebsd2|nextstep3|cygwin32|mingw32)$/ ) {
++ } elsif ( $TargetPlatform =~ /^i386-.*-(linuxaout|freebsd2|netbsd|nextstep3|cygwin32|mingw32)$/ ) {
+ # NeXT added but not tested. CaS
+
+ $T_STABBY = 1; # 1 iff .stab things (usually if a.out format)
+@@ -135,12 +135,12 @@
+ $T_HDR_direct = "\.text\n\t\.align 2,0x90\n";
+
+ #--------------------------------------------------------#
+- } elsif ( $TargetPlatform =~ /^i386-.*-(solaris2|linux|freebsd3)$/ ) {
++ } elsif ( $TargetPlatform =~ /^i386-.*-(solaris2|linux|freebsd3|netbsd_elf)$/ ) {
+
+ $T_STABBY = 0; # 1 iff .stab things (usually if a.out format)
+ $T_US = ''; # _ if symbols have an underscore on the front
+ $T_PRE_APP = # regexp that says what comes before APP/NO_APP
+- ($TargetPlatform =~ /-(linux|freebsd3)$/) ? '#' : '/' ;
++ ($TargetPlatform =~ /-(linux|freebsd3|netbsd_elf)$/) ? '#' : '/' ;
+ $T_CONST_LBL = '^\.LC(\d+):$'; # regexp for what such a lbl looks like
+ $T_POST_LBL = ':';
+ $T_X86_PRE_LLBL_PAT = '\.L';
+@@ -150,7 +150,7 @@
+ $T_MOVE_DIRVS = '^(\s*(\.(p2)?align\s+\d+(,0x90)?|\.globl\s+\S+|\.text|\.data|\.section\s+.*|\.type\s+.*|\.Lfe.*\n\t\.size\s+.*|\.size\s+.*|\.ident.*)\n)';
+ $T_COPY_DIRVS = '\.(globl)';
+
+- if ( $TargetPlatform =~ /freebsd3/ ) {
++ if ( $TargetPlatform =~ /freebsd3|netbsd_elf/ ) {
+ $T_hsc_cc_PAT = '\.ascii.*\)(hsc|cc) (.*)\\\\11"\n\t\.ascii\s+"(.*)\\\\0"';
+ } else {
+ $T_hsc_cc_PAT = '\.string.*\)(hsc|cc) (.*)\\\\t(.*)"';
diff --git a/lang/ghc/patches/patch-ad b/lang/ghc/patches/patch-ad
new file mode 100644
index 00000000000..38590887e4b
--- /dev/null
+++ b/lang/ghc/patches/patch-ad
@@ -0,0 +1,22 @@
+$NetBSD: patch-ad,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- /p/lang/ghc/old/fptools/configure Wed Sep 15 09:13:41 1999
++++ configure Wed Dec 15 16:37:27 1999
+@@ -786,7 +786,16 @@
+ HostPlatform_CPP='i386_unknown_netbsd'
+ HostArch_CPP='i386'
+ HostVendor_CPP='unknown'
+- HostOS_CPP='netbsd'
++ if test "$HASKELL_OBJ_FMT" = "a.out"; then
++ HostOS_CPP='netbsd'
++ else
++ if test "$HASKELL_OBJ_FMT" = "ELF"; then
++ HostOS_CPP='netbsd_elf'
++ else
++ echo bad \$HASKELL_OBJ_FMT = "$HASKELL_OBJ_FMT"
++ exit 1
++ fi
++ fi
+ ;;
+ i[3456]86-*-solaris2*)
+ HostPlatform=i386-unknown-solaris2 # hack again
diff --git a/lang/ghc/patches/patch-ae b/lang/ghc/patches/patch-ae
new file mode 100644
index 00000000000..47b6589481b
--- /dev/null
+++ b/lang/ghc/patches/patch-ae
@@ -0,0 +1,22 @@
+$NetBSD: patch-ae,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- /p/lang/ghc/old/fptools/configure.in Wed Sep 15 09:03:35 1999
++++ configure.in Wed Dec 15 16:37:23 1999
+@@ -138,7 +138,16 @@
+ HostPlatform_CPP='i386_unknown_netbsd'
+ HostArch_CPP='i386'
+ HostVendor_CPP='unknown'
+- HostOS_CPP='netbsd'
++ if test "$HASKELL_OBJ_FMT" = "a.out"; then
++ HostOS_CPP='netbsd'
++ else
++ if test "$HASKELL_OBJ_FMT" = "ELF"; then
++ HostOS_CPP='netbsd_elf'
++ else
++ echo bad \$HASKELL_OBJ_FMT = "$HASKELL_OBJ_FMT"
++ exit 1
++ fi
++ fi
+ ;;
+ i[[3456]]86-*-solaris2*)
+ HostPlatform=i386-unknown-solaris2 # hack again
diff --git a/lang/ghc/patches/patch-af b/lang/ghc/patches/patch-af
new file mode 100644
index 00000000000..a8b02bd3323
--- /dev/null
+++ b/lang/ghc/patches/patch-af
@@ -0,0 +1,13 @@
+$NetBSD: patch-af,v 1.1.1.1 1999/12/15 06:05:15 proff Exp $
+
+--- /p/lang/ghc/old/fptools/Makefile Wed Sep 15 09:03:33 1999
++++ Makefile Wed Dec 15 16:04:58 1999
+@@ -15,7 +15,7 @@
+ # on whether we do `make install' or not. Having a $(ifeq ... ) would
+ # be preferable..
+ CURRENT_TARGET = $(MAKECMDGOALS)
+-SUBDIRS = $(shell if (test x$(CURRENT_TARGET) = xinstall) ; then echo $(ProjectsToInstall); else echo $(ProjectsToBuild); fi)
++SUBDIRS = $(shell if test x$(CURRENT_TARGET) = xinstall ; then echo $(ProjectsToInstall); else echo $(ProjectsToBuild); fi)
+
+ ifneq "$(Project)" ""
+ include $(shell echo $(Project) | tr A-Z a-z)/mk/config.mk