[39964] users/easieste/slime/Portfile

easieste at macports.org easieste at macports.org
Sun Sep 14 06:09:21 PDT 2008


Revision: 39964
          http://trac.macports.org/changeset/39964
Author:   easieste at macports.org
Date:     2008-09-14 06:09:20 -0700 (Sun, 14 Sep 2008)
Log Message:
-----------
Rewrote the initialization code so that sequential invocation of targets will scuceed.

Fix https://trac.macports.org/ticket/16034 with supplied patch.

Start to address https://trac.macports.org/ticket/16518, but not sure if complete.

Modified Paths:
--------------
    users/easieste/slime/Portfile

Modified: users/easieste/slime/Portfile
===================================================================
--- users/easieste/slime/Portfile	2008-09-14 07:59:21 UTC (rev 39963)
+++ users/easieste/slime/Portfile	2008-09-14 13:09:20 UTC (rev 39964)
@@ -6,6 +6,7 @@
 name        slime
 version     20080404
 epoch       20080404
+revision    1
 categories  lang
 platforms   darwin
 maintainers evenson at panix.com
@@ -20,9 +21,9 @@
     `lisp-mode' supports editing Lisp source files, \
     `slime-mode' adds support for interacting with a \
     running Common Lisp process for compilation,\
-    debugging, documentation lookup, and so on. 
+    debugging, documentation lookup, and so on.
 
-homepage        http://common-lisp.net/project/slime/   
+homepage        http://common-lisp.net/project/slime/
 master_sites    ${homepage}
 fetch.type      cvs
 cvs.root        :pserver:anonymous at common-lisp.net:/project/slime/cvsroot
@@ -33,125 +34,139 @@
 
 use_configure   no
 depends_lib     port:emacs
+default_variants +sbcl
 
-variant app description "Build SLIME against editors/emacs-app" { 
+variant app description "Build SLIME against editors/emacs-app" {
     depends_run-append port:emacs-app
     depends_run-delete port:emacs
 }
 
-default_variants +sbcl
-
 variant sbcl description "Require lang/sbcl for SLIME" {
     depends_run-append port:sbcl
 }
 
-variant openmcl description "Require lang/openmcl for SLIME" { 
+variant openmcl description "Require lang/openmcl for SLIME" {
     depends_run-append port:openmcl
 }
 
-variant clisp description "Require lang/clisp for SLIME" { 
+variant clisp description "Require lang/clisp for SLIME" {
     depends_run-append port:clisp
 }
 
-post-patch { 
+set slime_emacs_binary [
+   if { [regexp carbon [join [registry_installed emacs]]]  || [ variant_isset app ] } {  
+       list "/Applications/MacPorts/Emacs.app/Contents/MacOS/Emacs" 
+   } else { 
+       list "${prefix}/bin/emacs"    
+   }
+]
+ui_msg "slime_emacs_binary is $slime_emacs_binary"
+
+set slime_site_lisp_dir  [ 
+     if {[ variant_isset app ]} {  
+         list "${destroot}/Applications/MacPorts/Emacs.app/Contents/Resources/site-lisp/slime"
+     } else {
+         list "${destroot}${prefix}/share/emacs/site-lisp/slime"
+     }
+]
+
+set slime_site_lisp_contrib_dir ${slime_site_lisp_dir}/contrib
+
+set slime_byte_compile_p   0
+
+post-patch {
     reinplace "s|/usr/local|${prefix}/share|g" \
-        ${worksrcpath}/doc/makefile
+        ${worksrcpath}/doc/Makefile
 }
 
-platform darwin { 
-    global slime_emacs_binary
-    global slime_site_lisp_dest
-    global slime_site_lisp_contrib
-    global slime_byte_compile_p
-    global slime_site_lisp_dest_contrib
-    if {[ variant_isset app ]} {
-        set slime_emacs_binary /Applications/MacPorts/Emacs.app/Contents/MacOS/Emacs 
-        set slime_site_lisp_dest ${destroot}/Applications/MacPorts/Emacs.app/Contents/Resources/site-lisp
-        set slime_site_lisp_contrib /Applications/MacPorts/Emacs.app/Contents/Resources/site-lisp 
-    } else {
-        set slime_emacs_binary ${prefix}/bin/emacs
-        set slime_site_lisp_dest ${destroot}${prefix}/share/emacs/site-lisp/slime
-        set slime_site_lisp_contrib ${prefix}/share/emacs/site-lisp/contrib
-    }
+configure {
+#     if {! [file executable ${slime_emacs_binary}]} {
+#         set slime_byte_compile_p 0
+#         ui_msg "Couldn't find an executable Emacs image so won't byte compile the Elisp files."
+#     } else {
+#         set slime_byte_compile_p 1
+#         ui_msg "Emacs binary used for byte compilation is ${slime_emacs_binary}."
+#     }
+    set slime_byte_compile_p 0
+}
 
-    set slime_site_lisp_dest_contrib ${slime_site_lisp_dest}/contrib
-    
-    # kludge if 'emacs+carbon' is installed
-    if {[regexp carbon [join [registry_installed emacs]]]} {
-        set slime_emacs_binary /Applications/MacPorts/Emacs.app/Contents/MacOS/Emacs
-    }
-
-   if {! [file executable ${slime_emacs_binary}]} {
-       set slime_byte_compile_p 0
-       ui_msg "Couldn't find an executable Emacs image so won't byte compile."
-   } else {
-       set slime_byte_compile_p 1
-       ui_msg "Emacs binary used for byte compilation is ${slime_emacs_binary}."
-   }
-}
-            
-build { 
+build {
     cd ${worksrcpath}
-    upvar #0 slime_emacs_binary emacs_bin
     if {${slime_byte_compile_p}} {
-        system "${emacs_bin} \
-              --batch  --directory .  --funcall batch-byte-compile \
-              slime.el \
-              slime-autoloads.el \
-              hyperspec.el"         
+         system "${slime_emacs_binary} \
+               -batch  \
+   --directory ${worksrcpath}  --directory ${worksrcpath}/contrib \
+                 --funcall batch-byte-compile \
+               contrib/*.el"
+         system "${slime_emacs_binary} \
+               -batch  \
+   --directory ${worksrcpath}  --directory ${worksrcpath}/contrib \
+                 --funcall batch-byte-compile \
+               *.el"
+#         system "${slime_emacs_binary} \
+#               --batch  --directory $pwd  --directory contrib \
+#                --funcall batch-byte-compile \
+#              *.el"
+#         system "${slime_emacs_binary} \
+#               --batch  --directory .  --funcall batch-byte-compile \
+#               slime.el \
+#               slime-autoloads.el \
+#               hyperspec.el"
 
-        cd ${worksrcpath}/contrib
-        system "${emacs_bin} \
-              --batch \
-              --directory .  --directory .. \
-              --funcall batch-byte-compile  \
-              bridge.el \
-              inferior-slime.el \
-              slime-asdf.el \
-              slime-parse.el \
-              slime-autodoc.el \
-              slime-banner.el \
-              slime-c-p-c.el \
-              slime-editing-commands.el \
-              slime-fancy-inspector.el \
-              slime-fancy.el \
-              slime-fuzzy.el \
-              slime-highlight-edits.el \
-              slime-indentation.el \
-              slime-motd.el \
-              slime-parse.el \
-              slime-presentation-streams.el \
-              slime-presentations.el \
-              slime-references.el \
-              slime-scheme.el \
-              slime-scratch.el \
-              slime-tramp.el \
-              slime-typeout-frame.el \
-              slime-xref-browser.el"
+#        cd ${worksrcpath}/contrib
+#         system "${slime_emacs_binary} \
+#               --batch \
+#               --directory .  --directory .. \
+#               --funcall batch-byte-compile  \
+#               slime.el slime-autoloads.el \
+#               hyperspec.el \
+#               bridge.el \
+#               inferior-slime.el \
+#               slime-asdf.el \
+#               slime-parse.el \
+#               slime-autodoc.el \
+#               slime-banner.el \
+#               slime-c-p-c.el \
+#               slime-editing-commands.el \
+#               slime-fancy-inspector.el \
+#               slime-fancy.el \
+#               slime-fuzzy.el \
+#               slime-highlight-edits.el \
+#               slime-indentation.el \
+#               slime-motd.el \
+#               slime-parse.el \
+#               slime-presentation-streams.el \
+#               slime-presentations.el \
+#               slime-references.el \
+#               slime-scheme.el \
+#               slime-scratch.el \
+#               slime-tramp.el \
+#               slime-typeout-frame.el \
+#               slime-xref-browser.el"
     }
 
     cd ${worksrcpath}/doc
     system "make slime.info"
 }
 
-destroot    { 
+destroot    {
     cd ${worksrcpath}
-    xinstall -m 755 -d ${slime_site_lisp_dest}
-    
+    xinstall -m 755 -d ${slime_site_lisp_dir}
+
     foreach file [glob *.el *.elc *.lisp ChangeLog] {
-        xinstall -m 644 ${file} ${slime_site_lisp_dest}
+        xinstall -m 644 ${file} ${slime_site_lisp_dir}
     }
 
     cd ${worksrcpath}/contrib
-    xinstall -m 755 -d ${slime_site_lisp_dest_contrib}
+    xinstall -m 755 -d ${slime_site_lisp_contrib_dir}
     foreach file [glob *.el *.elc *.lisp ChangeLog] {
-        xinstall -m 644 ${file} ${slime_site_lisp_dest_contrib}
+        xinstall -m 644 ${file} ${slime_site_lisp_contrib_dir}
     }
-          
-    xinstall -m 644 ${worksrcpath}/doc/slime.info ${destroot}${prefix}/share/info  
+
+    xinstall -m 644 ${worksrcpath}/doc/slime.info ${destroot}${prefix}/share/info
 }
 
-post-activate   { 
+post-activate   {
     ui_msg "To use SLIME, you need to have a Common Lisp installed with which"
     ui_msg "you wish to interact.  At the moment, 'openmcl', 'sbcl', and"
     ui_msg "'clisp' all work. By default, MacPorts SLIME installs 'sbcl' as a"
@@ -172,7 +187,7 @@
     ui_msg "(eval-after-load \"slime\""
     ui_msg "   \'(slime-setup '(slime-fancy slime-banner)))"
     ui_msg ""
-    ui_msg "Populate the initialization list in SLIME-LISP-IMPLEMENTATIONS" 
+    ui_msg "Populate the initialization list in SLIME-LISP-IMPLEMENTATIONS"
     ui_msg "with the correct paths to the Common Lisp exectuables you wish to use."
     ui_msg ""
     ui_msg "Then, 'M-x slime' from Emacs should connect you to the first"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20080914/b6f022f6/attachment.html 


More information about the macports-changes mailing list