diff options
author | olgeni <olgeni@FreeBSD.org> | 2011-08-16 20:52:05 +0000 |
---|---|---|
committer | olgeni <olgeni@FreeBSD.org> | 2011-08-16 20:52:05 +0000 |
commit | f72e0969c494e595772d20ace88eedf996be03b4 (patch) | |
tree | 45d10498526cc15535e65be0e16a1e1929c7edf0 | |
parent | cfcaafc494527d52a60c00528823418e85a1f87c (diff) | |
download | FreeBSD-ports-f72e0969c494e595772d20ace88eedf996be03b4.zip FreeBSD-ports-f72e0969c494e595772d20ace88eedf996be03b4.tar.gz |
Upgrade to ASDF 2.017.
From now on, asdf-binary-translations is no longer supported upstream.
Therefore, we use the new asdf:initialize-output-translations
function with the same logic as before.
SBCL 1.0.49 already has a bundled ASDF 2, which caused all cl-*-sbcl
ports to fail. The upcoming Clozure CL 1.7 will also need ASDF 2
support.
-rw-r--r-- | devel/cl-asdf-clisp/Makefile | 3 | ||||
-rw-r--r-- | devel/cl-asdf/Makefile | 6 | ||||
-rw-r--r-- | devel/cl-asdf/bsd.cl-asdf.mk | 6 | ||||
-rw-r--r-- | devel/cl-asdf/distinfo | 4 | ||||
-rw-r--r-- | devel/cl-asdf/files/README.FreeBSD | 11 | ||||
-rw-r--r-- | devel/cl-asdf/files/asdf-init.lisp | 60 | ||||
-rw-r--r-- | devel/cl-asdf/files/patch-asdf.lisp | 15 | ||||
-rw-r--r-- | devel/cl-asdf/pkg-plist | 6 |
8 files changed, 35 insertions, 76 deletions
diff --git a/devel/cl-asdf-clisp/Makefile b/devel/cl-asdf-clisp/Makefile index 0df9309..ae54b3e 100644 --- a/devel/cl-asdf-clisp/Makefile +++ b/devel/cl-asdf-clisp/Makefile @@ -5,8 +5,7 @@ # $FreeBSD$ PORTNAME= asdf -PORTVERSION= 1.374 -PORTREVISION= 2 +PORTVERSION= 2.017 PORTEPOCH= 1 CATEGORIES= devel lisp PKGNAMEPREFIX= cl- diff --git a/devel/cl-asdf/Makefile b/devel/cl-asdf/Makefile index 5aaea74..a7267be 100644 --- a/devel/cl-asdf/Makefile +++ b/devel/cl-asdf/Makefile @@ -5,11 +5,10 @@ # $FreeBSD$ # The source tarball was obtained from the project's GIT repository: -# wget -O asdf-1.374.tar.gz "http://common-lisp.net/gitweb?p=projects/asdf/asdf.git;a=snapshot;h=f6dfe94d2836534a7be050127123cc16fee87c48;sf=tgz" +# wget -O asdf-2.017.tar.gz "http://common-lisp.net/gitweb?p=projects/asdf/asdf.git;a=snapshot;h=db16d0cc1a15697f831bcacc9429cc578304b6cb;sf=tgz" PORTNAME= asdf -PORTVERSION= 1.374 -PORTREVISION= 5 +PORTVERSION= 2.017 PORTEPOCH= 1 CATEGORIES= devel lisp PKGNAMEPREFIX= cl- @@ -42,7 +41,6 @@ do-install: .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} @${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR} - @${INSTALL_DATA} ${FILESDIR}/README.FreeBSD ${DOCSDIR} .endif post-install: diff --git a/devel/cl-asdf/bsd.cl-asdf.mk b/devel/cl-asdf/bsd.cl-asdf.mk index 1a25f7c..c17711b 100644 --- a/devel/cl-asdf/bsd.cl-asdf.mk +++ b/devel/cl-asdf/bsd.cl-asdf.mk @@ -57,10 +57,8 @@ RUN_DEPENDS+= clisp:${PORTSDIR}/lang/clisp # Even if the Common Lisp compiler already has a bundled ASDF framework, # we still need the asdf-init file. -BUILD_DEPENDS+= ${LOCALBASE}/${CL_LIBDIR_REL}/asdf/asdf.asd:${PORTSDIR}/devel/cl-asdf \ - ${LOCALBASE}/${CL_LIBDIR_REL}/asdf-binary-locations/asdf-binary-locations.asd:${PORTSDIR}/devel/cl-asdf-binary-locations -RUN_DEPENDS+= ${LOCALBASE}/${CL_LIBDIR_REL}/asdf/asdf.asd:${PORTSDIR}/devel/cl-asdf \ - ${LOCALBASE}/${CL_LIBDIR_REL}/asdf-binary-locations/asdf-binary-locations.asd:${PORTSDIR}/devel/cl-asdf-binary-locations +BUILD_DEPENDS+= ${LOCALBASE}/${CL_LIBDIR_REL}/asdf/asdf.asd:${PORTSDIR}/devel/cl-asdf +RUN_DEPENDS+= ${LOCALBASE}/${CL_LIBDIR_REL}/asdf/asdf.asd:${PORTSDIR}/devel/cl-asdf .endif # defined(USE_ASDF) diff --git a/devel/cl-asdf/distinfo b/devel/cl-asdf/distinfo index 933d4d6..f95037c 100644 --- a/devel/cl-asdf/distinfo +++ b/devel/cl-asdf/distinfo @@ -1,2 +1,2 @@ -SHA256 (asdf-1.374.tar.gz) = 685b6a0f7bbf968c9d4803c2971a3df36e5b605d24ee852985a3db2f5d6dedd3 -SIZE (asdf-1.374.tar.gz) = 106093 +SHA256 (asdf-2.017.tar.gz) = 754a345155101080c9f97f29610098bef9aa2603e20afba8c9e4ae3f42ea67f0 +SIZE (asdf-2.017.tar.gz) = 168129 diff --git a/devel/cl-asdf/files/README.FreeBSD b/devel/cl-asdf/files/README.FreeBSD deleted file mode 100644 index 597845c..0000000 --- a/devel/cl-asdf/files/README.FreeBSD +++ /dev/null @@ -1,11 +0,0 @@ -To use asdf and depending ports, you will have to configure your -Lisp systems so they know where to find asdf itself and the system -definition files. - -A default configuration is installed in - - ${PREFIX}/etc/asdf-init.lisp - -Review this file for further information, or simply load it from your -Lisp initialization file. - diff --git a/devel/cl-asdf/files/asdf-init.lisp b/devel/cl-asdf/files/asdf-init.lisp index 4f484c1..0306df2 100644 --- a/devel/cl-asdf/files/asdf-init.lisp +++ b/devel/cl-asdf/files/asdf-init.lisp @@ -36,22 +36,22 @@ ;; This file takes all necessary actions. The easiest way is to load ;; it in your Lisp every time it starts, by putting ;; -;; (load "%%PREFIX%%/etc/asdf-init.lisp") +;; (load "/usr/local/etc/asdf-init.lisp") ;; ;; in your init file. ;; ;; Each Lisp implementation has its own files where this can be done: ;; ;; CLISP: -;; %%PREFIX%%/lib/clisp/config.lisp +;; /usr/local/lib/clisp/config.lisp ;; ~/.clisprc ;; ;; CMUCL: -;; %%PREFIX%%/lib/cmucl/lib/cmucl/lib/site-init.lisp +;; /usr/local/lib/cmucl/lib/cmucl/lib/site-init.lisp ;; ~/.cmucl-init.lisp ;; ;; SBCL: -;; %%PREFIX%%/etc/sbclrc +;; /usr/local/etc/sbclrc ;; ~/.sbclrc ;; ;; CLOZURE CL / OPENMCL: @@ -71,7 +71,7 @@ ;; We mess around with asdf:output-files in interesting ways to ;; enforce a filesystem layout that works without multiple Lisp ;; implementations overwriting their fasls. Basically, each lib has -;; its own directory in %%PREFIX%%/lib/common-lisp, initially +;; its own directory in /usr/local/lib/common-lisp, initially ;; containing its sources. Each fasl port will create an ;; implementation-specific subdirectory where all its fasls go, for ;; example ./cmuclfasl, ./clispfasl etc. @@ -130,15 +130,15 @@ (defvar *asdf-pathname* ;; Clozure CL's internal asdf - #+openmcl "%%PREFIX%%/lib/ccl/tools/asdf" + #+openmcl "/usr/local/lib/ccl/tools/asdf" ;; SBCL's internal asdf - #+sbcl "%%PREFIX%%/lib/sbcl/asdf/asdf" + #+sbcl "/usr/local/lib/sbcl/asdf/asdf" ;; CMU and clisp - #-(or openmcl sbcl) "%%PREFIX%%/lib/common-lisp/asdf/asdf" + #-(or openmcl sbcl) "/usr/local/lib/common-lisp/asdf/asdf" "Path of the ASDF library") (defvar *system-registry* - "%%PREFIX%%/lib/common-lisp/system-registry/" + "/usr/local/lib/common-lisp/system-registry/" "FreeBSD's contribution to the central registry for ASDF system definitions. This will be added to asdf:*central-registry*, you should modify that in order to add other directories.") @@ -210,22 +210,6 @@ LISP-SPECIFIC-FASL-SUBDIR as well." (pushnew *system-registry* asdf:*central-registry*) -;; The bundled ASDFs in SBCL and Clozure CL need asdf-binary-locations -#+sbcl (asdf:operate 'asdf:load-op :asdf-binary-locations) -#+openmcl (asdf:operate 'asdf:load-op :asdf-binary-locations) - -(defun asdf:implementation-specific-directory-name () - "Return a name that can be used as a directory name that is unique to -a Lisp implementation, Lisp implementation version, operating system, -and hardware architecture. This implementation is designed for the -FreeBSD ports system and returns a simplified directory name (sbclfasl, -clispfasl, ...) by calling lisp-specific-fasl-subdir." - (lisp-specific-fasl-subdir)) - -(setf asdf:*source-to-target-mappings* - '(#+openmcl ("%%PREFIX%%/lib/ccl/" nil) - #+sbcl ("%%PREFIX%%/lib/sbcl/" nil))) - (defmethod asdf:output-files :around ((op asdf:compile-op) (file asdf:cl-source-file)) (let ((default-output-file (car (call-next-method)))) @@ -236,9 +220,16 @@ clispfasl, ...) by calling lisp-specific-fasl-subdir." :defaults default-output-file)))) ;; Map each library in common-lisp/ to its fasl subdirectory -(dolist (path (directory "%%PREFIX%%/lib/common-lisp/*/")) - (let ((fasldir (make-pathname :directory (append (pathname-directory path) (list (lisp-specific-fasl-subdir)))))) - (pushnew (list path fasldir) asdf:*source-to-target-mappings*))) + +(defvar *freebsd-output-translations* ()) + +(pushnew :inherit-configuration *freebsd-output-translations*) + +(dolist (path (directory "/usr/local/lib/common-lisp/*/")) + (let ((fasldir (make-pathname + :directory (append (pathname-directory path) + (list (lisp-specific-fasl-subdir)))))) + (pushnew (list path fasldir) *freebsd-output-translations*))) (if (and (getenv "FBSD_ASDF_COMPILE_PORT") (getenv "PORTNAME") @@ -247,9 +238,14 @@ clispfasl, ...) by calling lisp-specific-fasl-subdir." (portname (getenv "PORTNAME"))) ;; If we are building a FreeBSD port, all the compiled fasl files ;; should be redirected to WRKSRC. - (let ((port-source (make-pathname - :directory (append (pathname-directory #P"%%PREFIX%%/lib/common-lisp/") - (list portname))))) - (pushnew (list port-source wrksrc) asdf:*source-to-target-mappings*)))) + (let ((source (make-pathname + :directory (append (pathname-directory #P"/usr/local/lib/common-lisp/") + (list portname :wild-inferiors)))) + (target (make-pathname + :directory (append (pathname-directory wrksrc) + (list :wild-inferiors))))) + (pushnew (list source target) *freebsd-output-translations*)))) + +(asdf:initialize-output-translations (cons :output-translations *freebsd-output-translations*)) ;;;; asdf-init.lisp ends here diff --git a/devel/cl-asdf/files/patch-asdf.lisp b/devel/cl-asdf/files/patch-asdf.lisp deleted file mode 100644 index ab400b6..0000000 --- a/devel/cl-asdf/files/patch-asdf.lisp +++ /dev/null @@ -1,15 +0,0 @@ - -$FreeBSD$ - ---- asdf.lisp.orig -+++ asdf.lisp -@@ -630,7 +630,8 @@ - (system-source-file (cdr system-pair))))))) - - (defvar *central-registry* -- `((directory-namestring *default-pathname-defaults*)) -+ `((directory-namestring *default-pathname-defaults*) -+ "%%PREFIX%%/lib/common-lisp/system-registry/") - "A list of 'system directory designators' ASDF uses to find systems. - - A 'system directory designator' is a pathname or a function diff --git a/devel/cl-asdf/pkg-plist b/devel/cl-asdf/pkg-plist index 6283283..98f9473 100644 --- a/devel/cl-asdf/pkg-plist +++ b/devel/cl-asdf/pkg-plist @@ -2,17 +2,11 @@ etc/asdf-init.lisp.default @exec [ -f %D/etc/asdf-init.lisp ] || cp %D/etc/asdf-init.lisp.default %D/etc/asdf-init.lisp %%LIB32DIR%%/common-lisp/asdf/asdf-ecl.lisp -%%LIB32DIR%%/common-lisp/asdf/asdf-install.lisp %%LIB32DIR%%/common-lisp/asdf/asdf.asd %%LIB32DIR%%/common-lisp/asdf/asdf.lisp -%%LIB32DIR%%/common-lisp/asdf/cclan-package.lisp -%%LIB32DIR%%/common-lisp/asdf/cclan.asd -%%LIB32DIR%%/common-lisp/asdf/cclan.lisp %%LIB32DIR%%/common-lisp/asdf/wild-modules.lisp %%LIB32DIR%%/common-lisp/system-registry/asdf.asd -%%LIB32DIR%%/common-lisp/system-registry/cclan.asd %%PORTDOCS%%%%DOCSDIR%%/README -%%PORTDOCS%%%%DOCSDIR%%/README.FreeBSD %%PORTDOCS%%@dirrm %%DOCSDIR%% @dirrmtry %%LIB32DIR%%/common-lisp/system-registry @dirrmtry %%LIB32DIR%%/common-lisp/asdf |