Makefile

Tue, 14 May 2013 01:45:01 +0700

author
Vadim Misbakh-Soloviov <mva@mva.name>
date
Tue, 14 May 2013 01:45:01 +0700
changeset 15
dc303ec39b54
child 16
1f41c74ce686
permissions
-rw-r--r--

Makefile improvements (DESTDIR, configuration, ...)

15
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
1 CC ?= cc
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
2 AR ?= ar rcu
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
3 RANLIB ?= ranlib
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
4 RM ?= rm -rf
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
5 MKDIR ?= mkdir -p
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
6 INSTALL ?= install
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
7 INSTALL_PROGRAM ?= $(INSTALL)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
8 INSTALL_DATA ?= $(INSTALL) -m 644
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
9 LUA_V ?= 5.1
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
10 LUA_LDIR ?= /usr/share/lua/$(LUA_V)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
11 LUA_CDIR ?= /usr/lib/lua/$(LUA_V)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
12 T = lxp
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
13 LIBNAME = $(T).so
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
14
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
15 COMMON_CFLAGS = -g -pedantic -Wall -O2 -shared -fPIC -DPIC -ansi
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
16 LUA_INC ?= -I/usr/include/lua$(LUA_V)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
17 EXPAT_INC ?= -I/usr/include
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
18 CF = $(LUA_INC) $(EXPAT_INC) $(COMMON_CFLAGS) $(CFLAGS)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
19
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
20 EXPAT_LIB = -lexpat
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
21 COMMON_LDFLAGS = -shared
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
22 LF = $(COMMON_LDFLAGS) $(EXPAT_LIB) $(LDFLAGS)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
23
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
24 OBJS = src/lxplib.o
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
25
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
26 lib: src/$(LIBNAME)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
27
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
28 src/$(LIBNAME): $(OBJS)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
29 export MACOSX_DEPLOYMENT_TARGET="10.3";
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
30 $(CC) $(CF) $(LF) -o $@ $<
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
31
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
32 $(OBJS):
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
33 $(CC) $(CF) $(LF) -o $@ src/$(T)lib.c
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
34
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
35 install:
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
36 $(INSTALL_PROGRAM) -D src/$(LIBNAME) $(DESTDIR)$(LUA_CDIR)/$(LIBNAME)
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
37 $(INSTALL_PROGRAM) -D src/$T/lom.lua $(DESTDIR)$(LUA_LDIR)/$T/lom.lua
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
38
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
39 clean:
dc303ec39b54 Makefile improvements (DESTDIR, configuration, ...)
Vadim Misbakh-Soloviov <mva@mva.name>
parents:
diff changeset
40 rm -f src/$(LIBNAME) $(OBJS)

mercurial