diff --git a/lang/guile2/Makefile b/lang/guile2/Makefile index 7236fa11e2c1..37694221837c 100644 --- a/lang/guile2/Makefile +++ b/lang/guile2/Makefile @@ -1,67 +1,67 @@ PORTNAME= guile DISTVERSION= 2.2.7 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= lang scheme MASTER_SITES= GNU PKGNAMESUFFIX= 2 MAINTAINER= bofh@FreeBSD.org COMMENT= GNU Ubiquitous Intelligent Language for Extension WWW= https://www.gnu.org/software/guile/ LICENSE= GPLv3 LGPL3 LICENSE_COMB= multi LIB_DEPENDS= libgmp.so:math/gmp \ libltdl.so:devel/libltdl \ libunistring.so:devel/libunistring \ libffi.so:devel/libffi RUN_DEPENDS= guile-aclocal>=3:lang/guile-aclocal USES= guile:${PORTVERSION:R},env \ charsetfix compiler:c11 cpe gmake iconv libtool localbase \ makeinfo ncurses pathfix pkgconfig readline tar:lz CPE_VENDOR= gnu USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --program-suffix=-${GUILE_VER} # eliminate some pointless configure warnings/errors CONFIGURE_ENV+= gl_cv_func_working_mktime=yes \ ac_cv_header_sys_timeb_h=0 MAKE_JOBS_UNSAFE= yes INSTALL_TARGET= install-strip INFO= guile r5rs INFO_PATH= ${GUILE_INFO_PATH} OPTIONS_DEFINE= NLS THREADS OPTIONS_DEFAULT=THREADS OPTIONS_SUB= yes NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls THREADS_LIB_DEPENDS= libgc-threaded.so:devel/boehm-gc-threaded THREADS_LIB_DEPENDS_OFF=libgc.so:devel/boehm-gc THREADS_CONFIGURE_ON= --with-bdw-gc=bdw-gc-threaded THREADS_CONFIGURE_OFF= --with-bdw-gc=bdw-gc THREADS_CONFIGURE_WITH= threads post-patch: @${RM} -r ${WRKSRC}/prebuilt/32-bit-big-endian # DO NOT try and add rules here to strip .go files, no matter how loudly # testport / stage-qa shouts at you about it, because .go files (which are # compiled bytecode) are not intended to be stripped and doing so causes # breakage at run time. post-install: for p in guile guild guile-tools guile-config guile-snarf; do \ ${LN} -s $${p}-${GUILE_VER} ${STAGEDIR}${PREFIX}/bin/$${p}${GUILE_SFX}; \ done ${MV} ${STAGEDIR}${PREFIX}/man/man1/guile-${GUILE_VER}.1 \ ${STAGEDIR}${PREFIX}/man/man1/guile${GUILE_SFX}.1 .include diff --git a/lang/guile2/files/patch-libguile_gen-scmconfig.c b/lang/guile2/files/patch-libguile_gen-scmconfig.c index db1dd3fc9113..b72e32681a5d 100644 --- a/lang/guile2/files/patch-libguile_gen-scmconfig.c +++ b/lang/guile2/files/patch-libguile_gen-scmconfig.c @@ -1,21 +1,21 @@ --- libguile/gen-scmconfig.c.orig 2016-06-17 09:37:10 UTC +++ libguile/gen-scmconfig.c @@ -138,6 +138,7 @@ #include +#define _ANSI_SOURCE #include #include @@ -382,6 +383,10 @@ main (int argc, char *argv[]) pf ("typedef int scm_t_off;\n"); pf ("#define SCM_T_OFF_MAX INT_MAX\n"); pf ("#define SCM_T_OFF_MIN INT_MIN\n"); -+#elif SIZEOF_OFF_T == SIZEOF_LONG_LONG ++#elif SIZEOF_OFF_T == SIZEOF_LONG_LONG && SIZEOF_OFF_T != SIZEOF_LONG + pf ("typedef long long int scm_t_off;\n"); + pf ("#define SCM_T_OFF_MAX LLONG_MAX\n"); + pf ("#define SCM_T_OFF_MIN LLONG_MIN\n"); #else pf ("typedef long int scm_t_off;\n"); pf ("#define SCM_T_OFF_MAX LONG_MAX\n"); diff --git a/lang/guile3/Makefile b/lang/guile3/Makefile index b1ec1c837217..d2021c03c8bd 100644 --- a/lang/guile3/Makefile +++ b/lang/guile3/Makefile @@ -1,100 +1,101 @@ PORTNAME?= guile PORTVERSION= 3.0.9 +PORTREVISION= 1 CATEGORIES= lang scheme MASTER_SITES= GNU PKGNAMESUFFIX?= 3 MAINTAINER= bofh@FreeBSD.org COMMENT= GNU Ubiquitous Intelligent Language for Extension WWW= https://www.gnu.org/software/guile/ LICENSE= GPLv3 LGPL3 LICENSE_COMB= multi USES= tar:lz # The -aclocal slave port includes this file to get the version, # distinfo, etc., but needs none of the definitions. So almost all # of the file is inside this .if .if empty(NO_BUILD) LIB_DEPENDS= libunistring.so:devel/libunistring \ libffi.so:devel/libffi # the aclocal/guile.m4 from this version is shared with guile2, # so it's hived off into a separate port to avoid a conflict. RUN_DEPENDS= guile-aclocal>=3:lang/guile-aclocal USES+= guile:${PORTVERSION:R},env \ charsetfix compiler:c11 cpe gmake iconv libtool \ makeinfo pathfix pkgconfig readline localbase CPE_VENDOR= gnu USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --program-suffix=-${GUILE_VER} \ --enable-lto=no # LTO is unconditionally off here because it fails to build with llvm, # fails to build even with gcc on some arches (reported for armv7 in # particular), and making it conditional on gcc/arch is trickier than # is strictly necessary. LTO_UNSAFE stops the framework from trying to # enable it for us if the user asks. Don't re-enable it unless you # tested build+run on more than just amd64/arm46. LTO_UNSAFE= yes # eliminate some pointless configure warnings/errors CONFIGURE_ENV+= gl_cv_func_working_mktime=yes \ ac_cv_header_sys_timeb_h=0 MAKE_JOBS_UNSAFE= yes INSTALL_TARGET= install-strip INFO= guile r5rs INFO_PATH= ${GUILE_INFO_PATH} OPTIONS_DEFINE= NLS THREADS MINIGMP OPTIONS_DEFAULT=THREADS OPTIONS_SUB= yes MINIGMP_DESC= Use embedded mini-gmp rather than external libgmp MINIGMP_LIB_DEPENDS_OFF= libgmp.so:math/gmp MINIGMP_CONFIGURE_ENABLE= mini-gmp NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls THREADS_LIB_DEPENDS= libgc-threaded.so:devel/boehm-gc-threaded THREADS_LIB_DEPENDS_OFF=libgc.so:devel/boehm-gc THREADS_CONFIGURE_ON= --with-bdw-gc=bdw-gc-threaded THREADS_CONFIGURE_OFF= --with-bdw-gc=bdw-gc THREADS_CONFIGURE_WITH= threads # Upstream bugfixes: these aren't optional because the release version # has a broken (spawn*) function, which breaks guile-config, which # breaks builds of some dependent ports. EXTRA_PATCHES= ${PATCHDIR}/extra-patch-upstream-fixes.patch # The prebuilt bytecode files are reported not to work on powerpc. post-patch: @${RM} -r ${WRKSRC}/prebuilt/32-bit-big-endian # DO NOT try and add rules here to strip .go files, no matter how loudly # testport / stage-qa shouts at you about it, because .go files (which are # compiled bytecode) are not intended to be stripped and doing so causes # breakage at run time. post-install: for p in guile guild guile-tools guile-config guile-snarf; do \ ${LN} -s $${p}-${GUILE_VER} ${STAGEDIR}${PREFIX}/bin/$${p}${GUILE_SFX}; \ done ${MV} ${STAGEDIR}${PREFIX}/man/man1/guile-${GUILE_VER}.1 \ ${STAGEDIR}${PREFIX}/man/man1/guile${GUILE_SFX}.1 .endif # empty(NO_BUILD) .include diff --git a/lang/guile3/files/patch-libguile_gen-scmconfig.c b/lang/guile3/files/patch-libguile_gen-scmconfig.c index 88080e540e4f..ba32f1ab317d 100644 --- a/lang/guile3/files/patch-libguile_gen-scmconfig.c +++ b/lang/guile3/files/patch-libguile_gen-scmconfig.c @@ -1,13 +1,13 @@ ---- libguile/gen-scmconfig.c.orig 2021-03-09 19:24:59 UTC +--- libguile/gen-scmconfig.c.orig 2022-10-21 15:39:38 UTC +++ libguile/gen-scmconfig.c -@@ -343,6 +343,10 @@ main (int argc, char *argv[]) +@@ -329,6 +329,10 @@ main (int argc, char *argv[]) pf ("typedef int scm_t_off;\n"); pf ("#define SCM_T_OFF_MAX INT_MAX\n"); pf ("#define SCM_T_OFF_MIN INT_MIN\n"); -+#elif SIZEOF_OFF_T == SIZEOF_LONG_LONG ++#elif SIZEOF_OFF_T == SIZEOF_LONG_LONG && SIZEOF_OFF_T != SIZEOF_LONG + pf ("typedef long long int scm_t_off;\n"); + pf ("#define SCM_T_OFF_MAX LLONG_MAX\n"); + pf ("#define SCM_T_OFF_MIN LLONG_MIN\n"); #else pf ("typedef long int scm_t_off;\n"); pf ("#define SCM_T_OFF_MAX LONG_MAX\n");