Mon Jan 13 11:49:36 2020 UTC ()
Bootkit for FreeBSD/i386 is now on LOCAL_PORTS


(pho)
diff -r1.1 -r1.2 pkgsrc/lang/ghc80/Makefile
diff -r1.1 -r1.2 pkgsrc/lang/ghc80/bootstrap.mk
diff -r1.1 -r1.2 pkgsrc/lang/ghc80/buildlink3.mk
diff -r1.1 -r1.2 pkgsrc/lang/ghc80/distinfo

cvs diff -r1.1 -r1.2 pkgsrc/lang/ghc80/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/ghc80/Makefile 2020/01/03 15:24:08 1.1
+++ pkgsrc/lang/ghc80/Makefile 2020/01/13 11:49:36 1.2
@@ -1,39 +1,39 @@ @@ -1,39 +1,39 @@
1# $NetBSD: Makefile,v 1.1 2020/01/03 15:24:08 pho Exp $ 1# $NetBSD: Makefile,v 1.2 2020/01/13 11:49:36 pho Exp $
2# ----------------------------------------------------------------------------- 2# -----------------------------------------------------------------------------
3# Package metadata 3# Package metadata
4# 4#
5DISTNAME= ghc-8.0.2-src 5DISTNAME= ghc-8.0.2-src
6PKGNAME= ${DISTNAME:S/-src$//} 6PKGNAME= ${DISTNAME:S/-src$//}
7CATEGORIES= lang 7CATEGORIES= lang
8MASTER_SITES= https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/ 8MASTER_SITES= https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/
9EXTRACT_SUFX= .tar.xz 9EXTRACT_SUFX= .tar.xz
10 10
11MAINTAINER= pho@cielonegro.org 11MAINTAINER= pho@cielonegro.org
12HOMEPAGE= https://www.haskell.org/ghc/ 12HOMEPAGE= https://www.haskell.org/ghc/
13COMMENT= Compiler for the functional language Haskell - 8.0 Release Series 13COMMENT= Compiler for the functional language Haskell - 8.0 Release Series
14LICENSE= modified-bsd 14LICENSE= modified-bsd
15 15
16# TODO: We should be using the alternatives framework. 16# TODO: We should be using the alternatives framework.
17CONFLICTS+= ghc-[0-9]* 17CONFLICTS+= ghc-[0-9]*
18 18
19# GHC requires GHC to build itself. Formerly we could work around this 19# GHC requires GHC to build itself. Formerly we could work around this
20# bootstrapping problem by creating a special archive containing C 20# bootstrapping problem by creating a special archive containing C
21# sources compiled from Haskell sources, but that's no longer 21# sources compiled from Haskell sources, but that's no longer
22# possible. So we have to prepare stripped-down binaries sufficient to 22# possible. So we have to prepare stripped-down binaries sufficient to
23# bootstrap compilers for each platforms. If you want to build them 23# bootstrap compilers for each platforms. If you want to build them
24# yourself, follow instructions in BOOTSTRAP.txt and ./bootstrap.mk 24# yourself, follow instructions in BOOTSTRAP.txt and ./bootstrap.mk
25#BROKEN_EXCEPT_ON_PLATFORM+= Darwin-*-powerpc # Not available yet 25#BROKEN_EXCEPT_ON_PLATFORM+= Darwin-*-powerpc # Not available yet
26#BROKEN_EXCEPT_ON_PLATFORM+= FreeBSD-*-i386 # Not available yet 26BROKEN_EXCEPT_ON_PLATFORM+= FreeBSD-*-i386
27BROKEN_EXCEPT_ON_PLATFORM+= NetBSD-*-x86_64 27BROKEN_EXCEPT_ON_PLATFORM+= NetBSD-*-x86_64
28#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-i386 # Not available yet 28#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-i386 # Not available yet
29#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-x86_64 # Not available yet 29#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-x86_64 # Not available yet
30 30
31 31
32# ----------------------------------------------------------------------------- 32# -----------------------------------------------------------------------------
33# Distfiles 33# Distfiles
34# 34#
35DISTFILES= ${DEFAULT_DISTFILES} 35DISTFILES= ${DEFAULT_DISTFILES}
36WRKSRC= ${WRKDIR}/${PKGNAME_NOREV} 36WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
37 37
38# We don't want to extract all of the DISTFILEs. 38# We don't want to extract all of the DISTFILEs.
39EXTRACT_ONLY= ${DEFAULT_DISTFILES} 39EXTRACT_ONLY= ${DEFAULT_DISTFILES}

cvs diff -r1.1 -r1.2 pkgsrc/lang/ghc80/bootstrap.mk (expand / switch to unified diff)

--- pkgsrc/lang/ghc80/bootstrap.mk 2020/01/03 15:24:08 1.1
+++ pkgsrc/lang/ghc80/bootstrap.mk 2020/01/13 11:49:36 1.2
@@ -1,43 +1,43 @@ @@ -1,43 +1,43 @@
1# $NetBSD: bootstrap.mk,v 1.1 2020/01/03 15:24:08 pho Exp $ 1# $NetBSD: bootstrap.mk,v 1.2 2020/01/13 11:49:36 pho Exp $
2# ----------------------------------------------------------------------------- 2# -----------------------------------------------------------------------------
3# Select a bindist of bootstrapping compiler on a per-platform basis. 3# Select a bindist of bootstrapping compiler on a per-platform basis.
4# 4#
5# BOOT_ARCHIVE 5# BOOT_ARCHIVE
6# This variable is set to the name of compressed archive file of a 6# This variable is set to the name of compressed archive file of a
7# bootstrapping compiler for the current platform. 7# bootstrapping compiler for the current platform.
8# 8#
9# BOOT_VERSION 9# BOOT_VERSION
10# Version of the bootstrapping compiler to use. This can be 10# Version of the bootstrapping compiler to use. This can be
11# overriden for specific platforms. 11# overriden for specific platforms.
12# 12#
13.include "../../mk/bsd.prefs.mk" 13.include "../../mk/bsd.prefs.mk"
14 14
15# Notes on version dependencies: 15# Notes on version dependencies:
16# * GHC 8.8.1 requires 8.4 or later to bootstrap. 16# * GHC 8.8.1 requires 8.4 or later to bootstrap.
17# * GHC 8.4.4 requires 8.0 or later to bootstrap. 17# * GHC 8.4.4 requires 8.0 or later to bootstrap.
18# * GHC 8.0.2 requires 7.8 or later to bootstrap. 18# * GHC 8.0.2 requires 7.8 or later to bootstrap.
19# * GHC 7.10.3 requires 7.6 or later to bootstrap. 19# * GHC 7.10.3 requires 7.6 or later to bootstrap.
20 20
21.if !empty(MACHINE_PLATFORM:MDarwin-*-powerpc) || make(distinfo) || make (makesum) || make(mdi) 21.if !empty(MACHINE_PLATFORM:MDarwin-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
22#BOOT_VERSION:= 7.10.3 22#BOOT_VERSION:= 7.10.3
23#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-powerpc-apple-darwin.tar.xz 23#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-powerpc-apple-darwin.tar.xz
24#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS 24#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
25.endif 25.endif
26 26
27.if !empty(MACHINE_PLATFORM:MFreeBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi) 27.if !empty(MACHINE_PLATFORM:MFreeBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
28#BOOT_VERSION:= 7.10.3 28BOOT_VERSION:= 8.0.2
29#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-freebsd.tar.xz 29BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-freebsd.tar.xz
30#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS 30DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
31.endif 31.endif
32 32
33.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi) 33.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
34BOOT_VERSION:= 8.0.2 34BOOT_VERSION:= 8.0.2
35BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-netbsd.tar.xz 35BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-netbsd.tar.xz
36DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS 36DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
37.endif 37.endif
38 38
39.if !empty(MACHINE_PLATFORM:MSunOS-*-i386) || make(distinfo) || make (makesum) || make(mdi) 39.if !empty(MACHINE_PLATFORM:MSunOS-*-i386) || make(distinfo) || make (makesum) || make(mdi)
40#BOOT_VERSION:= 7.10.3 40#BOOT_VERSION:= 7.10.3
41#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-solaris2.tar.xz 41#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-i386-unknown-solaris2.tar.xz
42#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS 42#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
43.endif 43.endif
@@ -57,36 +57,26 @@ PKG_FAIL_REASON+= "internal error: unsup @@ -57,36 +57,26 @@ PKG_FAIL_REASON+= "internal error: unsup
57# built. That is, machines shared with someone or on a cloud hosting 57# built. That is, machines shared with someone or on a cloud hosting
58# service should be avoided for building bootkits. 58# service should be avoided for building bootkits.
59.for i in ${DISTFILES:M*-boot-*} 59.for i in ${DISTFILES:M*-boot-*}
60SITES.${i}?= ${MASTER_SITE_LOCAL} 60SITES.${i}?= ${MASTER_SITE_LOCAL}
61.endfor 61.endfor
62 62
63# Existence of libelf makes LeadingUnderscore being "NO", which is 63# Existence of libelf makes LeadingUnderscore being "NO", which is
64# incorrect for this platform. See ${WRKSRC}/aclocal.m4 64# incorrect for this platform. See ${WRKSRC}/aclocal.m4
65# (FP_LEADING_UNDERSCORE) 65# (FP_LEADING_UNDERSCORE)
66.if ${OPSYS} == "Darwin" 66.if ${OPSYS} == "Darwin"
67CONFLICTS+= libelf-[0-9]* 67CONFLICTS+= libelf-[0-9]*
68.endif 68.endif
69 69
70# FreeBSD < 10 surprisingly doesn't have a native iconv so we need to 
71# use pkgsrc libiconv for this OPSYS. And if a bootkit depends on 
72# pkgsrc libiconv, the "normal" build must do the same because GHC 
73# always needs to link executables with libiconv, just like libgmp 
74# when integer-gmp is used. For this reason it might be desirable to 
75# create two separate bootkits, one for < 10 and another for >= 10. 
76.if ${OPSYS} == "FreeBSD" 
77USE_BUILTIN.iconv= no 
78.endif 
79 
80# current bootstrap binary kit for SmartOS is built with ncurses5 70# current bootstrap binary kit for SmartOS is built with ncurses5
81.if !empty(MACHINE_PLATFORM:MSunOS-*) && !empty(OS_VARIANT:U:MSmartOS) 71.if !empty(MACHINE_PLATFORM:MSunOS-*) && !empty(OS_VARIANT:U:MSmartOS)
82BUILD_DEPENDS+= ncurses>=5.0:../../devel/ncurses 72BUILD_DEPENDS+= ncurses>=5.0:../../devel/ncurses
83.endif 73.endif
84 74
85 75
86# ----------------------------------------------------------------------------- 76# -----------------------------------------------------------------------------
87# The "pre-configure" hook 77# The "pre-configure" hook
88# 78#
89# Install a bootstrapping compiler directly into TOOLS_DIR so that 79# Install a bootstrapping compiler directly into TOOLS_DIR so that
90# ./configure can find it. 80# ./configure can find it.
91# 81#
92USE_TOOLS+= gmake xzcat xz gtar 82USE_TOOLS+= gmake xzcat xz gtar

cvs diff -r1.1 -r1.2 pkgsrc/lang/ghc80/buildlink3.mk (expand / switch to unified diff)

--- pkgsrc/lang/ghc80/buildlink3.mk 2020/01/03 15:24:08 1.1
+++ pkgsrc/lang/ghc80/buildlink3.mk 2020/01/13 11:49:36 1.2
@@ -1,24 +1,18 @@ @@ -1,24 +1,18 @@
1# $NetBSD: buildlink3.mk,v 1.1 2020/01/03 15:24:08 pho Exp $ 1# $NetBSD: buildlink3.mk,v 1.2 2020/01/13 11:49:36 pho Exp $
2 2
3BUILDLINK_TREE+= ghc 3BUILDLINK_TREE+= ghc
4 4
5.if !defined(GHC_BUILDLINK3_MK) 5.if !defined(GHC_BUILDLINK3_MK)
6GHC_BUILDLINK3_MK:= 6GHC_BUILDLINK3_MK:=
7 7
8BUILDLINK_API_DEPENDS.ghc+= ghc>=8.0.2 8BUILDLINK_API_DEPENDS.ghc+= ghc>=8.0.2
9BUILDLINK_ABI_DEPENDS.ghc+= ghc>=8.0.2 9BUILDLINK_ABI_DEPENDS.ghc+= ghc>=8.0.2
10BUILDLINK_PKGSRCDIR.ghc?= ../../lang/ghc80 10BUILDLINK_PKGSRCDIR.ghc?= ../../lang/ghc80
11 11
12# On FreeBSD we need pkgsrc libiconv. See bootstrap.mk for details. 
13.include "../../mk/bsd.fast.prefs.mk" 
14.if ${OPSYS} == "FreeBSD" 
15USE_BUILTIN.iconv= no 
16.endif 
17 
18.include "../../converters/libiconv/buildlink3.mk" 12.include "../../converters/libiconv/buildlink3.mk"
19.include "../../devel/libffi/buildlink3.mk" 13.include "../../devel/libffi/buildlink3.mk"
20.include "../../devel/gmp/buildlink3.mk" 14.include "../../devel/gmp/buildlink3.mk"
21.include "../../mk/curses.buildlink3.mk" 15.include "../../mk/curses.buildlink3.mk"
22.endif # GHC_BUILDLINK3_MK 16.endif # GHC_BUILDLINK3_MK
23 17
24BUILDLINK_TREE+= -ghc 18BUILDLINK_TREE+= -ghc

cvs diff -r1.1 -r1.2 pkgsrc/lang/ghc80/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/ghc80/distinfo 2020/01/03 15:24:08 1.1
+++ pkgsrc/lang/ghc80/distinfo 2020/01/13 11:49:36 1.2
@@ -1,21 +1,25 @@ @@ -1,21 +1,25 @@
1$NetBSD: distinfo,v 1.1 2020/01/03 15:24:08 pho Exp $ 1$NetBSD: distinfo,v 1.2 2020/01/13 11:49:36 pho Exp $
2 2
 3SHA1 (ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz) = 0d6ffbb87f76aa4bfa243ba590978b993b359bd0
 4RMD160 (ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz) = cdcea446b5ae76ca90cac6fb3ae85c13fed04094
 5SHA512 (ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz) = 078290c325c8e5b8d861816750d58b4289ad51ac4f39b803b670d7ece5fb46e9fd39c1859ec54770ad9cfc7e423790d0f5a0c58e5881f96b4078763a6b48c0a0
 6Size (ghc-8.0.2-boot-i386-unknown-freebsd.tar.xz) = 48217412 bytes
3SHA1 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 739ff0e666e5b3bb6e31d5c9b95ad01ab1225105 7SHA1 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 739ff0e666e5b3bb6e31d5c9b95ad01ab1225105
4RMD160 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 29f162e0547c686274eb8389c30e8a76b53a51eb 8RMD160 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 29f162e0547c686274eb8389c30e8a76b53a51eb
5SHA512 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 829ac54c9cf5031d93e994424a70093da38a612281ad2e8422a0dbd1e5beb34deecca042ae82706c97c3e4b9ab745140c796e3a6a16903cb04adfac52b8d83da 9SHA512 (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 829ac54c9cf5031d93e994424a70093da38a612281ad2e8422a0dbd1e5beb34deecca042ae82706c97c3e4b9ab745140c796e3a6a16903cb04adfac52b8d83da
6Size (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 50132904 bytes 10Size (ghc-8.0.2-boot-x86_64-unknown-netbsd.tar.xz) = 50132904 bytes
7SHA1 (ghc-8.0.2-src.tar.xz) = 0e0ae6d5ba119c10f3c7b807d35166e7c06b9b35 11SHA1 (ghc-8.0.2-src.tar.xz) = 0e0ae6d5ba119c10f3c7b807d35166e7c06b9b35
8RMD160 (ghc-8.0.2-src.tar.xz) = 56b74f65e17bcab2ff9d5b8dbced3f9694d531cc 12RMD160 (ghc-8.0.2-src.tar.xz) = 56b74f65e17bcab2ff9d5b8dbced3f9694d531cc
9SHA512 (ghc-8.0.2-src.tar.xz) = 58ea3853cd93b556ecdc4abd0be079b2621171b8491f59004ea4e036a4cba4470aaafe6591b942e0a50a64bdc47540e01fe6900212a1ef7087850112d9bfc5ef 13SHA512 (ghc-8.0.2-src.tar.xz) = 58ea3853cd93b556ecdc4abd0be079b2621171b8491f59004ea4e036a4cba4470aaafe6591b942e0a50a64bdc47540e01fe6900212a1ef7087850112d9bfc5ef
10Size (ghc-8.0.2-src.tar.xz) = 10687760 bytes 14Size (ghc-8.0.2-src.tar.xz) = 10687760 bytes
11SHA1 (patch-iserv_ghc.mk) = 6d1d79100b4a7b5d8b0c6f25318eaa8b4e20e43d 15SHA1 (patch-iserv_ghc.mk) = 6d1d79100b4a7b5d8b0c6f25318eaa8b4e20e43d
12SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00 16SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00
13SHA1 (patch-libraries_base_System_Environment.hs) = ec3dfd916593f600a397e5b594672e6d3564f042 17SHA1 (patch-libraries_base_System_Environment.hs) = ec3dfd916593f600a397e5b594672e6d3564f042
14SHA1 (patch-libraries_time_lib_Data_Time_Clock_CTimespec.hsc) = 758502590ac746990ffcc7fd08dda441ca003532 18SHA1 (patch-libraries_time_lib_Data_Time_Clock_CTimespec.hsc) = 758502590ac746990ffcc7fd08dda441ca003532
15SHA1 (patch-libraries_time_lib_Data_Time_Clock_CTimeval.hs) = 8961cbf704b29c5e06ec6a95b9a9c9d0db69760a 19SHA1 (patch-libraries_time_lib_Data_Time_Clock_CTimeval.hs) = 8961cbf704b29c5e06ec6a95b9a9c9d0db69760a
16SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab 20SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00
17SHA1 (patch-libraries_unix_System_Posix_Env_ByteString.hsc) = 3f675fc5d6bf5cc59a2d5ccffeb9ccd51521645a 21SHA1 (patch-libraries_unix_System_Posix_Env_ByteString.hsc) = 3f675fc5d6bf5cc59a2d5ccffeb9ccd51521645a
 22SHA1 (patch-libraries_unix_System_Posix_Env.hsc) = e94936c139ca15d45cac4a7feb74a601567913ab
18SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607 23SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607
19SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b 24SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b
20SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00 
21SHA1 (patch-rts_PosixSource.h) = 604608791f33245d9305dcbd6d9d5979fe162f21 25SHA1 (patch-rts_PosixSource.h) = 604608791f33245d9305dcbd6d9d5979fe162f21