summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorBent Bisballe Nyeng <deva@aasimon.org>2013-01-04 10:47:29 +0100
committerBent Bisballe Nyeng <deva@aasimon.org>2013-01-04 10:47:29 +0100
commit4117304567ceb9454599a4e2889f09443382f74a (patch)
tree10cc3a89e8a90a5d8002d28e6c809148360a6e38 /Makefile
parenta650e7a58ae25d32510894f6efbe78ef659db774 (diff)
Make compilable throgh both c and c++ and linkable with both using debug.hpp if c++ app links with debug compield with c compiler.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile21
1 files changed, 18 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index c397c53..45b6460 100644
--- a/Makefile
+++ b/Makefile
@@ -1,29 +1,44 @@
include Makefile.files
CFLAGS=-Werror -Wall -D_FORTIFY_SOURCE=2 -g -O2
+CXXFLAGS=$(CFLAGS)
-all: complete complete-cpp simple syslog filter mutex minimal
+all: complete obj simple syslog filter mutex minimal
complete:
gcc ${CFLAGS} ${DEBUG_SOURCES} main_complete.c -o debug-complete -DWITH_DBG_SYSLOG -DWITH_DBG_FILTER -DWITH_DBG_MUTEX
+ g++ ${CXXFLAGS} ${DEBUG_SOURCES} main_complete.c -o debug-complete -DWITH_DBG_SYSLOG -DWITH_DBG_FILTER -DWITH_DBG_MUTEX
-complete-cpp:
- g++ ${CFLAGS} ${DEBUG_SOURCES} main_complete.c -o debug-complete-cpp -DWITH_DBG_SYSLOG -DWITH_DBG_FILTER -DWITH_DBG_MUTEX
+obj:
+# Compile debug as c prog and link with c++ program (use debug.hpp)
+ g++ ${CXXFLAGS} main_simple.cc -c
+ gcc ${CFLAGS} debug.c -c
+ g++ main_simple.o debug.o -o debug-obj
+
+# Compile debug as c++ prog and link with c++ program
+ g++ ${CXXFLAGS} main_simple.c -c
+ g++ ${CXXFLAGS} debug.c -c
+ g++ main_simple.o debug.o -o debug-obj
simple:
gcc ${CFLAGS} debug.c main_simple.c -o debug-simple
+ g++ ${CXXFLAGS} debug.c main_simple.c -o debug-simple
minimal:
gcc ${CFLAGS} debug.c main_minimal.c -o debug-minimal
+ g++ ${CXXFLAGS} debug.c main_minimal.c -o debug-minimal
syslog:
gcc ${CFLAGS} debug.c debug_syslog.c main_syslog.c -o debug-syslog -DWITH_DBG_SYSLOG
+ g++ ${CXXFLAGS} debug.c debug_syslog.c main_syslog.c -o debug-syslog -DWITH_DBG_SYSLOG
filter:
gcc ${CFLAGS} debug.c debug_filter.c main_filter.c -o debug-filter -DWITH_DBG_FILTER
+ g++ ${CXXFLAGS} debug.c debug_filter.c main_filter.c -o debug-filter -DWITH_DBG_FILTER
mutex:
gcc ${CFLAGS} debug.c main_mutex.c -o debug-mutex -DWITH_DBG_MUTEX
+ g++ ${CXXFLAGS} debug.c main_mutex.c -o debug-mutex -DWITH_DBG_MUTEX
clean:
rm -f debug_{complete,complete-cpp,simple,syslog,filter,mutex,minimal} \ No newline at end of file