aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile16
1 files changed, 12 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 5b2b3e1..085e78a 100644
--- a/Makefile
+++ b/Makefile
@@ -6,9 +6,11 @@ LUA_VERSION = 5.1
6# DISABLE_CJSON_GLOBAL: Do not store module is "cjson" global 6# DISABLE_CJSON_GLOBAL: Do not store module is "cjson" global
7 7
8## Build defaults 8## Build defaults
9TARGET = cjson.so
9PREFIX = /usr/local 10PREFIX = /usr/local
10#CFLAGS = -g -Wall -pedantic -fno-inline 11#CFLAGS = -g -Wall -pedantic -fno-inline
11CFLAGS = -O3 -Wall -pedantic -DNDEBUG 12CFLAGS = -O3 -Wall -pedantic -DNDEBUG
13CJSON_CFLAGS = -fpic
12CJSON_LDFLAGS = -shared 14CJSON_LDFLAGS = -shared
13LUA_INCLUDE_DIR = $(PREFIX)/include 15LUA_INCLUDE_DIR = $(PREFIX)/include
14LUA_MODULE_DIR = $(PREFIX)/lib/lua/$(LUA_VERSION) 16LUA_MODULE_DIR = $(PREFIX)/lib/lua/$(LUA_VERSION)
@@ -33,21 +35,27 @@ INSTALL_CMD = install
33## Solaris 35## Solaris
34#CJSON_CFLAGS = -DUSE_INTERNAL_ISINF 36#CJSON_CFLAGS = -DUSE_INTERNAL_ISINF
35 37
38## Windows (MinGW)
39#TARGET = cjson.dll
40#PREFIX = /home/user/opt
41#CJSON_CFLAGS =
42#CJSON_LDFLAGS = -shared -L$(PREFIX)/lib -llua51
43
36## End platform specific section 44## End platform specific section
37 45
38BUILD_CFLAGS = -fpic -I$(LUA_INCLUDE_DIR) $(CJSON_CFLAGS) 46BUILD_CFLAGS = -I$(LUA_INCLUDE_DIR) $(CJSON_CFLAGS)
39OBJS := lua_cjson.o strbuf.o fpconv.o 47OBJS := lua_cjson.o strbuf.o fpconv.o
40 48
41.PHONY: all clean install package doc 49.PHONY: all clean install package doc
42 50
43all: cjson.so 51all: $(TARGET)
44 52
45doc: manual.html 53doc: manual.html
46 54
47.c.o: 55.c.o:
48 $(CC) -c $(CFLAGS) $(CPPFLAGS) $(BUILD_CFLAGS) -o $@ $< 56 $(CC) -c $(CFLAGS) $(CPPFLAGS) $(BUILD_CFLAGS) -o $@ $<
49 57
50cjson.so: $(OBJS) 58$(TARGET): $(OBJS)
51 $(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS) 59 $(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS)
52 60
53install: cjson.so 61install: cjson.so
@@ -58,4 +66,4 @@ manual.html: manual.txt
58 asciidoc -n -a toc manual.txt 66 asciidoc -n -a toc manual.txt
59 67
60clean: 68clean:
61 rm -f *.o *.so 69 rm -f *.o $(TARGET)