Make it work with the parallel port again
[comedilib.git] / Makefile
1
2 # Makefile for comedi
3
4 TOPDIR=`pwd`
5
6 include Config
7 include version
8
9 .EXPORT_ALL_VARIABLES:
10
11 MAJOR=0
12
13 TARGETS = comedilib
14 ifeq ($(with_python),yes)
15 TARGETS += python
16 endif
17 ifeq ($(with_perl),yes)
18 TARGETS += perl
19 endif
20
21 all:    $(TARGETS)
22
23 SUBDIRS= lib demo comedi_calibrate testing comedi_config
24
25 DOCFILES= README `find doc -type f`
26
27 INSTALLDIR=$(DESTDIR)$(PREFIX)
28 INSTALLDIR_LIB=$(DESTDIR)$(PREFIX)/lib
29 ifneq ($(DEB_BUILD_ARCH),)
30 INSTALLDIR_DOC=$(DESTDIR)$(PREFIX)/share/doc/libcomedi
31 INSTALLDIR_MAN=$(DESTDIR)$(PREFIX)/share/man
32 INSTALLDIR_PERL=$(DESTDIR)$(PREFIX)/lib/perl5/
33 else
34 INSTALLDIR_DOC=$(DESTDIR)$(PREFIX)/doc/libcomedi
35 INSTALLDIR_MAN=$(DESTDIR)$(PREFIX)/man
36 INSTALLDIR_PERL=$(DESTDIR)$(PREFIX)/lib/perl/
37 endif
38 INSTALLDIR_BIN=$(DESTDIR)$(PREFIX)/bin
39 INSTALLDIR_SBIN=$(DESTDIR)$(PREFIX)/sbin
40
41 comedilib:      subdirs
42
43 config: dummy
44
45 install:        install_dev install_runtime install_doc
46
47 install_dev:    dummy
48         install -d ${INSTALLDIR}/include
49         install -m 644 include/comedilib.h ${INSTALLDIR}/include
50         install -m 644 include/comedi.h ${INSTALLDIR}/include
51         (cd $(INSTALLDIR_LIB);ln -sf libcomedi.so.${version} libcomedi.so)
52         install -m 644 lib/libcomedi.a ${INSTALLDIR_LIB}
53
54 install_runtime:
55         install lib/libcomedi.so.${version} ${INSTALLDIR_LIB}
56         (cd $(INSTALLDIR_LIB);ln -sf libcomedi.so.${version} libcomedi.so.${MAJOR})
57         install -s -m 755 comedi_config/comedi_config ${INSTALLDIR_SBIN}
58         install -s -m 755 comedi_calibrate/comedi_calibrate ${INSTALLDIR_BIN}
59
60 install_doc:
61 ifneq ($(INSTALLDIR),)
62         install -d ${INSTALLDIR_DOC}
63         install ${DOCFILES} ${INSTALLDIR_DOC}
64 endif
65         install man/*.7 ${INSTALLDIR_MAN}/man7
66         install man/*.8 ${INSTALLDIR_MAN}/man8
67
68 install_debian: install
69         install -d ${INSTALLDIR_DOC}
70         install -m 644 ${DOCFILES} ${INSTALLDIR_DOC}
71         install -d $(DESTDIR)/etc/pcmcia/
72         install -m 755 etc/pcmcia/comedi $(DESTDIR)/etc/pcmcia/
73         install -m 644 etc/pcmcia/comedi.conf $(DESTDIR)/etc/pcmcia/
74         install -m 644 etc/pcmcia/comedi.opts $(DESTDIR)/etc/pcmcia/
75         install -m 755 etc/das1600.conf $(INSTALLDIR_DOC)/examples
76         install -m 755 etc/dt282x.conf $(INSTALLDIR_DOC)/examples
77 ifeq ($(with_perl),yes)
78         install -d $(INSTALLDIR_PERL)
79         install -m 644 perl/blib/lib/Comedi.pm $(INSTALLDIR_PERL)/
80         install -d $(INSTALLDIR_PERL)/Comedi
81         install -m 644 perl/blib/lib/Comedi/Lib.pm $(INSTALLDIR_PERL)/Comedi
82         install -m 644 perl/blib/lib/Comedi/Trigger.pm $(INSTALLDIR_PERL)/Comedi
83         install -m 644 perl/blib/arch/auto/Comedi/Lib/Lib.so $(INSTALLDIR_PERL)/Comedi
84         install -m 644 perl/blib/arch/auto/Comedi/Lib/Lib.bs $(INSTALLDIR_PERL)/Comedi
85         #install -m 644 perl/blib/arch/auto/Comedi/Trigger.so $(INSTALLDIR_PERL)/Comedi
86         #install -m 644 perl/blib/arch/auto/Comedi/Trigger.bs $(INSTALLDIR_PERL)/Comedi
87         install -m 644 perl/blib/arch/auto/Comedi/Comedi.so $(INSTALLDIR_PERL)/Comedi
88         install -m 644 perl/blib/arch/auto/Comedi/Comedi.bs $(INSTALLDIR_PERL)/Comedi
89 endif
90 ifeq ($(with_python),yes)
91 endif
92
93 lpr:    dummy
94         find . -name '*.[chs]'|xargs enscript -2r -pit.ps
95
96 subdirs:        dummy
97         set -e;for i in ${SUBDIRS};do ${MAKE} -C $$i ; done
98
99 clean:  dummy
100         set -e;for i in $(SUBDIRS);do ${MAKE} clean -C $$i ; done
101         # These will fail if nothing was built, but that's not a problem
102         -$(MAKE) -C python distclean
103         -$(MAKE) -C perl distclean
104
105 distclean:      clean
106
107 python: dummy
108         $(MAKE) -C python -f Makefile.pre.in boot
109         $(MAKE) -C python all
110
111 perl:   dummy
112         (cd perl;perl Makefile.PL)
113         $(MAKE) -C perl all
114         
115 debian: dummy
116         chmod 755 debian/rules
117         dpkg-buildpackage -rfakeroot
118
119 dev:    dummy
120         -rm /dev/comedi*
121         /bin/mknod /dev/comedi0 c 98 0
122         /bin/mknod /dev/comedi1 c 98 1
123         /bin/mknod /dev/comedi2 c 98 2
124         /bin/mknod /dev/comedi3 c 98 3
125         chown root.root /dev/comedi*
126         chmod 666 /dev/comedi*
127
128 dummy:
129