Skip to content

Commit 9734d44

Browse files
Add rock makefile
1 parent 4d0616f commit 9734d44

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

rock.mk

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# Makefile for rockspec
2+
#
3+
# luarocks MAKE=make CC=gcc LD=gcc make --lua-dir ../../luaclibs/lua/src
4+
#
5+
# see https://github.com/luarocks/luarocks/wiki/Creating-a-Makefile-that-plays-nice-with-LuaRocks
6+
# and https://github.com/luarocks/luarocks/wiki/Recommended-practices-for-Makefiles
7+
8+
CC ?= gcc
9+
10+
PLAT ?= windows
11+
LIBNAME = webview
12+
13+
#LUA_APP = $(LUA_BINDIR)/$(LUA)
14+
LUA_APP = $(LUA)
15+
LUA_VERSION = $(shell $(LUA_APP) -e "print(string.sub(_VERSION, 5))")
16+
LUA_LIBNAME = lua$(subst .,,$(LUA_VERSION))
17+
18+
CFLAGS_windows = -Wall \
19+
-Wextra \
20+
-Wno-unused-parameter \
21+
-Wstrict-prototypes \
22+
-I$(LUA_INCDIR) \
23+
-DWEBVIEW_WINAPI=1
24+
25+
LIBFLAG_windows = -O \
26+
-shared \
27+
-Wl,-s \
28+
-L$(LUA_LIBDIR) -l$(LUA_LIBNAME) \
29+
-static-libgcc \
30+
-lole32 -lcomctl32 -loleaut32 -luuid -mwindows
31+
32+
TARGET_windows = $(LIBNAME).dll
33+
34+
CFLAGS_linux = -pedantic \
35+
-Wall \
36+
-Wextra \
37+
-Wno-unused-parameter \
38+
-Wstrict-prototypes \
39+
-I$(LUA_INCDIR) \
40+
-DWEBVIEW_GTK=1 \
41+
$(shell pkg-config --cflags gtk+-3.0 webkit2gtk-4.0)
42+
43+
LIBFLAG_linux= -static-libgcc \
44+
-Wl,-s \
45+
-L$(LUA_LIBDIR) \
46+
$(shell pkg-config --libs gtk+-3.0 webkit2gtk-4.0)
47+
48+
TARGET_linux = $(LIBNAME).so
49+
50+
51+
TARGET = $(TARGET_$(PLAT))
52+
53+
SOURCES = webview.c
54+
55+
OBJS = webview.o
56+
57+
lib: $(TARGET)
58+
59+
install:
60+
cp $(TARGET) $(INST_LIBDIR)
61+
62+
show:
63+
@echo PLAT: $(PLAT)
64+
@echo LUA_VERSION: $(LUA_VERSION)
65+
@echo LUA_LIBNAME: $(LUA_LIBNAME)
66+
@echo CFLAGS: $(CFLAGS)
67+
@echo LIBFLAG: $(LIBFLAG)
68+
@echo LUA_LIBDIR: $(LUA_LIBDIR)
69+
@echo LUA_BINDIR: $(LUA_BINDIR)
70+
@echo LUA_INCDIR: $(LUA_INCDIR)
71+
@echo LUA: $(LUA)
72+
@echo LUALIB: $(LUALIB)
73+
74+
show-install:
75+
@echo PREFIX: $(PREFIX) or $(INST_PREFIX)
76+
@echo BINDIR: $(BINDIR) or $(INST_BINDIR)
77+
@echo LIBDIR: $(LIBDIR) or $(INST_LIBDIR)
78+
@echo LUADIR: $(LUADIR) or $(INST_LUADIR)
79+
80+
$(TARGET): $(OBJS)
81+
$(CC) $(OBJS) $(LIBFLAG) $(LIBFLAG_$(PLAT)) -o $(TARGET)
82+
83+
clean:
84+
-$(RM) $(OBJS) $(TARGET)
85+
86+
$(OBJS): %.o : %.c $(SOURCES)
87+
$(CC) $(CFLAGS) $(CFLAGS_$(PLAT)) -c -o $@ $<

0 commit comments

Comments
 (0)