Merge remote-tracking branch 'origin/master' into for-steve
[sxemacs] / modules / cl / Makefile.am
1 ## This file is part of SXEmacs.
2
3 ## Redistribution and use in source and binary forms, with or without
4 ## modification, are permitted provided that the following conditions
5 ## are met:
6 ##
7 ## 1. Redistributions of source code must retain the above copyright
8 ##    notice, this list of conditions and the following disclaimer.
9 ##
10 ## 2. Redistributions in binary form must reproduce the above copyright
11 ##    notice, this list of conditions and the following disclaimer in the
12 ##    documentation and/or other materials provided with the distribution.
13 ##
14 ## 3. Neither the name of the author nor the names of any contributors
15 ##    may be used to endorse or promote products derived from this
16 ##    software without specific prior written permission.
17 ##
18 ## THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR
19 ## IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 ## WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 ## DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22 ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 ## CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 ## SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
25 ## BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 ## WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
27 ## OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
28 ## IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
30 ## Process this file with automake to produce Makefile.in
31
32 MODVER=0.0.0
33
34 # Help the Developers and yourself. Just use the C locale and settings
35 # for the compilation. They can still be overriden by make LANG=<whatever>
36 # but that is general a not very good idea
37 LANG=C
38 LC_ALL=C
39
40 builddir = @builddir@
41 srcdir = @srcdir@
42 top_builddir = @top_builddir@
43 top_build_prefix = $(top_builddir)/
44 top_srcdir = @top_srcdir@
45 abs_builddir = @abs_builddir@
46 abs_top_builddir = @abs_top_builddir@
47 abs_top_srcdir = @abs_top_srcdir@
48 headerdir = $(includedir)/$(instvarsepdir)
49
50 AM_CFLAGS = $(dll_cflags) -DIMA_MODULE
51 AM_CPPFLAGS = -I$(srcdir) -I$(builddir)  -I$(top_srcdir)/src \
52         -I$(top_builddir)/src $(SXEMACS_INCLUDES) $(c_switch_all)
53 AM_LDFLAGS = -module $(XCCLDFLAGS)
54 AM_YFLAGS = -d
55
56 ## all the mods
57 module_LTLIBRARIES =
58 BUILT_SOURCES = cl.doc.c cl-loop.doc.c
59 header_HEADERS = cl.h cl-loop.h
60
61 ## Now the subemods
62 module_LTLIBRARIES += cl.la
63 cl_la_SOURCES = cl.c cl-loop.c cl-loop-parser.y
64 nodist_cl_la_SOURCES = cl.doc.c
65 cl_ell_CFLAGS = $(AM_CFLAGS) -DEMOD_CL_MONOMOD
66
67 module_LTLIBRARIES += cl-loop.la
68 BUILT_SOURCES += cl-loop-parser.h cl-loop-parser.c
69 cl_loop_la_SOURCES = cl-loop.c cl-loop-parser.y
70 nodist_cl_loop_la_SOURCES = cl-loop.doc.c
71
72 #cl-loop.tab.c: cl-loop.y
73 #       $(BISON) -o$@ $<
74
75 CLEANFILES = $(BUILT_SOURCES) auto-autoloads.el{,c} core* libcl.a
76
77 ## custom rules
78 SXEMACS = $(top_builddir)/src/sxemacs
79 make_docfile = $(MAKE_DOCFILE)
80 BITCH = $(SXEMACS) -batch
81 BITCHENV = EMACSPACKAGEPATH= SOURCE_TREE_ROOT=$(abs_top_srcdir) BUILD_TREE_ROOT=$(abs_top_builddir)
82 BATCH = $(BITCHENV) $(BITCH)
83 RM = rm -f
84
85 ## The benchmark environment
86 testbmdir = $(top_srcdir)/tests/benchmark
87 bm_environment = $(BATCH) -l ${testbmdir}/benchmark.el
88
89 _cl-loop_benchmarks: cl-loop.la
90         $(bm_environment) -l $(srcdir)/cl-loop-profs.el
91
92 benchmarks: _cl-loop_benchmarks
93
94 #
95 # Help the SXEmacs developers get nice post-processed source files
96
97 ## the libtool approach
98 SUFFIXES = .doc.c
99 .c.doc.c: $(MAKE_DOCFILE)
100         $(make_docfile) --modname $* -E $@ $<
101
102 ## Create preprocessor output (debugging purposes only)
103 .c.i:
104         $(COMPILE) -E -o $@ $<
105
106 ## Create assembler output (debugging purposes only)
107 .c.s:
108         $(COMPILE) -S -c $(cflags) $<