diff --git a/.gitignore b/.gitignore index 9bccf8d..6ea76a7 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,6 @@ raylua_s.exe src/autogen/bind.c src/autogen/boot.c src/autogen/builder.c + +libraylua.a +src/res/icon.res diff --git a/makefile b/makefile index 100d4f1..0a72e74 100644 --- a/makefile +++ b/makefile @@ -4,6 +4,8 @@ LDFLAGS := -O2 -s -lm AR ?= ar LUA ?= luajit/src/luajit +WINDRES ?= windres + CFLAGS += -Iluajit/src -Iraylib/src -Iraygui/src LDFLAGS += -Lluajit/src -Lraylib/src -lraylib @@ -11,31 +13,38 @@ MODULES := raymath rlgl easings gestures physac raygui ifeq ($(OS),Windows_NT) LDFLAGS += -lopengl32 -lgdi32 -lwinmm -static + EXTERNAL_FILES := src/res/icon.res else ifeq ($(shell uname),Darwin) - LDFLAGS += -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL -Wl,-pagezero_size,10000,-image_base,100000000 + LDFLAGS += -framework CoreVideo -framework IOKit -framework Cocoa \ + -framework GLUT -framework OpenGL \ + -Wl,-pagezero_size,10000,-image_base,100000000 + EXTERNAL_FILES := else LDFLAGS += -ldl -lX11 -lpthread + EXTERNAL_FILES := endif -all: raylua_s raylua_e +all: raylua_s raylua_e luajit raylib %.o: %.c $(CC) -c -o $@ $< $(CFLAGS) -all: raylua_s raylua_e luajit raylib - luajit: $(MAKE) -C luajit amalg BUILDMODE=static MACOSX_DEPLOYMENT_TARGET=10.13 raylib: $(MAKE) CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" -C raylib/src -raylua_s: src/raylua.o src/raylua_s.o +raylua_s: src/raylua_s.o $(EXTERNAL_FILES) libraylua.a $(CC) -o $@ $^ $(LDFLAGS) luajit/src/libluajit.a -raylua_e: src/raylua.o src/raylua_e.o src/raylua_builder.o src/lib/miniz.o +raylua_e: src/raylua_e.o src/raylua_self.o src/raylua_builder.o src/lib/miniz.o \ + $(EXTERNAL_FILES) libraylua.a $(CC) -o $@ $^ $(LDFLAGS) luajit/src/libluajit.a +src/res/icon.res: src/res/icon.rc + $(WINDRES) $^ -O coff $@ + libraylua.a: src/raylua.o $(AR) rcu $@ $^ @@ -59,9 +68,11 @@ src/autogen/builder.c: src/raylua_builder.lua $(LUA) tools/lua2str.lua $@ raylua_builder_lua $^ clean: - rm -rf raylua_s raylua_e src/raylua_e.o src/raylua_s.o src/raylua.o \ - src/raylua_builder.o src/autogen/*.c src/lib/miniz.o + rm -rf raylua_s raylua_e libraylua.a src/raylua_e.o src/raylua_s.o \ + src/raylua.o src/raylua_self.o src/raylua_builder.o src/autogen/*.c \ + src/lib/miniz.o $(MAKE) -C luajit clean $(MAKE) -C raylib/src clean -.PHONY: all src/autogen/bind.c src/autogen/boot.c raylua_s raylua_e luajit raylib clean +.PHONY: all src/autogen/bind.c src/autogen/boot.c raylua_s raylua_e luajit \ + raylib clean diff --git a/src/res/icon.ico b/src/res/icon.ico new file mode 100644 index 0000000..8896232 Binary files /dev/null and b/src/res/icon.ico differ diff --git a/src/res/icon.rc b/src/res/icon.rc new file mode 100644 index 0000000..ff5fdbe --- /dev/null +++ b/src/res/icon.rc @@ -0,0 +1 @@ +id ICON "icon.ico" \ No newline at end of file