head	1.14;
access;
symbols
	pkgsrc-2023Q3:1.13.0.10
	pkgsrc-2023Q3-base:1.13
	pkgsrc-2023Q2:1.13.0.8
	pkgsrc-2023Q2-base:1.13
	pkgsrc-2023Q1:1.13.0.6
	pkgsrc-2023Q1-base:1.13
	pkgsrc-2022Q4:1.13.0.4
	pkgsrc-2022Q4-base:1.13
	pkgsrc-2022Q3:1.13.0.2
	pkgsrc-2022Q3-base:1.13
	pkgsrc-2022Q2:1.12.0.6
	pkgsrc-2022Q2-base:1.12
	pkgsrc-2022Q1:1.12.0.4
	pkgsrc-2022Q1-base:1.12
	pkgsrc-2021Q4:1.12.0.2
	pkgsrc-2021Q4-base:1.12
	pkgsrc-2021Q3:1.11.0.4
	pkgsrc-2021Q3-base:1.11
	pkgsrc-2021Q2:1.11.0.2
	pkgsrc-2021Q2-base:1.11
	pkgsrc-2021Q1:1.10.0.6
	pkgsrc-2021Q1-base:1.10
	pkgsrc-2020Q4:1.10.0.4
	pkgsrc-2020Q4-base:1.10
	pkgsrc-2020Q3:1.10.0.2
	pkgsrc-2020Q3-base:1.10
	pkgsrc-2020Q2:1.9.0.6
	pkgsrc-2020Q2-base:1.9
	pkgsrc-2020Q1:1.9.0.2
	pkgsrc-2020Q1-base:1.9
	pkgsrc-2019Q4:1.9.0.4
	pkgsrc-2019Q4-base:1.9
	pkgsrc-2019Q3:1.8.0.2
	pkgsrc-2019Q3-base:1.8
	pkgsrc-2019Q2:1.7.0.2
	pkgsrc-2019Q2-base:1.7
	pkgsrc-2019Q1:1.6.0.6
	pkgsrc-2019Q1-base:1.6
	pkgsrc-2018Q4:1.6.0.4
	pkgsrc-2018Q4-base:1.6
	pkgsrc-2018Q3:1.6.0.2
	pkgsrc-2018Q3-base:1.6
	pkgsrc-2018Q2:1.5.0.18
	pkgsrc-2018Q2-base:1.5
	pkgsrc-2018Q1:1.5.0.16
	pkgsrc-2018Q1-base:1.5
	pkgsrc-2017Q4:1.5.0.14
	pkgsrc-2017Q4-base:1.5
	pkgsrc-2017Q3:1.5.0.12
	pkgsrc-2017Q3-base:1.5
	pkgsrc-2017Q2:1.5.0.8
	pkgsrc-2017Q2-base:1.5
	pkgsrc-2017Q1:1.5.0.6
	pkgsrc-2017Q1-base:1.5
	pkgsrc-2016Q4:1.5.0.4
	pkgsrc-2016Q4-base:1.5
	pkgsrc-2016Q3:1.5.0.2
	pkgsrc-2016Q3-base:1.5
	pkgsrc-2016Q2:1.4.0.10
	pkgsrc-2016Q2-base:1.4
	pkgsrc-2016Q1:1.4.0.8
	pkgsrc-2016Q1-base:1.4
	pkgsrc-2015Q4:1.4.0.6
	pkgsrc-2015Q4-base:1.4
	pkgsrc-2015Q3:1.4.0.4
	pkgsrc-2015Q3-base:1.4
	pkgsrc-2015Q2:1.4.0.2
	pkgsrc-2015Q2-base:1.4
	pkgsrc-2015Q1:1.3.0.8
	pkgsrc-2015Q1-base:1.3
	pkgsrc-2014Q4:1.3.0.6
	pkgsrc-2014Q4-base:1.3
	pkgsrc-2014Q3:1.3.0.4
	pkgsrc-2014Q3-base:1.3
	pkgsrc-2014Q2:1.3.0.2
	pkgsrc-2014Q2-base:1.3
	pkgsrc-2014Q1:1.2.0.2
	pkgsrc-2014Q1-base:1.2
	pkgsrc-2013Q4:1.1.0.2
	pkgsrc-2013Q4-base:1.1;
locks; strict;
comment	@# @;


1.14
date	2023.12.18.16.52.37;	author wiz;	state dead;
branches;
next	1.13;
commitid	g2htbV9fi8Xf5YQE;

1.13
date	2022.06.28.11.34.11;	author wiz;	state Exp;
branches;
next	1.12;
commitid	D2UoJrTHpoHEANJD;

1.12
date	2021.09.27.14.30.48;	author nia;	state Exp;
branches;
next	1.11;
commitid	ex8TceAbZ2lNoBaD;

1.11
date	2021.05.24.19.52.32;	author wiz;	state Exp;
branches;
next	1.10;
commitid	qokaiStTApGMcrUC;

1.10
date	2020.08.31.18.09.49;	author wiz;	state Exp;
branches;
next	1.9;
commitid	7zxRbfOkDOoxbfmC;

1.9
date	2019.11.03.19.04.00;	author rillig;	state Exp;
branches;
next	1.8;
commitid	puQpdVbj8afCdrJB;

1.8
date	2019.07.08.10.36.26;	author nia;	state Exp;
branches;
next	1.7;
commitid	YSUyo62YtWzHceuB;

1.7
date	2019.05.23.19.23.02;	author rillig;	state Exp;
branches;
next	1.6;
commitid	aWlQW8HYUUFCAmoB;

1.6
date	2018.08.22.09.45.20;	author wiz;	state Exp;
branches;
next	1.5;
commitid	YLub8g3ofvFGb6PA;

1.5
date	2016.07.09.06.38.25;	author wiz;	state Exp;
branches;
next	1.4;
commitid	dlqnocGpOoXV2Cdz;

1.4
date	2015.06.12.10.50.15;	author wiz;	state Exp;
branches;
next	1.3;
commitid	B4JmCfaVUbiY38py;

1.3
date	2014.05.29.23.36.42;	author wiz;	state Exp;
branches;
next	1.2;
commitid	laryHfkCalgYtuCx;

1.2
date	2014.01.09.23.55.59;	author dholland;	state Exp;
branches;
next	1.1;
commitid	M9ZGuIw3FRuE5vkx;

1.1
date	2013.12.15.02.00.07;	author dholland;	state Exp;
branches;
next	;
commitid	u8mX6UPheUHjyahx;


desc
@@


1.14
log
@ghc-bootstrap: remove

Depends on removed lang/ghc.
@
text
@# $NetBSD: Makefile,v 1.13 2022/06/28 11:34:11 wiz Exp $

DISTNAME=	ghc-6.8.3
PKGNAME=	ghc-bootstrap-6.8.3
PKGREVISION=	8
CATEGORIES=	lang
MASTER_SITES=	http://www.haskell.org/ghc/dist/6.8.3/
DISTFILES=	ghc-6.8.3-src.tar.bz2

OWNER=		dholland@@NetBSD.org
HOMEPAGE=	https://www.haskell.org/ghc/
COMMENT=	Bootstrap kit generator for the GHC Haskell compiler

#
# build defs
#

CONFLICTS+=		ghc-[0-9]*
# Disable this (at least for now) so bootstrap kits get built by autobuilds.
#NOT_FOR_BULK_PLATFORM=	*-*-*	# Package is useful only for maintainers.

MKPIE_SUPPORTED=	no

CHECK_PORTABILITY_SKIP=	distrib/prep-bin-dist-mingw

# += in a shell script, but in embedded AWK code, so it's ok.
CHECK_PORTABILITY_SKIP+=	libraries/base/cbits/ubconfc

GNU_CONFIGURE=		yes
#CONFIGURE_ARGS+=	--with-ghc=${WRKDIR}/ghc-6.4.2/ghc/compiler/ghc-inplace
CONFIGURE_ARGS+=	--with-ghc=${BUILDLINK_PREFIX.ghc}/bin/ghc
CONFIGURE_ENV+=		PerlCmd=${PERL5:Q}
#USE_TOOLS+=		gmake pkg-config perl:run
USE_TOOLS+=		gmake pkg-config perl

SUBST_CLASSES+=		prefix
SUBST_STAGE.prefix=	pre-configure
SUBST_FILES.prefix+=	mk/bootstrap.mk
SUBST_FILES.prefix+=	libraries/readline/configure
SUBST_FILES.prefix+=	libraries/readline/readline.cabal
SUBST_FILES.prefix+=	rts/package.conf.in
SUBST_VARS.prefix=	PREFIX

#
# Build system settings.
#
# 1. The ghc compiler normally splits the generated C files into small
# parts before sending them to gcc, to enable the linker to eliminate
# unused parts.  This does however not play nice with the pkgsrc
# framework, and the result is that the build takes more than 5 times
# as long than when the files are not split.  See
#    http://mail-index.netbsd.org/tech-pkg/2006/07/30/0005.html
# for a description of the problem.
# Disable file splitting until pkgsrc has been improved.
#
# 2. For the bootstrap kit, set GhcLibWays=v; this excludes p
# (profiling libs) which take time to build and are quite useless for
# bootstrapping.
#
# 3. Later GHC versions let you set INTEGER_LIBRARY=integer-simple to
# avoid depending on gmp. This is not available in 6.8.3; instead we
# have GHC build with the rather old copy of gmp it comes with. It is
# important for the bootstrap kit to not depend on the pkgsrc shared
# gmp library, since then if its major version changes you'd be stuck.
#
pre-configure:
	${ECHO} "SplitObjs=NO" > ${WRKSRC}/mk/build.mk
	${ECHO} "GhcLibWays=v" >> ${WRKSRC}/mk/build.mk
#	${ECHO} "INTEGER_LIBRARY=integer-simple" >> ${WRKSRC}/mk/build.mk

#
# Configure script hacks.
#
# Disable readline, and disable external gmp in favor of the in-tree
# copy shipped with ghc 6.8.3. The bootstrap kit should not depend on
# shared libs from pkgsrc, as if they get their major versions bumped
# you get stuck.
#
CONFIGURE_ENV+=	ac_cv_header_readline_readline_h=no \
		ac_cv_header_readline_history_h=no \
		fp_cv_ghc_has_readline=no \
		ac_cv_lib_gmp___gmpz_fdiv_qr=no

#.include "../../devel/gmp/buildlink3.mk"

#
# As an additional measure, delete the readline and gmp .so files from
# the buildlink directory.
#
post-wrapper:
	rm -f ${WRKDIR}/.buildlink/lib/libreadline.so*
	rm -f ${WRKDIR}/.buildlink/lib/libgmp.so*
	rm -f ${WRKDIR}/.buildlink/lib/libgmpxx.so*

#
# By request of Joerg link libgcc statically so the bootstrap kit
# works on a clang-only system.
#
.include "../../mk/compiler.mk"
.if !empty(PKGSRC_COMPILER:Mgcc)
LDFLAGS+=	-static-libgcc
.endif

# We need to use lang/ghc to compile, and for now at least that requires
# buildlinking the compiler.
.include "../../lang/ghc/buildlink3.mk"

# Threads are required.
.include "../../mk/pthread.buildlink3.mk"

#
# make it go
#

.include "../../mk/bsd.pkg.mk"
@


1.13
log
@*: recursive bump for perl 5.36
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2021/09/27 14:30:48 nia Exp $
@


1.12
log
@Disable MKPIE in Haskell.

Presumably there's a way to make this work, but it probably requires
changes to the bootstrap kits.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2021/05/24 19:52:32 wiz Exp $
d5 1
a5 1
PKGREVISION=	7
@


1.11
log
@*: recursive bump for perl 5.34
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2020/08/31 18:09:49 wiz Exp $
d22 2
@


1.10
log
@*: bump PKGREVISION for perl-5.32.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2019/11/03 19:04:00 rillig Exp $
d5 1
a5 1
PKGREVISION=	6
@


1.9
log
@lang: align variable assignments

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2019/07/08 10:36:26 nia Exp $
d5 1
a5 1
PKGREVISION=	5
@


1.8
log
@Follow some http->https redirects.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2019/05/23 19:23:02 rillig Exp $
d18 1
a18 1
CONFLICTS+=	ghc-[0-9]*
@


1.7
log
@all: replace SUBST_SED with the simpler SUBST_VARS

pkglint -Wall -r --only "substitution command" -F

With manual review and indentation fixes since pkglint doesn't get that
part correct in every case.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2018/08/22 09:45:20 wiz Exp $
d11 1
a11 1
HOMEPAGE=	http://www.haskell.org/ghc/
@


1.6
log
@Recursive bump for perl5-5.28.0
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2016/07/09 06:38:25 wiz Exp $
d40 1
a40 1
SUBST_SED.prefix=	-e 's,@@PREFIX@@,${PREFIX},g'
@


1.5
log
@Bump PKGREVISION for perl-5.24.0 for everything mentioning perl.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2015/06/12 10:50:15 wiz Exp $
d5 1
a5 1
PKGREVISION=	4
@


1.4
log
@Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2014/05/29 23:36:42 wiz Exp $
d5 1
a5 1
PKGREVISION=	3
@


1.3
log
@Bump for perl-5.20.0.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2014/01/09 23:55:59 dholland Exp $
d5 1
a5 1
PKGREVISION=	2
@


1.2
log
@Improve the ghc bootstrap kit.
   - use a different ghc build that installs less stuff;
   - if using gcc, link statically with libgcc so the bootstrap kit
     can be used on a clang-only system;
   - try to avoid using pkgsrc readline and gmp, and force what's left
     to link statically by denying buildlink for the .so files, so the
     bootstrap kit will still work if those libraries' major numbers
     get bumped.

PKGREVISION -> 1.

This was supposed to get into 2013q4 and should be pulled up, so that
the 2013q4 builds will provide us binary bootstrap kits built on
official build hosts.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2013/12/15 02:00:07 dholland Exp $
d5 1
a5 1
PKGREVISION=	1
@


1.1
log
@Add a ghc-bootstrap package for making ghc binary bootstrap kits.
This is a ghc 6.8.3 package based on lang/ghc.

As of ghc 7.something, the old system of bootstrapping ghc from
generated C sources has been deprecated. While in theory we could move
pkgsrc up to that point using C bootstrap kits like the one currently
used by lang/ghc, there are several reasons not to: (1) it's a dead
end; (2) there is no available infrastructure for building such kits,
as in the past it was done by hand by the package maintainer; (3)
building ghc from C sources wasn't ever really fully supported anyway
and usually requires fiddling to make it work.

For this reason, by the power invested in me as one of the few people
who actually uses ghc for something nontrivial (much as I perhaps
regret doing so)... we will switch to binary bootstrap kits now.

The bootstrap kits generated here are just installable ghc packages
under a different name. This package depends on lang/ghc and uses the
installed ghc to build another copy; then that copy becomes the
bootstrap kit. That is, the bootstrap kit is the pkgsrc package you
get by doing 'make package' in this directory.

I have a (tested and working) patch to switch lang/ghc to use a new
bootstrap kit generated here, but I am intentionally holding off on
committing it until after 2013q4 is branched. That way anyone who
wants a bootstrap kit for a platform currently supported by lang/ghc
can get one by checking out 2013q4, building ghc, and then building
ghc-bootstrap.

Note that these bootstrap kits cannot be used with the wip/ghc
package; it uses a built but not installed ghc source tree as the
bootstrap kit. You can capture one of these from here if you really
want to by doing 'make' and then tarring up work/ghc-6.8.3... I think.
I haven't tested that, and for now it won't work anyway as wip/ghc is
too many versions ahead for such a build to be supported.

Because ghc can only be built with a recent ghc, updating lang/ghc to
a recent version will require a ping/pong process with ghc and
ghc-bootstrap. This is the chief reason to have a separate
ghc-bootstrap package; it should be perfectly possible to build
lang/ghc with a lang/ghc package as the bootstrap too.
@
text
@d1 1
a1 1
# $NetBSD$
d5 1
d14 4
d31 2
a32 2
#USE_TOOLS+=		gmake perl:run
USE_TOOLS+=		gmake perl
d42 4
a45 1
# The ghc compiler normally splits the generated C files into small
d54 10
a63 4
# Also, for the bootstrap kit, at least for the time being, do a
# fast build. This should probably be tinkered with in the future
# so as to provide the smallest/fastest bootstrap kit that can
# still compile GHC.
d66 17
a82 1
	${ECHO} "BuildFlavour=quickest" >> ${WRKSRC}/mk/build.mk
d84 20
a103 3
# uses the UNDO_ constants
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/gmp/buildlink3.mk"
d105 2
d108 5
@

