pkgsrc/lang/guile/Makefile
gutteridge df1bdf1e25 guile: fix build with GNU texinfo 6.7
GNU texinfo 6.7 fails to parse api-compound.texi because of an
unnecessary non-breaking space character (code point 160). (Whereas
GNU texinfo 6.5 succeeds there, as does the old C source version
bundled with NetBSD's userland.)

utf8 "\xA0" does not map to Unicode at ParserNonXS.pm line 1796, <FH> line 908.
Malformed UTF-8 character: \xa0 (unexpected continuation byte 0xa0, with no
preceding start byte) in pattern match (m//) at ParserNonXS.pm line 3364.
Malformed UTF-8 character (fatal) at ParserNonXS.pm line 3364.

It's simpler to just replace the byte in that source file with an ASCII
space character than attempt to fix the texinfo parsing code (and we're
in a freeze right now, too). This should fix the bulk build failures on
SmartOS and others.
2019-12-24 01:42:53 +00:00

78 lines
2.6 KiB
Makefile

# $NetBSD: Makefile,v 1.112 2019/12/24 01:42:53 gutteridge Exp $
DISTNAME= guile-1.8.8
PKGREVISION= 10
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GNU:=guile/}
MAINTAINER= gdt@NetBSD.org
HOMEPAGE= https://www.gnu.org/software/guile/
COMMENT= GNU's Ubiquitous Intelligent Language for Extension (1.8 branch)
LICENSE= gnu-lgpl-v2.1
CONFLICTS= guile14<1.4.1nb1 guile-oops-[0-9]*
GNU_CONFIGURE= YES
USE_TOOLS+= gmake makeinfo
USE_LIBTOOL= YES
PTHREAD_AUTO_VARS= YES
INFO_FILES= YES
PKGCONFIG_OVERRIDE= guile-1.8.pc.in
GUILE_PREFIX= ${PREFIX}/guile/1.8
GNU_CONFIGURE_PREFIX= ${GUILE_PREFIX}
BUILDLINK_PASSTHRU_DIRS+= ${GUILE_PREFIX}
LDFLAGS+= ${COMPILER_RPATH_FLAG}${GUILE_PREFIX}/lib
# XXX Make this conditional on the problematic systems.
# couldn't figure out how to work around an error on solaris-2.9/sparc with gcc when
# compiling ${WRKSRC}/libguile/filesys.c. The warning is that readdir64_r was missing
# a prototype.
CONFIGURE_ARGS+= --disable-error-on-warning
#CONFIGURE_ARGS+= --without-threads
TEST_DIRS= .
TEST_TARGET= check
OWN_DIRS= ${PREFIX}/share/guile/site
.include "../../mk/bsd.prefs.mk"
# scmconfig.h will be rebuilt first thing. This hack is here because
# gen-scmconfig.c includes string.h (from /usr/include) which in turn
# tries to include /usr/include/strings.h but instead the compiler picks
# up ./strings.h which tries to include scmconfig.h which doesn't exist
# yet. While not a clean fix, this seems to work around the problem.
#
#
# for info on the slib part, see
# http://lists.gnu.org/archive/html/guile-user/2006-11/msg00035.html
post-patch:
${TOUCH} ${WRKSRC}/libguile/scmconfig.h
${ECHO} "(define-module (ice-9 slib))" > ${WRKSRC}/ice-9/slib.scm
${ECHO} "(load-from-path \"slib/guile.init\")" >> ${WRKSRC}/ice-9/slib.scm
CONFIGURE_ARGS.DragonFly+= ac_cv_type_complex_double=no
.if ${OPSYS} == "Darwin"
#This define has been reported to break builds on 10.8.
#CPPFLAGS+= -Dmacosx
# Darwin does not use -rpath, so back out the patch that adds it. It
# is not clear that guile works properly if directories with modules
# are not in LTDL_LIBRARY_PATH or LD_LIBRARY_PATH. See the following
# PRs:
# http://www.NetBSD.org/cgi-bin/query-pr-single.pl?number=33665
# http://www.NetBSD.org/cgi-bin/query-pr-single.pl?number=36975
post-patch: post-patch-darwin
post-patch-darwin: .PHONY
${MV} ${WRKSRC}/guile-config/guile-config.in.orig \
${WRKSRC}/guile-config/guile-config.in
.endif
.include "../../devel/gmp/buildlink3.mk"
.include "../../devel/libltdl/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"