|
@@ -7,9 +7,9 @@ INSTALL_BIN_DIR ?= $(PREFIX)/bin
|
|
INSTALL_LIB_DIR ?= $(PREFIX)/lib
|
|
INSTALL_LIB_DIR ?= $(PREFIX)/lib
|
|
INSTALL_INCLUDE_DIR ?= $(PREFIX)/include
|
|
INSTALL_INCLUDE_DIR ?= $(PREFIX)/include
|
|
|
|
|
|
-LIBS=fmt sdl ssl openal ui uv mysql
|
|
|
|
|
|
+LIBS=fmt sdl ssl openal ui uv mysql sqlite
|
|
|
|
|
|
-CFLAGS = -Wall -O3 -I src -msse2 -mfpmath=sse -std=c11 -I include -I include/pcre -I include/mikktspace -I include/minimp3 -D LIBHL_EXPORTS
|
|
|
|
|
|
+CFLAGS = -Wall -O3 -I src -msse2 -mfpmath=sse -std=c11 -D LIBHL_EXPORTS
|
|
LFLAGS = -L. -lhl
|
|
LFLAGS = -L. -lhl
|
|
EXTRA_LFLAGS ?=
|
|
EXTRA_LFLAGS ?=
|
|
LIBFLAGS =
|
|
LIBFLAGS =
|
|
@@ -17,6 +17,8 @@ HLFLAGS = -ldl
|
|
LIBEXT = so
|
|
LIBEXT = so
|
|
LIBTURBOJPEG = -lturbojpeg
|
|
LIBTURBOJPEG = -lturbojpeg
|
|
|
|
|
|
|
|
+PCRE_INCLUDE = -I include/pcre
|
|
|
|
+
|
|
PCRE = include/pcre/pcre_chartables.o include/pcre/pcre_compile.o include/pcre/pcre_dfa_exec.o \
|
|
PCRE = include/pcre/pcre_chartables.o include/pcre/pcre_compile.o include/pcre/pcre_dfa_exec.o \
|
|
include/pcre/pcre_exec.o include/pcre/pcre_fullinfo.o include/pcre/pcre_globals.o \
|
|
include/pcre/pcre_exec.o include/pcre/pcre_fullinfo.o include/pcre/pcre_globals.o \
|
|
include/pcre/pcre_newline.o include/pcre/pcre_string_utils.o include/pcre/pcre_tables.o include/pcre/pcre_xclass.o \
|
|
include/pcre/pcre_newline.o include/pcre/pcre_string_utils.o include/pcre/pcre_tables.o include/pcre/pcre_xclass.o \
|
|
@@ -31,6 +33,8 @@ STD = src/std/array.o src/std/buffer.o src/std/bytes.o src/std/cast.o src/std/da
|
|
|
|
|
|
HL = src/code.o src/jit.o src/main.o src/module.o src/debugger.o src/profile.o
|
|
HL = src/code.o src/jit.o src/main.o src/module.o src/debugger.o src/profile.o
|
|
|
|
|
|
|
|
+FMT_INCLUDE = -I include/mikktspace -I include/minimp3
|
|
|
|
+
|
|
FMT = libs/fmt/fmt.o libs/fmt/sha1.o include/mikktspace/mikktspace.o libs/fmt/mikkt.o libs/fmt/dxt.o
|
|
FMT = libs/fmt/fmt.o libs/fmt/sha1.o include/mikktspace/mikktspace.o libs/fmt/mikkt.o libs/fmt/dxt.o
|
|
|
|
|
|
SDL = libs/sdl/sdl.o libs/sdl/gl.o
|
|
SDL = libs/sdl/sdl.o libs/sdl/gl.o
|
|
@@ -45,6 +49,8 @@ UI = libs/ui/ui_stub.o
|
|
|
|
|
|
MYSQL = libs/mysql/socket.o libs/mysql/sha1.o libs/mysql/my_proto.o libs/mysql/my_api.o libs/mysql/mysql.o
|
|
MYSQL = libs/mysql/socket.o libs/mysql/sha1.o libs/mysql/my_proto.o libs/mysql/my_api.o libs/mysql/mysql.o
|
|
|
|
|
|
|
|
+SQLITE = libs/sqlite/sqlite.o
|
|
|
|
+
|
|
LIB = ${PCRE} ${RUNTIME} ${STD}
|
|
LIB = ${PCRE} ${RUNTIME} ${STD}
|
|
|
|
|
|
BOOT = src/_main.o
|
|
BOOT = src/_main.o
|
|
@@ -66,7 +72,9 @@ else ifeq ($(UNAME),Darwin)
|
|
|
|
|
|
# Mac
|
|
# Mac
|
|
LIBEXT=dylib
|
|
LIBEXT=dylib
|
|
-CFLAGS += -m$(MARCH) -I /usr/local/include -I /usr/local/opt/libjpeg-turbo/include -I /usr/local/opt/jpeg-turbo/include -I /usr/local/opt/sdl2/include/SDL2 -I /usr/local/opt/libvorbis/include -I /usr/local/opt/openal-soft/include -Dopenal_soft -DGL_SILENCE_DEPRECATION
|
|
|
|
|
|
+CFLAGS += -m$(MARCH) -I include -I /usr/local/include -I /usr/local/opt/libjpeg-turbo/include \
|
|
|
|
+ -I /usr/local/opt/jpeg-turbo/include -I /usr/local/opt/sdl2/include/SDL2 -I /usr/local/opt/libvorbis/include \
|
|
|
|
+ -I /usr/local/opt/openal-soft/include -Dopenal_soft -DGL_SILENCE_DEPRECATION
|
|
LFLAGS += -Wl,-export_dynamic -L/usr/local/lib
|
|
LFLAGS += -Wl,-export_dynamic -L/usr/local/lib
|
|
|
|
|
|
ifdef OSX_SDK
|
|
ifdef OSX_SDK
|
|
@@ -130,6 +138,12 @@ uninstall:
|
|
|
|
|
|
libs: $(LIBS)
|
|
libs: $(LIBS)
|
|
|
|
|
|
|
|
+./include/pcre/%.o: include/pcre/%.c
|
|
|
|
+ ${CC} ${CFLAGS} -o $@ -c $< ${PCRE_FLAGS}
|
|
|
|
+
|
|
|
|
+src/std/regexp.o: src/std/regexp.c
|
|
|
|
+ ${CC} ${CFLAGS} -o $@ -c $< ${PCRE_FLAGS}
|
|
|
|
+
|
|
libhl: ${LIB}
|
|
libhl: ${LIB}
|
|
${CC} -o libhl.$(LIBEXT) -m${MARCH} ${LIBFLAGS} -shared ${LIB} -lpthread -lm
|
|
${CC} -o libhl.$(LIBEXT) -m${MARCH} ${LIBFLAGS} -shared ${LIB} -lpthread -lm
|
|
|
|
|
|
@@ -139,8 +153,11 @@ hlc: ${BOOT}
|
|
hl: ${HL} libhl
|
|
hl: ${HL} libhl
|
|
${CC} ${CFLAGS} -o hl ${HL} ${LFLAGS} ${EXTRA_LFLAGS} ${HLFLAGS}
|
|
${CC} ${CFLAGS} -o hl ${HL} ${LFLAGS} ${EXTRA_LFLAGS} ${HLFLAGS}
|
|
|
|
|
|
|
|
+libs/fmt/%.o: libs/fmt/%.c
|
|
|
|
+ ${CC} ${CFLAGS} -o $@ -c $< ${FMT_INCLUDE}
|
|
|
|
+
|
|
fmt: ${FMT} libhl
|
|
fmt: ${FMT} libhl
|
|
- ${CC} ${CFLAGS} -I include/mikktspace -I include/minimp3 -shared -o fmt.hdll ${FMT} ${LIBFLAGS} -L. -lhl -lpng $(LIBTURBOJPEG) -lz -lvorbisfile
|
|
|
|
|
|
+ ${CC} ${CFLAGS} -shared -o fmt.hdll ${FMT} ${LIBFLAGS} -L. -lhl -lpng $(LIBTURBOJPEG) -lz -lvorbisfile
|
|
|
|
|
|
sdl: ${SDL} libhl
|
|
sdl: ${SDL} libhl
|
|
${CC} ${CFLAGS} -shared -o sdl.hdll ${SDL} ${LIBFLAGS} -L. -lhl -lSDL2 $(LIBOPENGL)
|
|
${CC} ${CFLAGS} -shared -o sdl.hdll ${SDL} ${LIBFLAGS} -L. -lhl -lSDL2 $(LIBOPENGL)
|
|
@@ -160,6 +177,9 @@ uv: ${UV} libhl
|
|
mysql: ${MYSQL} libhl
|
|
mysql: ${MYSQL} libhl
|
|
${CC} ${CFLAGS} -shared -o mysql.hdll ${MYSQL} ${LIBFLAGS} -L. -lhl
|
|
${CC} ${CFLAGS} -shared -o mysql.hdll ${MYSQL} ${LIBFLAGS} -L. -lhl
|
|
|
|
|
|
|
|
+sqlite: ${SQLITE} libhl
|
|
|
|
+ ${CC} ${CFLAGS} -shared -o sqlite.hdll ${SQLITE} ${LIBFLAGS} -L. -lhl -lsqlite3
|
|
|
|
+
|
|
mesa:
|
|
mesa:
|
|
(cd libs/mesa && make)
|
|
(cd libs/mesa && make)
|
|
|
|
|
|
@@ -224,7 +244,7 @@ codesign_osx:
|
|
${CC} ${CFLAGS} -o $@ -c $<
|
|
${CC} ${CFLAGS} -o $@ -c $<
|
|
|
|
|
|
clean_o:
|
|
clean_o:
|
|
- rm -f ${STD} ${BOOT} ${RUNTIME} ${PCRE} ${HL} ${FMT} ${SDL} ${SSL} ${OPENAL} ${UI} ${UV} ${HL_DEBUG}
|
|
|
|
|
|
+ rm -f ${STD} ${BOOT} ${RUNTIME} ${PCRE} ${HL} ${FMT} ${SDL} ${SSL} ${OPENAL} ${UI} ${UV} ${MYSQL} ${SQLITE} ${HL_DEBUG}
|
|
|
|
|
|
clean: clean_o
|
|
clean: clean_o
|
|
rm -f hl hl.exe libhl.$(LIBEXT) *.hdll
|
|
rm -f hl hl.exe libhl.$(LIBEXT) *.hdll
|