From b44d09a342aee50c15c4b17ce677cc660b2ad3bc Mon Sep 17 00:00:00 2001 From: Jean-Marc Lasgouttes Date: Fri, 4 Feb 2005 09:19:55 +0000 Subject: [PATCH] more configure fixes git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9588 a592a061-630c-0410-9148-cb99ea01b6c8 --- ChangeLog | 3 +++ config/ChangeLog | 5 +++++ config/lyxinclude.m4 | 4 +++- configure.ac | 7 +++++++ lib/ChangeLog | 8 ++++++++ lib/reLyX/acinclude.m4 | 40 ++++++++++++++++++++++++++++++++++++++++ lib/reLyX/configure.ac | 13 ++++++++++++- 7 files changed, 78 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index a7f2397cad..4257c27306 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2005-02-02 Jean-Marc Lasgouttes + * configure.ac: if the prefix contains space, replace it with + ${builddir}/installprefix and issue a warning. + * configure.ac: when testing for AikSaurus, do not require libbz2. 2005-01-27 Lars Gullik Bjonnes diff --git a/config/ChangeLog b/config/ChangeLog index 60e51d5670..e5d100b27c 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,8 @@ +2005-02-03 Jean-Marc Lasgouttes + + * lyxinclude.m4 (LYX_USE_PACKAGING): remove single quotes around + prefix in the windows case; set libdir correctly. + 2005-01-20 Jean-Marc Lasgouttes * common.am (pch-file): new target, used recursively by target diff --git a/config/lyxinclude.m4 b/config/lyxinclude.m4 index 74ee91d050..15f28fe870 100644 --- a/config/lyxinclude.m4 +++ b/config/lyxinclude.m4 @@ -568,11 +568,13 @@ case $lyx_use_packaging in macosx) AC_DEFINE(USE_MACOSX_PACKAGING, 1, [Define to 1 if LyX should use a MacOS X application bundle file layout]) default_prefix="/Applications/LyX.app" bindir='${prefix}/Contents/MacOS' + libdir='${prefix}/Contents/Resources' datadir='${prefix}/Contents/Resources' mandir='${prefix}/Contents/Resources/man' ;; windows) AC_DEFINE(USE_WINDOWS_PACKAGING, 1, [Define to 1 if LyX should use a Windows-style file layout]) - default_prefix="'C:/Program Files/LyX'" + default_prefix="C:/Program Files/LyX" bindir='${prefix}/bin' + libdir='${prefix}/Resources' datadir='${prefix}/Resources' mandir='${prefix}/Resources/man' ;; posix) AC_DEFINE(USE_POSIX_PACKAGING, 1, [Define to 1 if LyX should use a POSIX-style file layout]) diff --git a/configure.ac b/configure.ac index 6ba01c3bbb..bc7b014ce2 100644 --- a/configure.ac +++ b/configure.ac @@ -229,6 +229,13 @@ LYX_USE_PACKAGING # fix the value of the prefixes. test "x$prefix" = xNONE && prefix=$default_prefix test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' +if echo $prefix |grep ' ' >/dev/null 2>/dev/null ; then + LYX_WARNING([The installation prefix \"${prefix}\" contains a space, which + causes problems with the Makefiles. The installation will be done in + directory \"`pwd`/installprefix\" instead. Please move its contents to + the right place after installation.]) + prefix=`pwd`/installprefix +fi ### Setup GNU gettext dnl GNU gettext is written in C diff --git a/lib/ChangeLog b/lib/ChangeLog index b66cde9300..85049f1170 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,11 @@ +2005-02-03 Jean-Marc Lasgouttes + + * reLyX/configure.ac: use AC_CANONICAL_TARGET; use + RELYX_USE_PACKAGING as in main configure. + + * reLyX/acinclude.m4 (RELYX_ERROR, RELYX_USE_PACKAGING): new + macros. + 2005-01-24 Jürgen Spitzmüller * ui/classic.ui, ui/stdmenus.ui: add output-changes. diff --git a/lib/reLyX/acinclude.m4 b/lib/reLyX/acinclude.m4 index a782d07774..82836d39d6 100644 --- a/lib/reLyX/acinclude.m4 +++ b/lib/reLyX/acinclude.m4 @@ -7,6 +7,15 @@ relyx_warning_txt="$relyx_warning_txt relyx_warning=yes]) +dnl Usage: RELYX_ERROR(message) Displays the error "message" and sets +dnl the flag lyx_error to yes. +AC_DEFUN([RELYX_ERROR],[ +relyx_error_txt="$relyx_error_txt +== $1 +" +relyx_error=yes]) + + dnl RELYX_SEARCH_PROG(VARIABLE-NAME,PROGRAMS-LIST,ACTION-IF-FOUND) dnl define([RELYX_SEARCH_PROG],[dnl @@ -99,3 +108,34 @@ $relyx_warning_txt EOF fi fi]) + + +dnl Check what kind of packaging should be used at install time. +dnl The default is autodetected. +AC_DEFUN([RELYX_USE_PACKAGING], +[AC_MSG_CHECKING([what packaging should be used]) +AC_ARG_WITH(packaging, + [ --with-packaging=THIS Use THIS packaging for installation: + Possible values: posix, windows, macosx], + [lyx_use_packaging="$withval"], [ + case $host in + *-apple-darwin*) lyx_use_packaging=macosx ;; + *-pc-mingw32*) lyx_use_packaging=windows;; + *) lyx_use_packaging=posix;; + esac]) +AC_MSG_RESULT($lyx_use_packaging) +case $lyx_use_packaging in + macosx) default_prefix="/Applications/LyX.app" + bindir='${prefix}/Contents/MacOS' + libdir='${prefix}/Contents/Resources' + datadir='${prefix}/Contents/Resources' + mandir='${prefix}/Contents/Resources/man' ;; + windows) default_prefix="C:/Program Files/LyX" + bindir='${prefix}/bin' + libdir='${prefix}/Resources' + datadir='${prefix}/Resources' + mandir='${prefix}/Resources/man' ;; + posix) default_prefix=$ac_default_prefix ;; + *) RELYX_ERROR([Unknown packaging type $lyx_use_packaging]) ;; +esac +]) diff --git a/lib/reLyX/configure.ac b/lib/reLyX/configure.ac index dcc4fe9f65..ef6b9f38ab 100644 --- a/lib/reLyX/configure.ac +++ b/lib/reLyX/configure.ac @@ -8,6 +8,7 @@ dnl PACKAGE=reLyX dnl Do this to install in $datadir/lyx/reLyX instead of $datadir/reLyX/reLyX AM_MAINTAINER_MODE +AC_CANONICAL_TARGET AC_ARG_WITH(version-suffix, [ --with-version-suffix[=] install lyx files as lyx], @@ -21,9 +22,19 @@ AM_INIT_AUTOMAKE($lyxname, $VERSION) # if reLyX has already been generated in this directory, delete it first test -x reLyX && rm -f reLyX + +### Check how the files should be packaged +RELYX_USE_PACKAGING # fix the value of the prefixes. -test "x$prefix" = xNONE && prefix=$ac_default_prefix +test "x$prefix" = xNONE && prefix=$default_prefix test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' +if echo $prefix |grep ' ' >/dev/null 2>/dev/null ; then + RELYX_WARNING([The installation prefix \"${prefix}\" contains a space, which + causes problems with the Makefiles. The installation will be done in + directory \"`pwd`/installprefix\" instead. Please move its contents to + the right place after installation.]) + prefix=`pwd`/installprefix +fi # we need to expand ${datadir} to put it into the reLyX wrapper. LYX_DIR=`eval "echo \`eval \"echo ${datadir}/${PACKAGE}\"\`"`