From 12afcedc0a460eb6e3d996fbfa147d1e80d7f256 Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Mon, 25 Sep 2006 14:13:23 +0000 Subject: [PATCH] Autotools "--with-linux" switch; "mydist" target --- Makefile.am | 4 ++++ configure.ac | 41 ++++++++++++++++++++++++++------------- devices/Makefile.am | 6 +++--- examples/mini/Makefile.am | 6 +++--- examples/msr/Makefile.am | 6 +++--- examples/rtai/Makefile.am | 6 +++--- master/Makefile.am | 6 +++--- 7 files changed, 47 insertions(+), 28 deletions(-) diff --git a/Makefile.am b/Makefile.am index 1110cf8d..9a628f5a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -68,6 +68,9 @@ MSR_FILES = \ EXTRA_DIST = $(noinst_SCRIPTS) $(MINI_FILES) $(RTAI_FILES) $(MSR_FILES) +mydist: + $(MAKE) dist distdir=$(PACKAGE)-$(VERSION)-r`svnversion $(srcdir)` + dist-hook: if which svnversion >/dev/null 2>&1; then \ svnversion $(srcdir) 2>/dev/null >$(distdir)/svnrevision; \ @@ -80,6 +83,7 @@ install-data-local: $(INSTALL_SCRIPT) $(srcdir)/script/lsec.pl $(bindir)/lsec $(INSTALL_SCRIPT) $(srcdir)/script/ethercat.sh $(initdir)/ethercat $(INSTALL_DATA) $(srcdir)/script/sysconfig $(sysdir)/ethercat + $(DEPMOD) $(LINUX_KERNEL_VERSION) uninstall-local: rm -rf $(LINUX_MODULES_DIR)/ethercat diff --git a/configure.ac b/configure.ac index 72da1328..a01faed1 100644 --- a/configure.ac +++ b/configure.ac @@ -14,27 +14,42 @@ AC_CONFIG_FILES([Makefile master/Makefile devices/Makefile \ # Linux sources #------------------------------------------------------------------------------ -AC_ARG_WITH([linux-dir], +AC_ARG_WITH([linux], AC_HELP_STRING( - [--with-linux-dir=], - [Linux source directory @<:@/lib/modules//build@:>@]), + [--with-linux=], + [Linux kernel version @<:@running kernel@:>@] + ), [ ], - [ - modulesdir=/lib/modules/`uname -r` - withval=${modulesdir}/build - ]) + [version=`uname -r`] +) -AC_MSG_CHECKING([for Linux source tree]) - -if test \! -r ${withval}/Makefile; then +AC_MSG_CHECKING([for Linux kernel]) +modulesdir=/lib/modules/${version} +if test \! -d ${modulesdir} || test \! -d ${modulesdir}/build; then echo - AC_MSG_ERROR([No Linux kernel tree in $withval]) + AC_MSG_ERROR([Invalid modules directory ${modulesdir}]) +fi +sourcedir=`cd ${modulesdir}/build && pwd -P` +if test \! -r ${sourcedir}/Makefile; then + echo + AC_MSG_ERROR([No Linux kernel tree in $sourcedir]) fi -AC_SUBST(LINUX_DIR,[$withval]) +AC_SUBST(LINUX_KERNEL_VERSION,[$version]) +AC_SUBST(LINUX_SOURCE_DIR,[$sourcedir]) AC_SUBST(LINUX_MODULES_DIR,[$modulesdir]) -AC_MSG_RESULT($LINUX_DIR) +AC_MSG_RESULT($LINUX_KERNEL_VERSION) + +#------------------------------------------------------------------------------ +# Depmod +#------------------------------------------------------------------------------ + +AC_PATH_PROG([DEPMOD], [depmod],, [$PATH:/sbin:/usr/sbin:/usr/local/sbin]) + +if test -z "$DEPMOD"; then + AC_MSG_WARN([depmod was not found!]); +fi #------------------------------------------------------------------------------ diff --git a/devices/Makefile.am b/devices/Makefile.am index 8008898d..0727a2b3 100644 --- a/devices/Makefile.am +++ b/devices/Makefile.am @@ -44,13 +44,13 @@ EXTRA_DIST = \ ABSSRCDIR = `cd $(srcdir) && pwd -P` all: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" modules + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" modules clean-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" clean + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" clean install-data-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" \ + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" \ INSTALL_MOD_DIR="ethercat" modules_install #------------------------------------------------------------------------------ diff --git a/examples/mini/Makefile.am b/examples/mini/Makefile.am index c3427955..9ab35553 100644 --- a/examples/mini/Makefile.am +++ b/examples/mini/Makefile.am @@ -38,13 +38,13 @@ ABSSRCDIR = `cd $(srcdir) && pwd -P` all: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" modules + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" modules clean-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" clean + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" clean install-data-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" \ + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" \ INSTALL_MOD_DIR="ethercat" modules_install #------------------------------------------------------------------------------ diff --git a/examples/msr/Makefile.am b/examples/msr/Makefile.am index fb32a16d..24acdf74 100644 --- a/examples/msr/Makefile.am +++ b/examples/msr/Makefile.am @@ -45,13 +45,13 @@ EXTRA_DIST = \ ABSSRCDIR = `cd $(srcdir) && pwd -P` all: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" modules + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" modules clean-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" clean + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" clean install-data-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" \ + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" \ INSTALL_MOD_DIR="ethercat" modules_install #------------------------------------------------------------------------------ diff --git a/examples/rtai/Makefile.am b/examples/rtai/Makefile.am index f00511f3..acace65b 100644 --- a/examples/rtai/Makefile.am +++ b/examples/rtai/Makefile.am @@ -40,13 +40,13 @@ EXTRA_DIST = Kbuild rtai_sample.c ABSSRCDIR = `cd $(srcdir) && pwd -P` all: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" modules + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" modules clean-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" clean + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" clean install-data-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" \ + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" \ INSTALL_MOD_DIR="ethercat" modules_install #------------------------------------------------------------------------------ diff --git a/master/Makefile.am b/master/Makefile.am index ff8e6bcb..52fdde0f 100644 --- a/master/Makefile.am +++ b/master/Makefile.am @@ -54,13 +54,13 @@ EXTRA_DIST = \ ABSSRCDIR = `cd $(srcdir) && pwd -P` all: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" modules + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" modules clean-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" clean + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" clean install-data-local: - $(MAKE) -C "$(LINUX_DIR)" M="$(ABSSRCDIR)" \ + $(MAKE) -C "$(LINUX_SOURCE_DIR)" M="$(ABSSRCDIR)" \ INSTALL_MOD_DIR="ethercat" modules_install #------------------------------------------------------------------------------