You've already forked macports-user-easieste
mirror of
https://github.com/macports/macports-user-easieste.git
synced 2026-07-12 18:20:30 -07:00
Rewrote the initialization code so that sequential invocation of targets will succeed.
Fix https://trac.macports.org/ticket/16034 with supplied patch. Start to address https://trac.macports.org/ticket/16518, but not sure if complete. git-svn-id: https://svn.macports.org/repository/macports/users/easieste@39964 d073be05-634f-4543-b044-5fe20cf6d1d6
This commit is contained in:
+105
-90
@@ -6,6 +6,7 @@ PortSystem 1.0
|
||||
name slime
|
||||
version 20080404
|
||||
epoch 20080404
|
||||
revision 1
|
||||
categories lang
|
||||
platforms darwin
|
||||
maintainers evenson@panix.com
|
||||
@@ -20,9 +21,9 @@ long_description \
|
||||
`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@common-lisp.net:/project/slime/cvsroot
|
||||
@@ -33,125 +34,139 @@ worksrcdir slime
|
||||
|
||||
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 {
|
||||
reinplace "s|/usr/local|${prefix}/share|g" \
|
||||
${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
|
||||
}
|
||||
|
||||
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}."
|
||||
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"
|
||||
}
|
||||
}
|
||||
|
||||
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"
|
||||
]
|
||||
ui_msg "slime_emacs_binary is $slime_emacs_binary"
|
||||
|
||||
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"
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
build {
|
||||
cd ${worksrcpath}
|
||||
if {${slime_byte_compile_p}} {
|
||||
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 "${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 @@ post-activate {
|
||||
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"
|
||||
|
||||
Reference in New Issue
Block a user