aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile32
1 files changed, 27 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index b283634..bf2b07f 100644
--- a/Makefile
+++ b/Makefile
@@ -18,8 +18,9 @@ CFLAGS = -O3 -Wall -pedantic -DNDEBUG
18CJSON_CFLAGS = -fpic 18CJSON_CFLAGS = -fpic
19CJSON_LDFLAGS = -shared 19CJSON_LDFLAGS = -shared
20LUA_INCLUDE_DIR = $(PREFIX)/include 20LUA_INCLUDE_DIR = $(PREFIX)/include
21LUA_MODULE_DIR = $(PREFIX)/lib/lua/$(LUA_VERSION) 21LUA_CMODULE_DIR = $(PREFIX)/lib/lua/$(LUA_VERSION)
22INSTALL_CMD = install 22LUA_MODULE_DIR = $(PREFIX)/share/lua/$(LUA_VERSION)
23LUA_BIN_DIR = $(PREFIX)/bin
23 24
24##### Platform overrides ##### 25##### Platform overrides #####
25## 26##
@@ -45,6 +46,7 @@ INSTALL_CMD = install
45#PREFIX = /home/user/opt 46#PREFIX = /home/user/opt
46#CJSON_CFLAGS = -DDISABLE_INVALID_NUMBERS 47#CJSON_CFLAGS = -DDISABLE_INVALID_NUMBERS
47#CJSON_LDFLAGS = -shared -L$(PREFIX)/lib -llua51 48#CJSON_LDFLAGS = -shared -L$(PREFIX)/lib -llua51
49#LUA_BIN_SUFFIX = .lua
48 50
49##### Use built in number conversion (optional) ##### 51##### Use built in number conversion (optional) #####
50 52
@@ -62,11 +64,18 @@ INSTALL_CMD = install
62 64
63##### End customisable sections ##### 65##### End customisable sections #####
64 66
67TEST_FILES = README bench.lua genutf8.pl test.lua octets-escaped.dat \
68 example1.json example2.json example3.json example4.json \
69 example5.json numbers.json rfc-example1.json \
70 rfc-example2.json types.json
71DATAPERM = 644
72EXECPERM = 755
73
65BUILD_CFLAGS = -I$(LUA_INCLUDE_DIR) $(CJSON_CFLAGS) 74BUILD_CFLAGS = -I$(LUA_INCLUDE_DIR) $(CJSON_CFLAGS)
66FPCONV_OBJS ?= fpconv.o 75FPCONV_OBJS ?= fpconv.o
67OBJS := lua_cjson.o strbuf.o $(FPCONV_OBJS) 76OBJS := lua_cjson.o strbuf.o $(FPCONV_OBJS)
68 77
69.PHONY: all clean install package doc 78.PHONY: all clean install install-extra doc
70 79
71all: $(TARGET) 80all: $(TARGET)
72 81
@@ -79,8 +88,21 @@ $(TARGET): $(OBJS)
79 $(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS) 88 $(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS)
80 89
81install: $(TARGET) 90install: $(TARGET)
82 mkdir -p $(DESTDIR)/$(LUA_MODULE_DIR) 91 mkdir -p $(DESTDIR)/$(LUA_CMODULE_DIR)
83 $(INSTALL_CMD) $(TARGET) $(DESTDIR)/$(LUA_MODULE_DIR) 92 cp $(TARGET) $(DESTDIR)/$(LUA_CMODULE_DIR)
93 chmod $(EXECPERM) $(DESTDIR)/$(LUA_CMODULE_DIR)/$(TARGET)
94
95install-extra:
96 mkdir -p $(DESTDIR)/$(LUA_MODULE_DIR)/cjson/tests \
97 $(DESTDIR)/$(LUA_BIN_DIR)
98 cp lua/cjson/util.lua $(DESTDIR)/$(LUA_MODULE_DIR)/cjson
99 chmod $(DATAPERM) $(DESTDIR)/$(LUA_MODULE_DIR)/cjson/util.lua
100 cp lua/lua2json.lua $(DESTDIR)/$(LUA_BIN_DIR)/lua2json$(LUA_BIN_SUFFIX)
101 chmod $(EXECPERM) $(DESTDIR)/$(LUA_BIN_DIR)/lua2json$(LUA_BIN_SUFFIX)
102 cp lua/json2lua.lua $(DESTDIR)/$(LUA_BIN_DIR)/json2lua$(LUA_BIN_SUFFIX)
103 chmod $(EXECPERM) $(DESTDIR)/$(LUA_BIN_DIR)/json2lua$(LUA_BIN_SUFFIX)
104 cd tests; cp $(TEST_FILES) $(DESTDIR)/$(LUA_MODULE_DIR)/cjson/tests
105 cd tests; chmod $(DATAPERM) $(TEST_FILES); chmod $(EXECPERM) *.lua *.pl
84 106
85manual.html: manual.txt 107manual.html: manual.txt
86 asciidoc -n -a toc manual.txt 108 asciidoc -n -a toc manual.txt