pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang/ghc810



Module Name:    pkgsrc
Committed By:   jperkin
Date:           Thu Sep 30 13:23:48 UTC 2021

Modified Files:
        pkgsrc/lang/ghc810: Makefile bootstrap.mk distinfo
        pkgsrc/lang/ghc810/patches: patch-aclocal.m4 patch-configure.ac
Added Files:
        pkgsrc/lang/ghc810/patches: patch-rts_posix_GetTime.c

Log Message:
ghc810: Some fixes to SunOS build.

Switch to new 8.8.4 bootstrap that has been rebuilt after recent changes,
fix hardlink usage, and pull in upstream patch for thread CPU time.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 pkgsrc/lang/ghc810/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/ghc810/bootstrap.mk
cvs rdiff -u -r1.3 -r1.4 pkgsrc/lang/ghc810/distinfo
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/ghc810/patches/patch-aclocal.m4 \
    pkgsrc/lang/ghc810/patches/patch-configure.ac
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/ghc810/patches/patch-rts_posix_GetTime.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/ghc810/Makefile
diff -u pkgsrc/lang/ghc810/Makefile:1.7 pkgsrc/lang/ghc810/Makefile:1.8
--- pkgsrc/lang/ghc810/Makefile:1.7     Mon Sep 27 14:30:48 2021
+++ pkgsrc/lang/ghc810/Makefile Thu Sep 30 13:23:48 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.7 2021/09/27 14:30:48 nia Exp $
+# $NetBSD: Makefile,v 1.8 2021/09/30 13:23:48 jperkin Exp $
 # -----------------------------------------------------------------------------
 # Package metadata
 #
@@ -14,8 +14,6 @@ HOMEPAGE=     https://www.haskell.org/ghc/
 COMMENT=       Compiler for the functional language Haskell - 8.10 Release Series
 LICENSE=       modified-bsd
 
-MKPIE_SUPPORTED=       no
-
 UNLIMIT_RESOURCES=     datasize virtualsize
 
 # GHC requires GHC to build itself. We have to prepare stripped-down

Index: pkgsrc/lang/ghc810/bootstrap.mk
diff -u pkgsrc/lang/ghc810/bootstrap.mk:1.2 pkgsrc/lang/ghc810/bootstrap.mk:1.3
--- pkgsrc/lang/ghc810/bootstrap.mk:1.2 Sat May  1 04:43:57 2021
+++ pkgsrc/lang/ghc810/bootstrap.mk     Thu Sep 30 13:23:48 2021
@@ -1,4 +1,4 @@
-# $NetBSD: bootstrap.mk,v 1.2 2021/05/01 04:43:57 pho Exp $
+# $NetBSD: bootstrap.mk,v 1.3 2021/09/30 13:23:48 jperkin Exp $
 # -----------------------------------------------------------------------------
 # Select a bindist of bootstrapping compiler on a per-platform basis.
 #
@@ -66,12 +66,12 @@ EXTRACT_ONLY+=      netbsd-9.0-amd64-libtermi
 #DISTFILES:=   ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
 #.endif
 
-#.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-#BOOT_VERSION:=                8.4.4
-#BOOT_ARCHIVE:=                ghc-${BOOT_VERSION}-boot-x86_64-unknown-solaris2.tar.xz
-#SITES.${BOOT_ARCHIVE}=        https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
-#DISTFILES:=           ${DISTFILES} ${BOOT_ARCHIVE}
-#.endif
+.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
+BOOT_VERSION:=         8.8.4
+BOOT_ARCHIVE:=         ghc-${BOOT_VERSION}-boot-x86_64-unknown-solaris2.tar.xz
+SITES.${BOOT_ARCHIVE}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
+DISTFILES:=            ${DISTFILES} ${BOOT_ARCHIVE}
+.endif
 
 .if empty(BOOT_ARCHIVE)
 BOOT_ARCHIVE:=         ghc-${BOOT_VERSION}-boot-unknown.tar.xz

Index: pkgsrc/lang/ghc810/distinfo
diff -u pkgsrc/lang/ghc810/distinfo:1.3 pkgsrc/lang/ghc810/distinfo:1.4
--- pkgsrc/lang/ghc810/distinfo:1.3     Sat May  1 04:43:57 2021
+++ pkgsrc/lang/ghc810/distinfo Thu Sep 30 13:23:48 2021
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.3 2021/05/01 04:43:57 pho Exp $
+$NetBSD: distinfo,v 1.4 2021/09/30 13:23:48 jperkin Exp $
 
 SHA1 (ghc-8.10.4-src.tar.xz) = 41f242d2bb2509c63bedbd6751b2b142ae65ba3e
 RMD160 (ghc-8.10.4-src.tar.xz) = 9b7ab19c21229f0c565c19e851323529c4184f4b
@@ -8,12 +8,16 @@ SHA1 (ghc-8.8.4-boot-x86_64-unknown-netb
 RMD160 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 5e7011aec3f0c02ebbe274e2424a1d482e9ddd90
 SHA512 (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 3f68f15e106cfd6bd833dddc0c2c07fe3d1bae6db0f2e3680b69d18b07778e0d70be9c75285ad2d4faf0369b8b2142ce62cee6ae5ceb6aa4ca8d014525140927
 Size (ghc-8.8.4-boot-x86_64-unknown-netbsd.tar.xz) = 47574408 bytes
+SHA1 (ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz) = fcd9ed1a416532722f7dfa6e63687355745aeacd
+RMD160 (ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz) = ed0663e291b91f670af07e79b1ba229d93e78302
+SHA512 (ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz) = 39dcff330e875b504df5ac4cedd0265ee78e153fea7d16646177ce85694d8960419a332530f5ad8c5874a5b53be51a4726f2521f212d9bd42c8526a07e2309cc
+Size (ghc-8.8.4-boot-x86_64-unknown-solaris2.tar.xz) = 61518048 bytes
 SHA1 (netbsd-9.0-amd64-libterminfo.tar.gz) = db6b385b8676efc135c08b06e3dd6fd11b926999
 RMD160 (netbsd-9.0-amd64-libterminfo.tar.gz) = 5a246633c90ee85f71efcc02d8280bd0c50ab5a7
 SHA512 (netbsd-9.0-amd64-libterminfo.tar.gz) = 79288d44b84df8848afc2cdfee628cc4fd1ec0334159403ef8ba994d617bc56a7114af3031198afb5f3b8f45c0463a848099431e32bc6725042908576b6f95b8
 Size (netbsd-9.0-amd64-libterminfo.tar.gz) = 27744 bytes
-SHA1 (patch-aclocal.m4) = 16ac8899a7d87cf93a6139edba9e5222eb4c5c66
-SHA1 (patch-configure.ac) = 5d33ac8e1a9ab2f729bf5580eddfd87c9fed386a
+SHA1 (patch-aclocal.m4) = c766a72973e630ec3da84f55b107074a2b490fdb
+SHA1 (patch-configure.ac) = 52c6df8f07d83f8bc7ee3c0dd71c6a70a03213e4
 SHA1 (patch-ghc.mk) = fdcbc5b0c48b616eb96868e49681536d773eaddd
 SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f
 SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00
@@ -29,5 +33,6 @@ SHA1 (patch-libraries_unix_System_Posix_
 SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00
 SHA1 (patch-rts_StgCRun.c) = 121c7bd714725d5b14a3cbb03d81b1c769848824
 SHA1 (patch-rts_ghc.mk) = 6e3daf71fb7e656131aa2aeeb0346c651520216a
+SHA1 (patch-rts_posix_GetTime.c) = b02d26228a76cc999e1c6d60f5168d8313e44a65
 SHA1 (patch-rules_build-package-way.mk) = ec73df0bbc85e962f76a9068683879a1a1ba1815
 SHA1 (patch-rules_distdir-way-opts.mk) = a058c6428faf02ef94aab3336d2d2874f2726f4e

Index: pkgsrc/lang/ghc810/patches/patch-aclocal.m4
diff -u pkgsrc/lang/ghc810/patches/patch-aclocal.m4:1.1 pkgsrc/lang/ghc810/patches/patch-aclocal.m4:1.2
--- pkgsrc/lang/ghc810/patches/patch-aclocal.m4:1.1     Tue Feb  9 13:16:24 2021
+++ pkgsrc/lang/ghc810/patches/patch-aclocal.m4 Thu Sep 30 13:23:48 2021
@@ -1,4 +1,4 @@
-$NetBSD: patch-aclocal.m4,v 1.1 2021/02/09 13:16:24 ryoon Exp $
+$NetBSD: patch-aclocal.m4,v 1.2 2021/09/30 13:23:48 jperkin Exp $
 
 Hunk #1:
   Remove _AC_PROG_CC_C99 macro that is removed in autoconf-2.71
@@ -11,9 +11,9 @@ Hunk #3:
   Canonicalize OS name netbsd* to "netbsd":
   https://gitlab.haskell.org/ghc/ghc/merge_requests/2496
 
---- aclocal.m4.orig    2020-07-08 16:43:03.000000000 +0000
+--- aclocal.m4.orig    2021-01-25 19:33:20.000000000 +0000
 +++ aclocal.m4
-@@ -611,17 +611,6 @@ AC_DEFUN([FP_SET_CFLAGS_C99],
+@@ -651,17 +651,6 @@ AC_DEFUN([FP_SET_CFLAGS_C99],
      CC="$$1"
      CFLAGS="$$2"
      CPPFLAGS="$$3"
@@ -31,7 +31,7 @@ Hunk #3:
      dnl restore saved state
      FP_COPY_SHELLVAR([fp_save_CC],[CC])
      FP_COPY_SHELLVAR([fp_save_CFLAGS],[CFLAGS])
-@@ -661,7 +650,7 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
+@@ -701,7 +690,7 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
      x86_64-unknown-solaris2)
          $2="$$2 -m64"
          $3="$$3 -m64"
@@ -40,7 +40,16 @@ Hunk #3:
          $5="$$5 -m64"
          ;;
      alpha-*)
-@@ -2047,6 +2036,9 @@ AC_DEFUN([GHC_CONVERT_OS],[
+@@ -1360,7 +1349,7 @@ AC_DEFUN([FP_GCC_VERSION], [
+     AC_MSG_ERROR([C compiler is required])
+   fi
+ 
+-  if $CC --version | grep --quiet gcc; then
++  if $CC --version | grep gcc >/dev/null; then
+     AC_CACHE_CHECK([version of gcc], [fp_cv_gcc_version],
+     [
+         # Be sure only to look at the first occurrence of the "version " string;
+@@ -2106,6 +2095,9 @@ AC_DEFUN([GHC_CONVERT_OS],[
        openbsd*)
          $3="openbsd"
          ;;
Index: pkgsrc/lang/ghc810/patches/patch-configure.ac
diff -u pkgsrc/lang/ghc810/patches/patch-configure.ac:1.1 pkgsrc/lang/ghc810/patches/patch-configure.ac:1.2
--- pkgsrc/lang/ghc810/patches/patch-configure.ac:1.1   Tue Feb  9 13:16:24 2021
+++ pkgsrc/lang/ghc810/patches/patch-configure.ac       Thu Sep 30 13:23:48 2021
@@ -1,10 +1,27 @@
-$NetBSD: patch-configure.ac,v 1.1 2021/02/09 13:16:24 ryoon Exp $
+$NetBSD: patch-configure.ac,v 1.2 2021/09/30 13:23:48 jperkin Exp $
 
 Don't use non-portable operator ==:
 https://gitlab.haskell.org/ghc/ghc/merge_requests/2497
 
 --- configure.ac.orig  2021-02-04 05:28:14.000000000 +0000
 +++ configure.ac
+@@ -723,11 +723,11 @@ dnl ------------------------------------
+ dnl ** Copy the files from the "fs" utility into the right folders.
+ dnl --------------------------------------------------------------
+ AC_MSG_NOTICE([Creating links for in-tree file handling routines.])
+-ln -f utils/fs/fs.* utils/lndir/
+-ln -f utils/fs/fs.* utils/unlit/
+-ln -f utils/fs/fs.* rts/
+-ln -f utils/fs/fs.h libraries/base/include/
+-ln -f utils/fs/fs.c libraries/base/cbits/
++cp -p utils/fs/fs.* utils/lndir/
++cp -p utils/fs/fs.* utils/unlit/
++cp -p utils/fs/fs.* rts/
++cp -p utils/fs/fs.h libraries/base/include/
++cp -p utils/fs/fs.c libraries/base/cbits/
+ AC_MSG_NOTICE([Routines in place. Packages can now be build normally.])
+ 
+ dnl --------------------------------------------------------------
 @@ -848,7 +848,7 @@ if test "x$EnableDtrace" = "xyes"; then
    if test -n "$DtraceCmd"; then
      if test "x$TargetOS_CPP-$TargetVendor_CPP" = "xdarwin-apple" \

Added files:

Index: pkgsrc/lang/ghc810/patches/patch-rts_posix_GetTime.c
diff -u /dev/null pkgsrc/lang/ghc810/patches/patch-rts_posix_GetTime.c:1.1
--- /dev/null   Thu Sep 30 13:23:48 2021
+++ pkgsrc/lang/ghc810/patches/patch-rts_posix_GetTime.c        Thu Sep 30 13:23:48 2021
@@ -0,0 +1,30 @@
+$NetBSD: patch-rts_posix_GetTime.c,v 1.1 2021/09/30 13:23:48 jperkin Exp $
+
+Backport SunOS fix from trunk.
+
+--- rts/posix/GetTime.c.orig   2020-12-04 20:04:01.000000000 +0000
++++ rts/posix/GetTime.c
+@@ -32,6 +32,10 @@
+ #include <mach/mach_port.h>
+ #endif
+ 
++#if defined(solaris2_HOST_OS)
++#include <sys/time.h>
++#endif
++
+ #if defined(HAVE_GETTIMEOFDAY) && defined(HAVE_GETRUSAGE)
+ // we'll implement getProcessCPUTime() and getProcessElapsedTime()
+ // separately, using getrusage() and gettimeofday() respectively
+@@ -81,6 +85,12 @@ Time getCurrentThreadCPUTime(void)
+         sysErrorBelch("getThreadCPUTime");
+         stg_exit(EXIT_FAILURE);
+     }
++#elif defined(solaris2_HOST_OS)
++    // On OpenSolaris derivatives, the constant CLOCK_THREAD_CPUTIME_ID is
++    // defined in a system header but it isn't actually usable. clock_gettime(2)
++    // always returns EINVAL. Use solaris-specific gethrvtime(3) as an
++    // alternative.
++    return NSToTime(gethrvtime());
+ #elif defined(HAVE_CLOCK_GETTIME)        &&  \
+        defined(CLOCK_PROCESS_CPUTIME_ID) &&  \
+        defined(HAVE_SYSCONF)



Home | Main Index | Thread Index | Old Index