X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2FMakefile;h=60a43700887a4b838d5409d2d55a130d1020bd27;hb=61b6c895e0caebc4f55894cf835b4ffeb682dbba;hp=f9fb4581ca5b7947ab0f1b588b1df918e3338286;hpb=3f1999929dd6662da92c8f1b20c2fcbbce0c0ed7;p=rocksndiamonds.git diff --git a/src/Makefile b/src/Makefile index f9fb4581..60a43700 100644 --- a/src/Makefile +++ b/src/Makefile @@ -62,10 +62,12 @@ endif ifeq ($(PLATFORM),emscripten) # compiling with Emscripten PROGNAME = ../$(PROGBASE).js +DATA_FILE = $(PROGBASE).data CC = emcc AR = emar RANLIB = emranlib STRIP = true +FILE_PACKAGER = file_packager endif ifeq ($(shell uname -s),Darwin) # compiling on Mac OS X @@ -97,10 +99,12 @@ endif ifeq ($(TARGET),sdl2) # compiling for SDL2 target ifeq ($(PLATFORM),emscripten) -SDL_LIBS = -s USE_SDL_IMAGE=2 -s USE_SDL_MIXER=2 -s USE_SDL_NET=2 -s USE_ZLIB=1 -SDL_FMTS = -s SDL2_IMAGE_FORMATS='["bmp","png","pcx","xpm"]' +SDL_LIBS = -s USE_SDL_IMAGE=2 -s USE_SDL_MIXER=2 -s USE_SDL_NET=2 -s USE_MODPLUG=1 -s USE_MPG123=1 -s USE_ZLIB=1 +SDL_FMTS = -s SDL2_IMAGE_FORMATS='["bmp","png","pcx","xpm"]' -s SDL2_MIXER_FORMATS='["mod","mp3"]' EXTRA_CFLAGS = $(SDL_LIBS) -EXTRA_LDFLAGS = $(SDL_FMTS) -s INITIAL_MEMORY=81920000 -s ALLOW_MEMORY_GROWTH=1 --preload-file ../conf/ --preload-file ../docs/ --preload-file ../levels/ --preload-file ../graphics/ --preload-file ../sounds/ --preload-file ../music/ -s NO_EXIT_RUNTIME=0 -s ASYNCIFY -O2 -lidbfs.js +EXTRA_LDFLAGS = $(SDL_FMTS) -s INITIAL_MEMORY=81920000 -s ALLOW_MEMORY_GROWTH=1 -s FORCE_FILESYSTEM -s NO_EXIT_RUNTIME=0 -s ASYNCIFY -O2 -lidbfs.js +DATA_DIRS = conf docs levels graphics sounds music +FILE_PACKAGER_ARGS = --preload $(DATA_DIRS) --js-output=$(DATA_FILE).js else SDL_LIBS = -lSDL2_image -lSDL2_mixer -lSDL2_net endif @@ -122,7 +126,7 @@ CONFIG = $(CONFIG_BASE_PATH) $(JOYSTICK) DEBUG = -DDEBUG -g -# PROFILING = $(PROFILING_FLAGS) +# ANALYZE = $(PROFILING_FLAGS) # OPTIONS = $(DEBUG) -Wall # only for debugging purposes # OPTIONS = $(DEBUG) -O2 -Wall # only for debugging purposes @@ -162,6 +166,7 @@ SRCS = main.c \ files.c \ tape.c \ anim.c \ + api.c \ network.c \ netserv.c @@ -180,6 +185,7 @@ OBJS = main.o \ files.o \ tape.o \ anim.o \ + api.o \ network.o \ netserv.o @@ -253,10 +259,13 @@ GRAPHICS_DIR = ../graphics all: $(AUTOCONF) libgame_dir game_em_dir game_sp_dir game_mm_dir $(PROGNAME) graphics_dir $(PROGNAME): $(RNDLIBS) $(TIMESTAMP_FILE) $(COMMIT_HASH_FILE) $(OBJS) $(ICON) - $(CC) $(PROFILING) $(OBJS) $(ICON) $(RNDLIBS) $(LDFLAGS) -o $(PROGNAME) + $(CC) $(ANALYZE) $(OBJS) $(ICON) $(RNDLIBS) $(LDFLAGS) -o $(PROGNAME) ifdef BUILD_DIST $(STRIP) $(PROGNAME) endif +ifeq ($(PLATFORM),emscripten) + (cd .. ; $(FILE_PACKAGER) $(DATA_FILE) $(FILE_PACKAGER_ARGS)) +endif libgame_dir: @$(MAKE) -C $(LIBGAME_DIR) @@ -307,6 +316,8 @@ conf-hash: @echo '#define SOURCE_HASH_STRING "$(SOURCE_HASH_STRING)"' \ > $(COMMIT_HASH_FILE) +config.o: config.c $(TIMESTAMP_FILE) + $(TIMESTAMP_FILE): $(SRCS) $(RNDLIBS) @$(MAKE) conf-time @@ -319,7 +330,7 @@ $(ICON): echo "$(ICONBASE) ICON $(ICONBASE).ico" | $(WINDRES) -o $(ICON) .c.o: - $(CC) $(PROFILING) $(CFLAGS) -c $*.c + $(CC) $(ANALYZE) $(CFLAGS) -c $*.c graphics_dir: @test -f $(GRAPHICS_DIR)/Makefile && $(MAKE) -C $(GRAPHICS_DIR) || true