-ifeq ($(TARGET),sdl)
-SYS_CFLAGS = -DTARGET_SDL $(shell sdl-config --cflags)
-SDL_LIBS = -lSDL_image -lSDL_mixer -lSDL_net -lsmpeg
-SYS_LDFLAGS = $(SDL_LIBS) $(shell sdl-config --libs)
+ifndef TARGET # auto-detect compiling for SDL2
+ SDL_VERSION := $(shell sdl2-config --version 2> /dev/null)
+ ifdef SDL_VERSION
+ TARGET = sdl2
+ else
+ $(error SDL2 library not found)
+ endif
+endif
+
+# $(info Using SDL version $(SDL_VERSION) [TARGET == $(TARGET)])
+
+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"]'
+EXTRA_CFLAGS = $(SDL_LIBS)
+EXTRA_LDFLAGS = $(SDL_FMTS) -s INITIAL_MEMORY=65536000 -s ALLOW_MEMORY_GROWTH=1 --preload-file ../graphics/ --preload-file ../sounds/ --preload-file ../levels/ --preload-file ../music/ -s NO_EXIT_RUNTIME=0 -s ASYNCIFY -O2
+else
+SDL_LIBS = -lSDL2_image -lSDL2_mixer -lSDL2_net