cleaned up some of the document making
[comedilib.git] / Makefile
index 64b31ef89d77b88879e4166388c5e37bbb9137e8..6221b15c65b424bd881648ea5398cc5318cc751f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,25 +1,42 @@
 
 # Makefile for comedi
 
-.EXPORT_ALL_VARIABLES:
+TOPDIR=`pwd`
 
+include Config
 include version
+
+.EXPORT_ALL_VARIABLES:
+
 MAJOR=0
 
-CFLAGS = -Wall -O2
+TARGETS = comedilib
+ifeq ($(with_python),yes)
+TARGETS += python
+endif
+ifeq ($(with_perl),yes)
+TARGETS += perl
+endif
 
-all:   comedilib
+all:   $(TARGETS)
 
 SUBDIRS= lib demo comedi_calibrate testing comedi_config
 
-DOCFILES= README INSTALL `find doc -type f`
-
-INSTALLDIR=$(DESTDIR)/usr
-INSTALLDIR_LIB=$(DESTDIR)/usr/lib
-INSTALLDIR_DOC=$(DESTDIR)/usr/share/doc/libcomedi
-INSTALLDIR_MAN=$(DESTDIR)/usr/share/man
-INSTALLDIR_BIN=$(DESTDIR)/usr/bin
-INSTALLDIR_SBIN=$(DESTDIR)/usr/sbin
+DOCFILES= README `find doc -type f`
+
+INSTALLDIR=$(DESTDIR)$(PREFIX)
+INSTALLDIR_LIB=$(DESTDIR)$(PREFIX)/lib
+ifneq ($(DEB_BUILD_ARCH),)
+INSTALLDIR_DOC=$(DESTDIR)$(PREFIX)/share/doc/libcomedi
+INSTALLDIR_MAN=$(DESTDIR)$(PREFIX)/share/man
+INSTALLDIR_PERL=$(DESTDIR)$(PREFIX)/lib/perl5/
+else
+INSTALLDIR_DOC=$(DESTDIR)$(PREFIX)/doc/libcomedi
+INSTALLDIR_MAN=$(DESTDIR)$(PREFIX)/man
+INSTALLDIR_PERL=$(DESTDIR)$(PREFIX)/lib/perl/
+endif
+INSTALLDIR_BIN=$(DESTDIR)$(PREFIX)/bin
+INSTALLDIR_SBIN=$(DESTDIR)$(PREFIX)/sbin
 
 comedilib:     subdirs
 
@@ -27,20 +44,46 @@ config:     dummy
 
 install:       dummy
        install -d ${INSTALLDIR}/include
-       (cd include;install -m 644 comedilib.h ${INSTALLDIR}/include)
-       (cd include;install -m 644 comedi.h ${INSTALLDIR}/include)
+       install -m 644 include/comedilib.h ${INSTALLDIR}/include
+       install -m 644 include/comedi.h ${INSTALLDIR}/include
        install lib/libcomedi.so.${version} ${INSTALLDIR_LIB}
        (cd $(INSTALLDIR_LIB);ln -sf libcomedi.so.${version} libcomedi.so.${MAJOR})
        (cd $(INSTALLDIR_LIB);ln -sf libcomedi.so.${version} libcomedi.so)
        install -m 644 lib/libcomedi.a ${INSTALLDIR_LIB}
-       #/sbin/ldconfig -n ${INSTALLDIR}/lib
+ifneq ($(INSTALLDIR),)
        install -d ${INSTALLDIR_DOC}
        install ${DOCFILES} ${INSTALLDIR_DOC}
+endif
        install man/*.7 ${INSTALLDIR_MAN}/man7
        install man/*.8 ${INSTALLDIR_MAN}/man8
        install -s -m 755 comedi_config/comedi_config ${INSTALLDIR_SBIN}
        install -s -m 755 comedi_calibrate/comedi_calibrate ${INSTALLDIR_BIN}
 
+install_debian: install
+       install -d ${INSTALLDIR_DOC}
+       install -m 644 ${DOCFILES} ${INSTALLDIR_DOC}
+       install -d $(DESTDIR)/etc/pcmcia/
+       install -m 755 etc/pcmcia/comedi $(DESTDIR)/etc/pcmcia/
+       install -m 644 etc/pcmcia/comedi.conf $(DESTDIR)/etc/pcmcia/
+       install -m 644 etc/pcmcia/comedi.opts $(DESTDIR)/etc/pcmcia/
+       install -m 755 etc/das1600.conf $(INSTALLDIR_DOC)/examples
+       install -m 755 etc/dt282x.conf $(INSTALLDIR_DOC)/examples
+ifeq ($(with_perl),yes)
+       install -d $(INSTALLDIR_PERL)
+       install -m 644 perl/blib/lib/Comedi.pm $(INSTALLDIR_PERL)/
+       install -d $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/lib/Comedi/Lib.pm $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/lib/Comedi/Trigger.pm $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/arch/auto/Comedi/Lib/Lib.so $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/arch/auto/Comedi/Lib/Lib.bs $(INSTALLDIR_PERL)/Comedi
+       #install -m 644 perl/blib/arch/auto/Comedi/Trigger.so $(INSTALLDIR_PERL)/Comedi
+       #install -m 644 perl/blib/arch/auto/Comedi/Trigger.bs $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/arch/auto/Comedi/Comedi.so $(INSTALLDIR_PERL)/Comedi
+       install -m 644 perl/blib/arch/auto/Comedi/Comedi.bs $(INSTALLDIR_PERL)/Comedi
+endif
+ifeq ($(with_python),yes)
+endif
+
 lpr:   dummy
        find . -name '*.[chs]'|xargs enscript -2r -pit.ps
 
@@ -49,9 +92,20 @@ subdirs:     dummy
 
 clean: dummy
        set -e;for i in $(SUBDIRS);do ${MAKE} clean -C $$i ; done
+       # These will fail if nothing was built, but that's not a problem
+       -$(MAKE) -C python distclean
+       -$(MAKE) -C perl distclean
 
 distclean:     clean
 
+python: dummy
+       $(MAKE) -C python -f Makefile.pre.in boot
+       $(MAKE) -C python all
+
+perl:  dummy
+       (cd perl;perl Makefile.PL)
+       $(MAKE) -C perl all
+       
 debian: dummy
        chmod 755 debian/rules
        dpkg-buildpackage -rfakeroot