From: David Schleef Date: Fri, 1 Apr 2005 03:00:52 +0000 (+0000) Subject: Make distcheck work. Add LINUX_MODULE_STYLE to indicate module X-Git-Tag: r0_7_70~6 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=c5a7cf264f0a4dd68c6a6db49ede03d178141830;p=comedi.git Make distcheck work. Add LINUX_MODULE_STYLE to indicate module building style. --- diff --git a/Makefile.am b/Makefile.am index 275c9958..35792785 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,11 @@ SUBDIRS = comedi -EXTRA_DIST = Documentation include m4 scripts autogen.sh +EXTRA_DIST = Documentation include scripts autogen.sh \ + m4/as-linux.m4 \ + m4/as-modtool.m4 \ + m4/rtai.m4 \ + m4/rtlinux.m4 ACLOCAL_AMFLAGS = -I m4 @@ -19,8 +23,5 @@ moo: (cd comedi/drivers;for each in *.c;do ../../scripts/check_driver $$each;done >../../drivers.check) (grep '^.:' drivers.check >drivers.summary) -install-data-hook: - if [ -z "$(DESTDIR)" ] ; then \ - $(DEPMOD) -ae $(LINUX_KERNELRELEASE); \ - fi +DISTCLEANFILES = modtool diff --git a/comedi/Makefile.am b/comedi/Makefile.am index 9464b678..3b146e9f 100644 --- a/comedi/Makefile.am +++ b/comedi/Makefile.am @@ -26,3 +26,7 @@ comedi_ko_LINK = $(top_builddir)/modtool --link -o $@ #comedi_ksyms.o: comedi_ksyms.c # $(CC) -o $@ comedi_ksyms.c $(CFLAGS) $(COMEDI_CFLAGS) $(LINUX_CFLAGS) -DEXPORT_SYMTAB +clean-modulePROGRAMS: + -test -z "$(module_PROGRAMS)" || rm -f $(module_PROGRAMS) + -rm -rf .mods + diff --git a/comedi/drivers/Makefile.am b/comedi/drivers/Makefile.am index d6095a2e..110127a8 100644 --- a/comedi/drivers/Makefile.am +++ b/comedi/drivers/Makefile.am @@ -232,3 +232,8 @@ ssv_dnp_ko_SOURCES = ssv_dnp.c comedi_test_ko_SOURCES = comedi_test.c usbdux_ko_SOURCES = usbdux.c usbduxfast_ko_SOURCES = usbduxfast.c + +clean-modulePROGRAMS: + -test -z "$(module_PROGRAMS)" || rm -f $(module_PROGRAMS) + -rm -rf .mods + diff --git a/comedi/kcomedilib/Makefile.am b/comedi/kcomedilib/Makefile.am index 108da7e2..aceb2359 100644 --- a/comedi/kcomedilib/Makefile.am +++ b/comedi/kcomedilib/Makefile.am @@ -8,4 +8,7 @@ kcomedilib_ko_LINK = $(top_builddir)/modtool --link -o $@ -i ../.mods/comedi.o.s #ksyms.o: ksyms.c # $(CC) -o $@ ksyms.c $(CFLAGS) $(COMEDI_CFLAGS) $(LINUX_CFLAGS) -DEXPORT_SYMTAB +clean-modulePROGRAMS: + -test -z "$(module_PROGRAMS)" || rm -f $(module_PROGRAMS) + -rm -rf .mods diff --git a/configure.ac b/configure.ac index e5f173ad..62cf1dc6 100644 --- a/configure.ac +++ b/configure.ac @@ -74,6 +74,9 @@ AS_LINUX_CONFIG_OPTION_MODULE(CONFIG_USB) AC_DEFINE(CONFIG_COMEDI_DEBUG, true, [Define if debugging is enabled]) AC_DEFINE(CONFIG_COMEDI_8255, true, [Define if 8255 support is enabled]) +DISTCHECK_CONFIGURE_FLAGS="--with-modulesdir=\\\$\$\(prefix\)/modules" +AC_SUBST(DISTCHECK_CONFIGURE_FLAGS) + AC_OUTPUT([ Makefile comedi/Makefile diff --git a/m4/as-linux.m4 b/m4/as-linux.m4 index d774476a..393d4a94 100644 --- a/m4/as-linux.m4 +++ b/m4/as-linux.m4 @@ -48,6 +48,8 @@ dnl LINUX_LD dnl Path to linker (possibly with options) used by Linux. dnl LINUX_AS dnl Assembler used by Linux. +dnl LINUX_MODULE_STYLE +dnl Style of module building (2.4.0, 2.6.0, 2.6.6) dnl LINUX_MODULE_EXT dnl Module extension (.o or .ko) dnl LINUX_MODPOST @@ -69,10 +71,10 @@ AC_DEFUN([AS_LINUX], AS_LINUX_MACHINE() dnl check if the user supplied an rpm target arch dnl override the LINUX_MACHINE value if he did - AS_LINUX_RPM_TARGET($LINUX_KERNEL_RELEASE) + AS_LINUX_RPM_TARGET() dnl find the kernel source tree for the given uname -r - AS_LINUX_DIR($LINUX_KERNEL_RELEASE) + AS_LINUX_DIR() dnl check if user supplied an EXTRAVERSION, and if not get from uname -r AS_LINUX_EXTRAVERSION($LINUX_KERNEL_RELEASE) dnl check if user supplied a config file; if not, guess a good one @@ -119,7 +121,7 @@ AC_DEFUN([AS_LINUX_DIR], fi if test "${LINUX_DIR}" = "default" ; then - dir="/lib/modules/`uname -r`/build"; + dir="/lib/modules/$LINUX_KERNEL_RELEASE/build"; AS_TRY_LINUX_DIR([${dir}], [LINUX_DIR=${dir}], ) fi if test "${LINUX_DIR}" = "default" ; then @@ -198,7 +200,7 @@ dnl this macro possibly overrides LINUX_MACHINE dnl first argument is the kernel release building for AC_DEFUN([AS_LINUX_RPM_TARGET], [ - RELEASE=$1 + RELEASE=$LINUX_KERNEL_RELEASE AC_ARG_WITH([rpm-target], [AC_HELP_STRING([--with-rpm-target=TARGET], [specify the target arch to build for])], @@ -209,13 +211,22 @@ AC_DEFUN([AS_LINUX_RPM_TARGET], dnl if we have rpm, try to guess the target of the kernel dnl we want to build for using rpm AC_PATH_PROG(RPM, rpm, yes, no) - if test "x$RPM" = "xyes" - then - if rpm -q kernel-$RELEASE > /dev/null - then - LINUX_RPM_TARGET=`rpm -q --queryformat %{arch} kernel-$RELEASE` + if test "x$RPM" != "xno" ; then + AC_MSG_CHECKING([if rpm can be used to query packages]) + if rpm -qa >/dev/null 2>/dev/null ; then + rpm_check=yes else - AC_MSG_NOTICE([Cannot guess target arch, consider setting it using --with-rpm-target]) + rpm_check=no + fi + AC_MSG_RESULT($rpm_check) + + if test "x$rpm_check" = yes ; then + if rpm -q kernel-$RELEASE > /dev/null + then + LINUX_RPM_TARGET=`rpm -q --queryformat %{arch} kernel-$RELEASE` + else + AC_MSG_NOTICE([Cannot guess target arch, consider setting it using --with-rpm-target]) + fi fi fi fi @@ -494,6 +505,7 @@ EOF rm -rf ${tmpdir} LINUX_MODULE_EXT=".ko" + LINUX_MODULE_STYLE="2.6.6" LINUX_CFLAGS="$LINUX_CFLAGS $LINUX_CFLAGS_MODULE" @@ -508,6 +520,8 @@ EOF AC_SUBST(LINUX_LD) AC_SUBST(LINUX_AS) AC_SUBST(LINUX_MODULE_EXT) + AC_SUBST(LINUX_MODULE_STYLE) + AC_SUBST(LINUX_MODPOST) AC_MSG_RESULT([$LINUX_CFLAGS]) @@ -566,6 +580,7 @@ EOF rm -rf ${tmpdir} LINUX_MODULE_EXT=".o" + LINUX_MODULE_STYLE="2.4.0" LINUX_CFLAGS="$LINUX_CFLAGS $LINUX_MODFLAGS" @@ -585,6 +600,7 @@ EOF AC_SUBST(LINUX_LD) AC_SUBST(LINUX_AS) AC_SUBST(LINUX_MODULE_EXT) + AC_SUBST(LINUX_MODULE_STYLE) AC_MSG_RESULT([ok]) diff --git a/m4/as-modtool.m4 b/m4/as-modtool.m4 index 7d529671..8de3c4ae 100644 --- a/m4/as-modtool.m4 +++ b/m4/as-modtool.m4 @@ -55,6 +55,9 @@ LINUX_MODULE_EXT="$LINUX_MODULE_EXT" STRIP="$STRIP" CFLAGS="$CFLAGS $LINUX_CFLAGS" LINUX_DIR="$LINUX_DIR" +LINUX_MODULE_STYLE="$LINUX_MODULE_STYLE" +DEPMOD="$DEPMOD" +LINUX_KERNELRELEASE="$LINUX_KERNELRELEASE" mode=\$[1] shift @@ -82,7 +85,8 @@ case \$mode in esac done - if test "\$LINUX_MODULE_EXT" = .ko ; then + case "\$LINUX_MODULE_STYLE" in + 2.6.6) set -x mkdir -p .mods @@ -107,10 +111,15 @@ case \$mode in echo \$LINUX_LD -r -o \$target.ko .mods/\$target.mod.o .mods/\$target.o \$LINUX_LD -r -o \$target.ko .mods/\$target.mod.o .mods/\$target.o set +x - else + + ;; + 2.6.0) + ;; + 2.4.0) echo \$LINUX_LD -r -o \$target.ko \$[*] \$LINUX_LD -r -o \$target.ko \$[*] - fi + ;; + esac ;; --install) @@ -126,6 +135,12 @@ case \$mode in echo uninstall "\$module_src" "\$module_dest" rm -f "\$module_dest" ;; +--finish) + # run depmod here + if [ "$prefix" = "/" ] ; then + \$DEPMOD -ae \$LINUX_KERNELRELEASE + fi + ;; *) echo Unknown mode \$mode >&2 exit 1