pkgsrc-Changes archive

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

CVS commit: pkgsrc/lang



Module Name:    pkgsrc
Committed By:   nikita
Date:           Wed Apr 26 18:09:54 UTC 2023

Modified Files:
        pkgsrc/lang: Makefile
Added Files:
        pkgsrc/lang/chicken5-boot: DESCR Makefile PLIST buildlink3.mk distinfo
        pkgsrc/lang/chicken5-boot/patches: patch-egg-compile.scm
            patch-tests_runtests.sh

Log Message:
chicken5-boot: import chicken5-boot version 5.3.0

import package for bootstrap of chicken5.


To generate a diff of this commit:
cvs rdiff -u -r1.685 -r1.686 pkgsrc/lang/Makefile
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/chicken5-boot/DESCR \
    pkgsrc/lang/chicken5-boot/Makefile pkgsrc/lang/chicken5-boot/PLIST \
    pkgsrc/lang/chicken5-boot/buildlink3.mk \
    pkgsrc/lang/chicken5-boot/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/lang/chicken5-boot/patches/patch-egg-compile.scm \
    pkgsrc/lang/chicken5-boot/patches/patch-tests_runtests.sh

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

Modified files:

Index: pkgsrc/lang/Makefile
diff -u pkgsrc/lang/Makefile:1.685 pkgsrc/lang/Makefile:1.686
--- pkgsrc/lang/Makefile:1.685  Sat Apr 22 17:09:34 2023
+++ pkgsrc/lang/Makefile        Wed Apr 26 18:09:54 2023
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.685 2023/04/22 17:09:34 nikita Exp $
+# $NetBSD: Makefile,v 1.686 2023/04/26 18:09:54 nikita Exp $
 #
 
 COMMENT=       Programming languages
@@ -27,6 +27,7 @@ SUBDIR+=      cdl3
 SUBDIR+=       chibi-scheme
 SUBDIR+=       chicken
 SUBDIR+=       chicken5
+SUBDIR+=       chicken5-boot
 SUBDIR+=       cim
 SUBDIR+=       clang
 SUBDIR+=       clang-tools-extra

Added files:

Index: pkgsrc/lang/chicken5-boot/DESCR
diff -u /dev/null pkgsrc/lang/chicken5-boot/DESCR:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/DESCR     Wed Apr 26 18:09:54 2023
@@ -0,0 +1 @@
+chicken5-boot is a package to bootstrap the chicken 5.x compiler.
Index: pkgsrc/lang/chicken5-boot/Makefile
diff -u /dev/null pkgsrc/lang/chicken5-boot/Makefile:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/Makefile  Wed Apr 26 18:09:54 2023
@@ -0,0 +1,66 @@
+# $NetBSD: Makefile,v 1.1 2023/04/26 18:09:54 nikita Exp $
+
+DISTNAME=      chicken-5.3.0
+PKGNAME=       ${DISTNAME:S/chicken/chicken5-boot/}
+CATEGORIES=    lang
+MASTER_SITES=  http://code.call-cc.org/releases/${PKGVERSION_NOREV}/
+
+MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=      https://www.call-cc.org/
+COMMENT=       Scheme to C compiler, handling R5RS (bootstrap)
+LICENSE=       modified-bsd
+
+MAKE_JOBS_SAFE=        no
+
+USE_LIBTOOL=           yes
+USE_TOOLS+=            gmake
+UNLIMIT_RESOURCES=     datasize
+
+BUILD_DEFS+=           CHICKEN_BINARY_VERSION
+CHICKEN_BINARY_VERSION=        11
+
+BUILD_TARGET=          boot-chicken
+WRKSRC=                        ${WRKDIR}/chicken-${PKGVERSION_NOREV}
+INSTALLATION_DIRS+=    libexec
+
+.include "../../mk/bsd.prefs.mk"
+
+# PLATFORM detection:
+.if ${OPSYS:M*BSD} || ${OPSYS} == "DragonFly"
+PLATFORM=              bsd
+.elif ${OPSYS} == "Linux"
+PLATFORM=              linux
+.elif ${OPSYS} == "Darwin"
+PLATFORM=              macosx
+.elif ${OPSYS} == "SunOS"
+PLATFORM=              solaris
+.elif ${OPSYS} == "Haiku"
+PLATFORM=              haiku
+.else
+#PLATFORM+=            ${OPSYS} == "Interix"
+# possible choices left: aix android cross-linux-mingw cygwin hurd mingw
+#                        mingw-msys
+PKG_SKIP_REASON+=      "${OPSYS} is not supported"
+.endif
+
+MAKE_FILE=     GNUmakefile
+MAKE_ENV+=     C_COMPILER=${CC:Q}
+MAKE_ENV+=     HOST=   # fix ${HOST} prepending ${CC}
+# Need to have these in MAKE_FLAGS, MAKE_ENV is not enough due to the
+# way the build system overrides them.
+MAKE_FLAGS+=   PLATFORM=${PLATFORM:Q} PREFIX=${PREFIX} DESTDIR=${DESTDIR}
+MAKE_FLAGS+=   MANDIR=${PREFIX}/${PKGMANDIR}
+MAKE_FLAGS+=   INFODIR=${PREFIX}/${PKGINFODIR}
+MAKE_FLAGS+=   DOCDIR=${PREFIX}/share/doc/${PKGNAME_NOREV}
+MAKE_FLAGS+=   INSTALL_PROGRAM=${INSTALL:Q}
+
+TEST_TARGET=   check
+
+PLIST_SUBST+=          CHICKEN_BINARY_VERSION=${CHICKEN_BINARY_VERSION:Q}
+PRINT_PLIST_AWK+=      { sub("/${CHICKEN_BINARY_VERSION}/", "/$${CHICKEN_BINARY_VERSION}/") }
+PRINT_PLIST_AWK+=      { sub(".so.${CHICKEN_BINARY_VERSION}$$", ".so.$${CHICKEN_BINARY_VERSION}") }
+
+do-install:
+       ${INSTALL_PROGRAM} ${WRKSRC}/chicken-boot ${DESTDIR}${PREFIX}/libexec/chicken-bootstrap
+
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/lang/chicken5-boot/PLIST
diff -u /dev/null pkgsrc/lang/chicken5-boot/PLIST:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/PLIST     Wed Apr 26 18:09:54 2023
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1 2023/04/26 18:09:54 nikita Exp $
+libexec/chicken-bootstrap
Index: pkgsrc/lang/chicken5-boot/buildlink3.mk
diff -u /dev/null pkgsrc/lang/chicken5-boot/buildlink3.mk:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/buildlink3.mk     Wed Apr 26 18:09:54 2023
@@ -0,0 +1,16 @@
+# $NetBSD: buildlink3.mk,v 1.1 2023/04/26 18:09:54 nikita Exp $
+
+BUILDLINK_TREE+=       chicken5-boot
+
+.if !defined(CHICKEN5_BOOT_BUILDLINK3_MK)
+CHICKEN5_BOOT_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.chicken5-boot+=  chicken5-boot>=5.3.0
+BUILDLINK_ABI_DEPENDS.chicken5-boot?=  chicken5-boot>=5.3.0
+BUILDLINK_PKGSRCDIR.chicken5-boot?=    ../../lang/chicken5-boot
+
+BUILDLINK_FILES.chicken5-boot+=                libexec/chicken-bootstrap
+
+.endif # CHICKEN5_BOOT_BUILDLINK3_MK
+
+BUILDLINK_TREE+=       -chicken5-boot
Index: pkgsrc/lang/chicken5-boot/distinfo
diff -u /dev/null pkgsrc/lang/chicken5-boot/distinfo:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/distinfo  Wed Apr 26 18:09:54 2023
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2023/04/26 18:09:54 nikita Exp $
+
+BLAKE2s (chicken-5.3.0.tar.gz) = 5d64daeded1ddebaeea8118937c563160ae426138ffcc6268f5ad49b77ca6fc3
+SHA512 (chicken-5.3.0.tar.gz) = 8fcc08a1ba44cde42c95820695a11858a3b7ff39a4b577bc5afb894c53513661aab2dc5b8e608e1d9d26648e314551052041626c4c8e519fcb9f8af324386e02
+Size (chicken-5.3.0.tar.gz) = 4069549 bytes
+SHA1 (patch-egg-compile.scm) = b96b3fbcbef0dd2fd35b8955a66e4a124f1ab499
+SHA1 (patch-tests_runtests.sh) = c2bcee720a56cc399c6acdb1e002dbcd82ea272e

Index: pkgsrc/lang/chicken5-boot/patches/patch-egg-compile.scm
diff -u /dev/null pkgsrc/lang/chicken5-boot/patches/patch-egg-compile.scm:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/patches/patch-egg-compile.scm     Wed Apr 26 18:09:54 2023
@@ -0,0 +1,55 @@
+$NetBSD: patch-egg-compile.scm,v 1.1 2023/04/26 18:09:54 nikita Exp $
+
+Fix CVE-2022-45145 by backporting commit a08f8f548d772ef410c672ba33a27108d8d434f3.
+
+See: https://lists.nongnu.org/archive/html/chicken-announce/2022-11/msg00000.html
+
+Taken from OpenBSD ports.
+
+Index: egg-compile.scm
+--- egg-compile.scm.orig
++++ egg-compile.scm
+@@ -1191,7 +1191,7 @@ EOF
+ 
+ ~a ~a~a
+ ~a ~a~a
+-cat >~a~a <<ENDINFO
++cat >~a~a <<'ENDINFO'
+ ~aENDINFO~%
+ EOF
+                mkdir ddir qdir
+@@ -1201,11 +1201,18 @@ EOF
+        (printf #<<EOF
+ 
+ ~a ~a~a
+-echo ~a >~a~a~%
++copy /y nul ~a~a~%
++~a
+ EOF
+                mkdir ddir qdir
+-               (string-intersperse (string-split infostr "\n") "^\n\n")
+-               ddir dest)))))
++             ddir dest
++             (string-intersperse (map (lambda (line)
++                                        (ensure-line-limit
++                                             (caretize (format "echo ~a >>~a~a"
++                                                               line ddir dest))
++                                             8191 ))
++                                      (string-split infostr "\n"))
++                                 "\n"))))))
+ 
+ ;;; some utilities for mangling + quoting
+ 
+@@ -1277,3 +1284,12 @@ EOF
+ (define (joins strs) (string-intersperse strs " "))
+ 
+ (define (maybe f x) (if f (list x) '()))
++
++(define (caretize str)
++  (string-translate* str '(("&" . "^&") ("^" . "^^") ("|" . "^|")
++                         ("<" . "^<") (">" . "^>"))))
++
++(define (ensure-line-limit str lim)
++  (when (>= (string-length str) lim)
++    (error "line length exceeds platform limit: " str))
++  str)
Index: pkgsrc/lang/chicken5-boot/patches/patch-tests_runtests.sh
diff -u /dev/null pkgsrc/lang/chicken5-boot/patches/patch-tests_runtests.sh:1.1
--- /dev/null   Wed Apr 26 18:09:54 2023
+++ pkgsrc/lang/chicken5-boot/patches/patch-tests_runtests.sh   Wed Apr 26 18:09:54 2023
@@ -0,0 +1,18 @@
+$NetBSD: patch-tests_runtests.sh,v 1.1 2023/04/26 18:09:54 nikita Exp $
+
+`export -p' also exports make(1) variables that contains `.', e.g.
+`.MAKE.ENV.LEVEL'.  As part of `. ./env.out' this lead to failure because
+variable with `.' are not valid is sh(1) context.
+Filter `export -p' output to avoid that.
+
+--- tests/runtests.sh.orig     2018-09-23 09:24:46.000000000 +0000
++++ tests/runtests.sh
+@@ -64,7 +64,7 @@ cp $TYPESDB test-repository/types.db
+ 
+ echo "======================================== repository search path ..."
+ if test -z "$MSYSTEM"; then
+-  export -p >./env.out
++  export -p | sed -ne '/export [^.]*=/p' >./env.out
+   unset CHICKEN_REPOSITORY_PATH
+   $interpret -s repository-path-default.scm
+   . ./env.out



Home | Main Index | Thread Index | Old Index