Automatically binding targets to the correct (hardcoded for now) paths.
[vlp.git] / Makefile.am
1 AUTOMAKE_OPTIONS = gnu subdir-objects
2 ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS}
3
4 MOC = ${MOCDIR}/${MOCNAME}
5
6 #AM_CXXFLAGS= -Wall -pedantic -Wextra -fno-strength-reduce
7 #AM_CXXFLAGS = -m32
8 AM_CXXFLAGS = -I$(top_srcdir)/src/global
9 AM_LDFLAGS= -fPIC
10
11
12 bin_PROGRAMS = \
13   bin/loggraph \
14   bin/lognet \
15   bin/logker \
16   bin/logint \
17   bin/logedit \
18   bin/lgconfig \
19   bin/logcomp \
20   bin/loghelp
21
22 BUILT_SOURCES = \
23   src/graph/loggraph.moc \
24   src/net/lognet.moc.cpp \
25   src/kernel/kernel.moc \
26   src/edit/editor.moc.cpp \
27   src/lgconfig/lgconfig.moc \
28   src/preproc/prep.moc.cpp \
29   src/help/help.moc
30
31 bin_loggraph_SOURCES = src/graph/loggraph.cpp src/graph/loggraph.moc
32 bin_loggraph_CPPFLAGS = $(bin_loggraph_CFLAGS)
33 bin_loggraph_LDADD = $(bin_loggraph_LIBS)
34 src/graph/loggraph.moc: 
35         $(MOC) -i src/graph/loggraph.cpp -o src/graph/loggraph.moc
36
37 clean-loggraph-extra:
38         rm -f src/graph/*.moc.cpp
39         rm -f bin/modules/loggraph
40
41 bin_lognet_SOURCES = src/net/lognet.cpp src/net/lognet.moc.cpp
42 bin_lognet_CPPFLAGS = $(bin_lognet_CFLAGS)
43 bin_lognet_LDADD = $(bin_lognet_LIBS)
44 src/net/lognet.moc.cpp:
45         $(MOC) -i src/net/lognet.cpp -o src/net/lognet.moc.cpp
46
47 clean-lognet-extra:
48         rm -f src/net/*.moc.cpp
49         rm -f bin/modules/lognet
50         
51 bin_logker_SOURCES = src/kernel/kernel.cpp src/kernel/kernel.moc
52 bin_logker_CPPFLAGS = $(bin_logker_CFLAGS)
53 bin_logker_LDADD = $(bin_logker_LIBS)
54 src/kernel/kernel.moc:
55         $(MOC) -i src/kernel/kernel.cpp -o src/kernel/kernel.moc
56         
57 clean-logker-extra:
58         rm -f src/kernel/*.moc
59         
60 bin_logint_SOURCES = \
61   src/int/cint.c \
62   src/int/compact.c \
63   src/int/control.c \
64   src/int/util.c \
65   src/int/handler.c \
66   src/int/intdt.c \
67   src/int/memory.c \
68   src/int/object.c \
69   src/int/runsys.c \
70   src/int/standard.c \
71   src/int/execute.c \
72   src/int/fileio.c \
73   src/int/nonstand.c \
74   src/int/process.c \
75   src/int/procaddr.c \
76   src/int/queue.c \
77   src/int/rpcall.c \
78   src/int/typchk.c 
79
80 # TODO: logint is compiled using gcc instead of g++, for some reason it losts -I./src/global directive
81 #       force adding it.
82 bin_logint_CPPFLAGS = $(bin_logint_CFLAGS) -DUNIX -DWORD_32BIT -DUSE_CLOCK -Dpascal= -DOBJECTADDR -DSYSV -I$(top_srcdir)/src/global -I/usr/include/qt3
83 bin_logint_LDADD = $(bin_logint_LIBS) -lm -lqt-mt
84
85 bin_logedit_SOURCES = src/edit/editor.cpp src/edit/editor.moc.cpp 
86 bin_logedit_CPPFLAGS = $(bin_logedit_CFLAGS) 
87 bin_logedit_LDADD = $(bin_logedit_LIBS)
88
89 src/edit/editor.moc.cpp: src/edit/editor.h
90         $(MOC) src/edit/editor.h -o src/edit/editor.moc.cpp
91
92
93 clean-logedit-extra:
94         rm -f src/edit/*.moc.cpp
95         rm -f bin/modules/logedit
96
97 bin_lgconfig_SOURCES = src/lgconfig/lgconfig.cpp src/lgconfig/lgconfig.moc
98 bin_lgconfig_CPPFLAGS = $(bin_lgconfig_CFLAGS)
99 bin_lgconfig_LDADD = $(bin_lgconfig_LIBS)
100 src/lgconfig/lgconfig.moc:
101         $(MOC) -i src/lgconfig/lgconfig.cpp -o src/lgconfig/lgconfig.moc
102
103 clean-lgconfig-extra:
104         rm -f src/lgconfig/*.moc
105
106 bin_logcomp_SOURCES = src/preproc/prep.cpp src/preproc/prep.moc.cpp
107 bin_logcomp_CPPFLAGS = $(bin_logcomp_CFLAGS)
108 bin_logcomp_LDADD = $(bin_logcomp_LIBS)
109 src/preproc/prep.moc.cpp: src/preproc/prep.cpp 
110         $(MOC) src/preproc/prep.cpp -o src/preproc/prep.moc.cpp
111
112 clean-logcomp-extra:
113         rm -f src/preproc/*.moc
114
115 bin_loghelp_SOURCES = src/help/help.cpp src/help/help.moc
116 bin_loghelp_CPPFLAGS = $(bin_loghelp_CFLAGS)
117 bin_loghelp_LDADD = $(bin_loghelp_LIBS)
118 src/help/help.moc:
119         $(MOC) -i src/help/help.cpp -o src/help/help.moc
120
121 clean-loghelp-extra:
122         rm -f src/help/*.moc
123         rm -f bin/modules/loghelp
124
125 all-local:
126         test -d bin/modules || mkdir bin/modules
127         ln -fs ../logedit bin/modules/
128         ln -fs ../loggraph bin/modules/
129         ln -fs ../loghelp bin/modules/
130         ln -fs ../lognet bin/modules/
131         
132 CLEANFILES = \
133         %.o \
134         %.bak \
135   %~
136
137 clean-am: \
138   clean-loggraph-extra \
139   clean-lognet-extra \
140   clean-logker-extra \
141   clean-logedit-extra \
142   clean-lgconfig-extra \
143   clean-logcomp-extra \
144   clean-loghelp-extra
145         rm -r bin/modules
146
147 dist_noinst_SCRIPTS = autogen.sh