ECL now follows the GNU coding standards for handling the configuration parameters prefix,libdir,bindir...

This commit is contained in:
jjgarcia 2003-12-02 10:49:20 +00:00
parent 2c3806bc8e
commit 933cb8b4ba
10 changed files with 91 additions and 86 deletions

View file

@ -46,6 +46,8 @@ CFLAGS=@CFLAGS@
# This is set by the configure script's `--srcdir' option.
srcdir=@srcdir@
prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
infodir=@infodir@
mandir=@mandir@
@ -169,15 +171,15 @@ binary-dist: all
su -c "rm -rf tmp"
mkdir tmp
for i in tmp$(bindir) tmp$(infodir) tmp$(mandir) tmp$(libdir); do \
(echo $$i; IFS="/"; for k in $$i; do echo $$k; (test -d $$k || mkdir $$k); chmod 755 $$k; cd $$k; done); \
(echo $$i; IFS="/"; \for k in $$i; do echo $$k; (test -d $$k || mkdir $$k); chmod 755 $$k; cd $$k; done); \
done
PREFIX=`pwd`/tmp; cd build; $(MAKE) install PREFIX="$${PREFIX}"
prefix=`pwd`/tmp; cd build; $(MAKE) install prefix=$(prefix)
su -c "chown -R root.root tmp && cd tmp; tar czf ../ecl-$(VERSION)-$(MACHINE).tgz * && cd .. && rm -rf tmp"
# This creates a ZIP file with a flattened directory structure
windows-dist: all
cd build; rm -rf $(TAR_DIR); mkdir $(TAR_DIR); \
$(MAKE) flatinstall PREFIX=`pwd`/$(TAR_DIR); \
$(MAKE) flatinstall prefix=`pwd`/$(TAR_DIR); \
zip -r $(TAR_DIR).zip $(TAR_DIR)
dist:

View file

@ -1671,7 +1671,8 @@ ECL 0.9d
compilation/linking flags for a given architecture. This is required
in platforms such as Solaris/Ultrasparc, where there are multiple
ABIs (i.e. applications may use 32-bit or 64-pointers, 32-bit or
64-registers, etc).
64-registers, etc). On other platforms this process is not required,
and you may get a faster configuration using --enable-simple-conf
* System design: Multithreading
@ -1728,6 +1729,9 @@ ECL 0.9d
- HASH-TABLE-SIZE and HASH-TABLE-TEST have been finally implemented.
- The configuration process now does respect the values of libdir,
bindir, infodir,... supplied by the user.
* Documentation:
- New manual page documents the scripting facilities of ECL
@ -1747,7 +1751,13 @@ ECL 0.9d
logical pathnames.
- Under windows, the system directory is defined to be the place
where ecl.exe resides.
where ecl.exe resides. Windows user will want to use the
command "make windows-dist", which builds a ZIP file with a
ready to be installed ECL.
- If you want to install ECL to a different place, use "make prefix=..."
instead of the old form "make PREFIX=...". ECL now follows the GNU
coding standards in this particular point.
TODO:
=====

View file

@ -21,9 +21,10 @@ EXE = @EXEEXT@
# subdirectories of this directory. The default values for many of
# the variables below are expressed in terms of this one, so you may
# not need to change them. This defaults to /usr/local.
prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
libdir=@libdir@
infodir=@infodir@
# Programs used by "make install":
#
@ -56,19 +57,21 @@ ecl_min$(EXE): $(LIBRARIES) .gdbinit libecl.a
if [ -f CROSS-COMPILER ]; then \
touch $@; \
else \
$(CC) $(LDFLAGS) -o $@ c/cinit.o -L./ libecl.a -lgmp -lgc $(LIBS);\
$(CC) $(LDFLAGS) -o $@ c/cinit.o -L./ @LIBPREFIX@ecl.@LIBEXT@ -lgmp -lgc $(LIBS);\
fi
.gdbinit: $(srcdir)/util/gdbinit
cp $(srcdir)/util/gdbinit $@
libecl.a: libgmp.a libgc.a
lsp/config.lsp: lsp/config.lsp.in
sed -e 's,@ecldir@,$(libdir),g' < lsp/config.lsp.in > lsp/config.lsp
@LIBPREFIX@ecl.@LIBEXT@: @LIBPREFIX@gmp.@LIBEXT@ @LIBPREFIX@gc.@LIBEXT@ lsp/config.lsp
cd c; $(MAKE)
libgc.a:
@LIBPREFIX@gc.@LIBEXT@:
if (echo $(SUBDIR) | grep gc); then \
cd gc; $(MAKE) install; \
fi
libgmp.a:
@LIBPREFIX@gmp.@LIBEXT@:
if (echo $(SUBDIR) | grep gmp); then \
cd gmp; $(MAKE) install; \
fi
@ -79,38 +82,26 @@ BUILD-STAMP: config.status
(echo "#"; uname -a) > $@
head -8 config.status | tail -6 >> $@
install: BUILD-STAMP install-base
cd c; $(MAKE) PREFIX="$(PREFIX)" install
cd doc; $(MAKE) PREFIX="$(PREFIX)" install
cd c; $(MAKE) prefix=$(prefix) install
cd doc; $(MAKE) prefix=$(prefix) install
install-base:
$(mkinstalldirs) $(PREFIX)$(bindir) $(PREFIX)$(libdir)/h
$(mkinstalldirs) $(bindir) $(libdir)/h
for i in $(TARGETS); do \
$(INSTALL) -s $$i $(PREFIX)$(bindir); \
$(INSTALL) -s $$i $(bindir); \
done
$(INSTALL_PROGRAM) -s $(TARGETS) $(PREFIX)$(bindir)
$(INSTALL_PROGRAM) -s $(TARGETS) $(bindir)
sed 's,~A,$(libdir),;s,~\*,,;' ecl-config > foo; \
$(INSTALL_PROGRAM) foo $(PREFIX)$(bindir)/ecl-config; \
$(INSTALL_PROGRAM) foo $(bindir)/ecl-config; \
rm foo
for i in BUILD-STAMP $(LSP_LIBRARIES) $(LIBRARIES) c/dpp* help.doc ; do \
$(INSTALL_DATA) $$i $(PREFIX)$(libdir); \
$(INSTALL_DATA) $$i $(libdir); \
done
$(INSTALL_DATA) h/config.h $(PREFIX)$(libdir)/h
if (echo $(SUBDIR) | grep gc); then $(MAKE) installgc; fi
if (echo $(SUBDIR) | grep gmp); then $(MAKE) installgmp; fi
installgc:
$(mkinstalldirs) $(PREFIX)$(libdir)/h/private
for i in $(srcdir)/gc/include/*.h; do \
$(INSTALL_DATA) $$i $(PREFIX)$(libdir)/h/; \
done
for i in $(srcdir)/gc/include/private/*.h; do \
$(INSTALL_DATA) $$i $(PREFIX)$(libdir)/h/private/; \
done
installgmp:
$(INSTALL_DATA) h/gmp.h $(PREFIX)$(libdir)/h/
$(INSTALL_DATA) h/config.h $(libdir)/h
flatinstall: BUILD-STAMP
$(MAKE) install PREFIX= bindir=$(PREFIX) libdir=$(PREFIX) install-base
cd c; $(MAKE) PREFIX=$(PREFIX) flatinstall
cd doc; $(MAKE) PREFIX=$(PREFIX) flatinstall
$(MAKE) install bindir=$(prefix) libdir=$(prefix) install-base
cd c; $(MAKE) prefix=$(prefix) flatinstall
cd doc; $(MAKE) prefix=$(prefix) flatinstall
uninstall:
for i in $(TARGETS) ecl-config; do rm -rf $(bindir)/$$i; done

View file

@ -20,7 +20,9 @@ DPP = ./dpp$(EXE)
#
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
libdir = @libdir@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
# Files
@ -55,14 +57,18 @@ all: $(DPP) ../libecl.a cinit.o
.PHONY: all
install: $(HFILES)
for i in $(HFILES); do $(INSTALL_DATA) $$i $(PREFIX)$(libdir)/h/; done
for i in $(HFILES); do $(INSTALL_DATA) $$i $(libdir)/h/; done
sed '/-CUT-/,$$d' ../h/config.h > ../h/config-install.h
$(INSTALL_DATA) ../h/config-install.h $(PREFIX)$(libdir)/h/config.h
flatinstall: $(HFILES)
for i in $(HFILES); do $(INSTALL_DATA) $$i $(PREFIX)/h/; done
sed '/-CUT-/,$$d' ../h/config.h > ../h/config-install.h
$(INSTALL_DATA) ../h/config-install.h $(PREFIX)/h/config.h
$(INSTALL_DATA) ../h/*.h $(libdir)/h/
rm $(libdir)/h/config.h
mv $(libdir)/h/config-install.h $(libdir)/h/config.h
flatinstall: $(HFILES)
for i in $(HFILES); do $(INSTALL_DATA) $$i $(prefix)/h/; done
sed '/-CUT-/,$$d' ../h/config.h > ../h/config-install.h
$(INSTALL_DATA) ../h/*.h $(prefix)/h/
rm $(prefix)/h/config.h
mv $(prefix)/h/config-install.h $(prefix)/h/config.h
../libecl.a: $(OBJS)
$(RM) $@

View file

@ -262,7 +262,7 @@ cl_boot(int argc, char **argv)
mp_make_lock(2, @':name', @'mp::+load-compile-lock+'));
#endif
aux = cl_list(
#ifdef ECL_DLOPEN
#ifdef ENABLE_DLOPEN
4,CONS(make_simple_string("fas"), @'si::load-binary'),
#else
3,

12
src/configure vendored
View file

@ -3742,13 +3742,8 @@ if test "$ac_cv_search_strerror" != no; then
fi
if test "x$prefix" = "xNONE"; then prefix=${ac_default_prefix}; fi
if test "x$exec_prefix" = "xNONE"; then exec_prefix=${prefix}; fi
bindir="${exec_prefix}/bin"
libdir="${exec_prefix}/lib/ecl"
includedir="${exec_prefix}/lib/ecl/h"
mandir="${prefix}/man"
infodir="${prefix}/info"
libdir="${libdir}/ecl"
includedir="${libdir}/ecl/h"
@ -6027,6 +6022,8 @@ fi
ac_config_files="$ac_config_files h/configpre:h/config.h.in"
ac_config_files="$ac_config_files lsp/config.lsp.in:lsp/config.lsp.in"
ac_config_headers="$ac_config_headers h/config.h:h/configpre"
cat >confcache <<\_ACEOF
@ -6571,6 +6568,7 @@ do
"gabriel/Makefile" ) CONFIG_FILES="$CONFIG_FILES gabriel/Makefile" ;;
"ecl-config" ) CONFIG_FILES="$CONFIG_FILES ecl-config:util/ecl-config" ;;
"h/configpre" ) CONFIG_FILES="$CONFIG_FILES h/configpre:h/config.h.in" ;;
"lsp/config.lsp.in" ) CONFIG_FILES="$CONFIG_FILES lsp/config.lsp.in:lsp/config.lsp.in" ;;
"h/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS h/config.h:h/configpre" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}

View file

@ -148,13 +148,8 @@ AC_ISC_POSIX
dnl ----------------------------------------------------------------------
dnl Installation directories
dnl
if test "x$prefix" = "xNONE"; then prefix=${ac_default_prefix}; fi
if test "x$exec_prefix" = "xNONE"; then exec_prefix=${prefix}; fi
bindir="${exec_prefix}/bin"
libdir="${exec_prefix}/lib/ecl"
includedir="${exec_prefix}/lib/ecl/h"
mandir="${prefix}/man"
infodir="${prefix}/info"
libdir="${libdir}/ecl"
includedir="${libdir}/ecl/h"
dnl ----------------------------------------------------------------------
dnl Checks which do not come with autoconf
@ -374,5 +369,6 @@ AC_CONFIG_FILES(compile.lsp bare.lsp
tk/Makefile tests/Makefile ansi-tests/Makefile gabriel/Makefile)
AC_CONFIG_FILES([ecl-config:util/ecl-config],[chmod +x ecl-config])
AC_CONFIG_FILES([h/configpre:h/config.h.in])
AC_CONFIG_FILES([lsp/config.lsp.in:lsp/config.lsp.in])
AC_CONFIG_HEADER([h/config.h:h/configpre])
AC_OUTPUT

View file

@ -1,8 +1,9 @@
top_srcdir= @top_srcdir@
srcdir = @srcdir@
prefix=@prefix@
exec_prefix=@exec_prefix@
infodir = @infodir@
libdir = @libdir@
mandir=@mandir@
manext=1
@ -33,28 +34,28 @@ ecldev.ps: ecldev.dvi $(srcdir)/macros.txi
dvips -o $@ ecldev.dvi
install: all
$(mkinstalldirs) $(PREFIX)$(infodir)
$(INSTALL_DATA) ecl.info $(PREFIX)$(infodir)
$(INSTALL_DATA) ecldev.info $(PREFIX)$(infodir)
$(mkinstalldirs) $(PREFIX)$(mandir)/man$(manext)
$(INSTALL_DATA) ecl.man $(PREFIX)$(mandir)/man$(manext)/ecl.$(manext)
$(mkinstalldirs) $(infodir)
$(INSTALL_DATA) ecl.info $(infodir)
$(INSTALL_DATA) ecldev.info $(infodir)
$(mkinstalldirs) $(mandir)/man$(manext)
$(INSTALL_DATA) ecl.man $(mandir)/man$(manext)/ecl.$(manext)
flatinstall: all
$(mkinstalldirs) $(PREFIX)/doc
$(INSTALL_DATA) ecl.info $(PREFIX)/doc
$(INSTALL_DATA) ecldev.info $(PREFIX)/doc
$(mkinstalldirs) $(prefix)/doc
$(INSTALL_DATA) ecl.info $(prefix)/doc
$(INSTALL_DATA) ecldev.info $(prefix)/doc
if [ -f user.html ]; then \
$(INSTALL_DATA) $$i $(PREFIX)/doc/; \
$(INSTALL_DATA) $$i $(prefix)/doc/; \
else \
$(mkinstalldirs) $(PREFIX)/doc/ecl; \
for i in ecl/*; do $(INSTALL_DATA) $$i $(PREFIX)/doc/ecl/; done; \
$(mkinstalldirs) $(prefix)/doc/ecl; \
for i in ecl/*; do $(INSTALL_DATA) $$i $(prefix)/doc/ecl/; done; \
fi
if [ -f devel.html ]; then \
$(INSTALL_DATA) devel.html $(PREFIX)/doc/; \
$(INSTALL_DATA) devel.html $(prefix)/doc/; \
else \
$(mkinstalldirs) $(PREFIX)/doc/ecldev; \
for i in ecldev/*; do $(INSTALL_DATA) $$i $(PREFIX)/doc/ecldev/; done; \
$(mkinstalldirs) $(prefix)/doc/ecldev; \
for i in ecldev/*; do $(INSTALL_DATA) $$i $(prefix)/doc/ecldev/; done; \
fi
for i in *.html; do $(INSTALL_DATA) $$i $(PREFIX)/doc/; done
for i in *.html; do $(INSTALL_DATA) $$i $(prefix)/doc/; done
uninstall:
rm -r $(infodir)/ecl.info $(infodir)/ecldev.info

View file

@ -67,9 +67,11 @@ Returns, as a string, the version of the software under which ECL runs."
;; * Set configuration pathnames. Notice the trailing slash!
;; Otherwise it would not be a directory.
;;
#-mingw32
(si::pathname-translations "SYS" '(("**;*.*" "@libdir@/**/*.*")))
#+mingw32
(si::pathname-translations "SYS"
`(("**;*.*" ,(merge-pathnames "**/*.*" (si::argv 0)))))
#+(and (not mingw32) (not ecl-min))
(si::pathname-translations "SYS" '(("**;*.*" "@ecldir@/**/*.*")))
#+(and mingw32 (not ecl-min))
(let ((d (merge-pathnames "**/*.*"
(or (si::getenv "ECLDIR") (si::argv 0)))))
(si::pathname-translations "SYS"
`(("**;*.*" ,d))))
(si::pathname-translations "HOME" '(("**;*.*" "~/**/*.*")))

View file

@ -89,7 +89,6 @@ _d=$_r/%{_docdir}/%{_nv}
for i in \
build/doc/*.html \
src/doc/BUGS \
src/doc/help.lsp \
src/doc/todo.txt
do
%{__install} -m 644 $i $_d
@ -108,15 +107,15 @@ done
# BUG: to fix problems in the installation code
#
# BUG: the cause of the first problem is in the configure.in which set the values of
# libdir, infodir, bindir
(
cd $_r/%{_prefix}
%{__installdir} -m 755 share
%{__mv} man info share
)
# BUG: the cause of this problem is an 'install -m 644' that installs "cmp.so" with
# some archive files and lisp files.
# BUG: the cause of the first problem is in the configure.in which set the
# values of libdir, infodir, bindir
#(
# cd $_r/%{_prefix}
# %{__installdir} -m 755 share
# %{__mv} man info share
#)
# BUG: the cause of this problem is an 'install -m 644' that installs "cmp.so"
# with some archive files and lisp files.
# find $_r -name "*.fas" | xargs chmod a+x
##################################################