- # vim: ts=4 sw=4 sts=4 fenc=utf-8 ff=unix :
- # =====================================================================
- # Makefile for libsc
- # =====================================================================
-
- # ---------------------------------------------------------------------
- # SETTING & OPTION
- # ---------------------------------------------------------------------
- TARGET = kscript.exe
- SRCDIR = src
- SRCS = $(wildcard src/*.c)
- OBJS = $(SRCS:src/%.c=obj/%.o)
-
- INCLUDES = -Iinclude -Itests
- CFLAGS = -Wall `./sc-config --cflags`
- LDFLAGS =
- LIBS = `./sc-config --libs`
-
- # for tests
- TESTTARGET = libsctest.exe
- TESTSRCS = $(wildcard tests/*.c)
- TESTOBJS = $(TESTSRCS:tests/%.c=tests/%.o) $(SRCS:src/%.c=tests/%.o)
- TESTCFLAGS = $(CFLAGS) -DSC_DEBUG -g -fprofile-arcs -ftest-coverage
- #TESTCFLAGS = $(CFLAGS) -g -fprofile-arcs -ftest-coverage
- TESTLIBS = `./sc-config --libs`
-
- .SUFFIXES: .o .c
-
- # ---------------------------------------------------------------------
- # COMMANDS
- # ---------------------------------------------------------------------
- AS = as
- AR = ar
- CC = gcc
- CP = cp
- MV = mv
- RANLIB = ranlib
- RM = rm
- STRIP = strip
-
- all: $(TARGET)
-
- test: $(TESTTARGET)
-
- $(TARGET): $(OBJS)
- $(CC) $(LDFLAGS) -o $(TARGET) $^ $(LIBS)
-
- obj/%.o: src/%.c
- $(CC) $(INCLUDES) $(CFLAGS) -c -o $@ $<
-
- clean:
- $(RM) -f $(TARGET) $(OBJS)
- $(RM) -f $(TESTTARGET) $(TESTOBJS) $(TESTS)
- $(RM) -f *~ */*~
- $(RM) -f unittest.tmp
- $(RM) -f */*.gcno */*.gcda
- $(RM) -f *.c.gcov
-
- $(TESTTARGET): $(TESTOBJS)
- $(CC) $(TESTCFLAGS) -o $(TESTTARGET) $^ $(TESTLIBS)
-
- tests/%.o: src/%.c
- $(CC) $(INCLUDES) $(TESTCFLAGS) -c -o $@ $<
-
- tests/%.o: tests/%.c
- $(CC) $(INCLUDES) $(TESTCFLAGS) -c -o $@ $<
-