diff --git a/Makefile b/Makefile
index 52d471f..bdf3528 100644
--- a/Makefile
+++ b/Makefile
@@ -31,91 +31,90 @@ init:
mkdir -p obj
resources: init
- windres -o obj/icon.$(CPU_ARCH).o res/icon.rc
+ windres -o obj/common.$(CPU_ARCH).o res/common.rc
windres -o obj/splash_screen.$(CPU_ARCH).o res/splash_screen.rc
- windres -o obj/version.$(CPU_ARCH).o res/version.rc
build: init resources
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH).exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
- $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait_nosplash.exe src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH).exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=0 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=0 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=8 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=9 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=32 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait.exe src/head.c obj/common.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
+ $(CC) $(CFLAGS) -DJAR_FILE_WRAPPED=1 -DDETECT_REGISTRY=1 -DREQUIRE_JAVA=11 -DREQUIRE_BITNESS=64 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 -o bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait_nosplash.exe src/head.c obj/common.$(CPU_ARCH).o
strip: build
strip bin/launch5j_$(CPU_ARCH).exe
diff --git a/etc/utils/MakefileGenerator/.classpath b/etc/utils/MakefileGenerator/.classpath
index 51a8bba..02507f3 100644
--- a/etc/utils/MakefileGenerator/.classpath
+++ b/etc/utils/MakefileGenerator/.classpath
@@ -1,6 +1,11 @@
-
+
+
+
+
+
+
diff --git a/etc/utils/MakefileGenerator/res/templates/footer.mak b/etc/utils/MakefileGenerator/res/templates/footer.mak
new file mode 100644
index 0000000..ff790e6
--- /dev/null
+++ b/etc/utils/MakefileGenerator/res/templates/footer.mak
@@ -0,0 +1,3 @@
+clean: init
+ rm -f bin/*.exe
+ rm -f obj/*.o
diff --git a/etc/utils/MakefileGenerator/res/templates/header.mak b/etc/utils/MakefileGenerator/res/templates/header.mak
new file mode 100644
index 0000000..67f9257
--- /dev/null
+++ b/etc/utils/MakefileGenerator/res/templates/header.mak
@@ -0,0 +1,35 @@
+############################################################
+# Launch5j, by LoRd_MuldeR #
+# Java JAR wrapper for creating Windows native executables #
+# https://github.com/lordmulder/ #
+# #
+# This work has been released under the MIT license. #
+# Please see LICENSE.TXT for details! #
+# #
+# ACKNOWLEDGEMENT #
+# This project is partly inspired by the Launch4j project: #
+# https://sourceforge.net/p/launch4j/ #
+############################################################
+
+ifeq ($(words $(filter x86_64-%,$(shell $(CXX) -dumpmachine))),0)
+ CPU_ARCH := i586
+else
+ CPU_ARCH := x86-64
+endif
+
+MARCH ?= $(CPU_ARCH)
+MTUNE ?= generic
+
+CFLAGS = -Os -static -municode -mwindows -march=$(MARCH) -mtune=$(MTUNE)
+
+.PHONY: all init resources build strip clean
+
+all: strip
+
+init:
+ mkdir -p bin
+ mkdir -p obj
+
+resources: init
+ windres -o obj/common.$(CPU_ARCH).o res/common.rc
+ windres -o obj/splash_screen.$(CPU_ARCH).o res/splash_screen.rc
diff --git a/etc/utils/MakefileGenerator/src/MakefileGenerator.java b/etc/utils/MakefileGenerator/src/MakefileGenerator.java
index c1586bb..75adbb9 100644
--- a/etc/utils/MakefileGenerator/src/MakefileGenerator.java
+++ b/etc/utils/MakefileGenerator/src/MakefileGenerator.java
@@ -11,20 +11,29 @@
/* https://sourceforge.net/p/launch4j/ */
/************************************************************/
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
import java.io.PrintStream;
-import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
+import java.util.regex.Pattern;
/*
* Helper program to generate the Makefile rules for Launch5j
*/
public class MakefileGenerator {
- public static void main(String[] args) throws UnsupportedEncodingException {
+ private final static String EMPTY = "";
+ private final static Pattern RTRIM = Pattern.compile("\\s+$");
+
+ public static void main(String[] args) throws IOException {
final List filenNames = new ArrayList();
final PrintStream out = new PrintStream(System.out, true, StandardCharsets.UTF_8.name());
+
+ outputTemplate(out, "header");
out.println("build: init resources");
for(int wrapped = 0; wrapped < 2; ++wrapped) {
@@ -39,7 +48,9 @@ public class MakefileGenerator {
if((registry == 0) && ((requireJava != 8) || (requireBitness != 0))) {
continue;
}
- out.println(generate(filenNames, wrapped, registry, requireJava, requireBitness, stayAlive, enableSplash));
+ out.println(generateCommand(
+ filenNames, wrapped, registry, requireJava,
+ requireBitness, stayAlive, enableSplash));
}
}
}
@@ -51,9 +62,40 @@ public class MakefileGenerator {
for(final String fileName : filenNames) {
out.printf("\tstrip %s\n", fileName);
}
+
+ out.println();
+ outputTemplate(out, "footer");
}
- private static String generate(final List filenNames, final int wrapped, final int registry, final int requireJava, final int requireBitness, final int stayAlive, final int enableSplash)
+ private static void outputTemplate(final PrintStream out, final String name) throws IOException {
+ try(final InputStream in = MakefileGenerator.class.getResourceAsStream(String.format("/templates/%s.mak", name))) {
+ if(in == null) {
+ throw new IOException("Failed to open '" + name + "' template file!");
+ }
+ try(final BufferedReader reader = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8))) {
+ boolean blank = false, first = true;
+ String line;
+ while((line = reader.readLine()) != null) {
+ line = RTRIM.matcher(line).replaceAll(EMPTY);
+ if(line.isEmpty()) {
+ blank = true;
+ continue;
+ }
+ if(blank) {
+ if(!first) {
+ out.println();
+ }
+ blank = false;
+ }
+ out.println(line);
+ first = false;
+ }
+ }
+ }
+ out.println();
+ }
+
+ private static String generateCommand(final List filenNames, final int wrapped, final int registry, final int requireJava, final int requireBitness, final int stayAlive, final int enableSplash)
{
final String fileName = String.format("bin/launch5j_$(CPU_ARCH)%s.exe",
generateNameSuffix(wrapped, registry, requireJava, requireBitness, stayAlive, enableSplash));
@@ -66,7 +108,7 @@ public class MakefileGenerator {
+ "-DSTAY_ALIVE=%d "
+ "-DENABLE_SPLASH=%d "
+ "-o %s "
- + "src/head.c obj/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o",
+ + "src/head.c obj/common.$(CPU_ARCH).o",
wrapped,
registry,
requireJava,
@@ -76,7 +118,7 @@ public class MakefileGenerator {
fileName));
if(enableSplash > 0) {
- append(cmdLine, ' ', " obj/splash_screen.$(CPU_ARCH).o");
+ append(cmdLine, ' ', "obj/splash_screen.$(CPU_ARCH).o");
}
filenNames.add(fileName);
diff --git a/res/icon.ico b/res/assets/icon.ico
similarity index 100%
rename from res/icon.ico
rename to res/assets/icon.ico
diff --git a/res/splash_screen.bmp b/res/assets/splash_screen.bmp
similarity index 100%
rename from res/splash_screen.bmp
rename to res/assets/splash_screen.bmp
diff --git a/res/splash_screen.orig b/res/assets/splash_screen.orig
similarity index 100%
rename from res/splash_screen.orig
rename to res/assets/splash_screen.orig
diff --git a/res/common.rc b/res/common.rc
new file mode 100644
index 0000000..5e656ce
--- /dev/null
+++ b/res/common.rc
@@ -0,0 +1,80 @@
+/************************************************************/
+/* Launch5j, by LoRd_MuldeR */
+/* Java JAR wrapper for creating Windows native executables */
+/* https://github.com/lordmulder/ */
+/* */
+/* This work has been released under the MIT license. */
+/* Please see LICENSE.TXT for details! */
+/* */
+/* ACKNOWLEDGEMENT */
+/* This project is partly inspired by the Launch4j project: */
+/* https://sourceforge.net/p/launch4j/ */
+/************************************************************/
+
+#define APSTUDIO_READONLY_SYMBOLS
+#include "WinResrc.h"
+#undef APSTUDIO_READONLY_SYMBOLS
+
+#include "../src/resource.h"
+
+/////////////////////////////////////////////////////////////////////////////
+// Neutral resources
+/////////////////////////////////////////////////////////////////////////////
+#ifdef _WIN32
+LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
+#pragma code_page(1252)
+#endif //_WIN32
+
+/////////////////////////////////////////////////////////////////////////////
+// Icons
+/////////////////////////////////////////////////////////////////////////////
+
+ID_ICON_MAIN ICON "assets/icon.ico"
+
+/////////////////////////////////////////////////////////////////////////////
+// Strings
+/////////////////////////////////////////////////////////////////////////////
+
+STRINGTABLE
+BEGIN
+ ID_STR_JVMARGS L"?" /*-Xmx512m*/
+END
+
+/////////////////////////////////////////////////////////////////////////////
+// Version
+/////////////////////////////////////////////////////////////////////////////
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 0,2,0,0
+ PRODUCTVERSION 0,2,0,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS 0x3L
+#else
+ FILEFLAGS 0x2L
+#endif
+ FILEOS 0x40004L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "000004b0"
+ BEGIN
+ VALUE "ProductName", "Launch5j"
+ VALUE "FileDescription", "Launch5j"
+ VALUE "ProductVersion", "0.2.0"
+ VALUE "FileVersion", "0.2.0"
+ VALUE "InternalName", "Launch5j"
+ VALUE "OriginalFilename", "launch5j.exe"
+ VALUE "LegalCopyright", "Created by LoRd_MuldeR "
+ VALUE "CompanyName", "Muldersoft"
+ VALUE "LegalTrademarks", "Muldersoft"
+ VALUE "Comments", "This work has been released under the MIT license!"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x0, 1200
+ END
+END
diff --git a/res/icon.rc b/res/icon.rc
deleted file mode 100644
index 79c0386..0000000
--- a/res/icon.rc
+++ /dev/null
@@ -1,17 +0,0 @@
-/************************************************************/
-/* Launch5j, by LoRd_MuldeR */
-/* Java JAR wrapper for creating Windows native executables */
-/* https://github.com/lordmulder/ */
-/* */
-/* This work has been released under the MIT license. */
-/* Please see LICENSE.TXT for details! */
-/* */
-/* ACKNOWLEDGEMENT */
-/* This project is partly inspired by the Launch4j project: */
-/* https://sourceforge.net/p/launch4j/ */
-/************************************************************/
-
-#include "../src/resource.h"
-
-// ICON
-ID_APP_ICON ICON "icon.ico"
diff --git a/res/splash_screen.rc b/res/splash_screen.rc
index 13a6527..570f92b 100644
--- a/res/splash_screen.rc
+++ b/res/splash_screen.rc
@@ -11,7 +11,14 @@
/* https://sourceforge.net/p/launch4j/ */
/************************************************************/
+#define APSTUDIO_READONLY_SYMBOLS
+#include "WinResrc.h"
+#undef APSTUDIO_READONLY_SYMBOLS
+
#include "../src/resource.h"
-// BITMAP
-ID_SPLASH_BITMAP BITMAP "splash_screen.bmp"
+/////////////////////////////////////////////////////////////////////////////
+// Bitmaps
+/////////////////////////////////////////////////////////////////////////////
+
+ID_BITMAP_SPLASH BITMAP "assets/splash_screen.bmp"
diff --git a/res/version.rc b/res/version.rc
deleted file mode 100644
index b29e115..0000000
--- a/res/version.rc
+++ /dev/null
@@ -1,55 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-//
-// Microsoft Visual C++ generated resource script.
-//
-#define APSTUDIO_READONLY_SYMBOLS
-#include "WinResrc.h" //"afxres.h"
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Neutral resources
-//
-#ifdef _WIN32
-LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
-#pragma code_page(1252)
-#endif //_WIN32
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION 0,1,0,0
- PRODUCTVERSION 0,1,0,0
- FILEFLAGSMASK 0x17L
-#ifdef _DEBUG
- FILEFLAGS 0x3L
-#else
- FILEFLAGS 0x2L
-#endif
- FILEOS 0x40004L
- FILETYPE 0x1L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "000004b0"
- BEGIN
- VALUE "ProductName", "Launch5j"
- VALUE "FileDescription", "Launch5j"
- VALUE "ProductVersion", "0.1.0"
- VALUE "FileVersion", "0.1.0"
- VALUE "InternalName", "Launch5j"
- VALUE "OriginalFilename", "launch5j.exe"
- VALUE "LegalCopyright", "Created by LoRd_MuldeR "
- VALUE "CompanyName", "Muldersoft"
- VALUE "LegalTrademarks", "Muldersoft"
- VALUE "Comments", "This work has been released under the MIT license!"
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x0, 1200
- END
-END
diff --git a/src/head.c b/src/head.c
index 28b4e86..0e1da1e 100644
--- a/src/head.c
+++ b/src/head.c
@@ -142,6 +142,35 @@ static wchar_t *wcsndup (const wchar_t *const str, const size_t n)
return result;
}
+static wchar_t *wcstrim(wchar_t *const str)
+{
+ if (NOT_EMPTY(str))
+ {
+ size_t pos = 0U, out = 0U;
+ while (str[pos] && iswspace(str[pos]))
+ {
+ ++pos;
+ }
+ if (pos > 0U)
+ {
+ while(str[pos])
+ {
+ str[out++] = str[pos++];
+ }
+ str[out] = L'\0';
+ }
+ else
+ {
+ for (; str[out]; ++out);
+ }
+ while ((out > 0U) && (iswspace(str[out-1U])))
+ {
+ str[--out] = L'\0';
+ }
+ }
+ return str;
+}
+
/* ======================================================================== */
/* System information */
/* ======================================================================== */
@@ -193,7 +222,7 @@ static wchar_t *get_directory_part(const wchar_t *const path)
return wcsdup(L".");
}
-static wchar_t *remove_file_extension(const wchar_t *const path)
+static wchar_t *get_path_without_suffix(const wchar_t *const path)
{
size_t lastsep = SIZE_MAX;
size_t lastdot = SIZE_MAX;
@@ -221,7 +250,7 @@ static wchar_t *remove_file_extension(const wchar_t *const path)
return wcsdup(path);
}
-static void trim_trailing_separator(wchar_t *const path)
+static wchar_t * trim_trailing_separator(wchar_t *const path)
{
if(NOT_EMPTY(path))
{
@@ -231,6 +260,7 @@ static void trim_trailing_separator(wchar_t *const path)
path[--len] = L'\0';
}
}
+ return path;
}
static BOOL file_exists(const wchar_t *const filename) {
@@ -242,6 +272,28 @@ static BOOL file_exists(const wchar_t *const filename) {
return FALSE;
}
+/* ======================================================================== */
+/* Resource routines */
+/* ======================================================================== */
+
+static wchar_t *load_string(const HINSTANCE hinstance, const UINT id)
+{
+ wchar_t *buffer;
+ const int str_len = LoadStringW(hinstance, id, (PWCHAR)&buffer, 0);
+ if(str_len > 0)
+ {
+ if (buffer = (wchar_t*) malloc(sizeof(wchar_t) * (str_len + 1U)))
+ {
+ if(LoadStringW(hinstance, id, buffer, str_len) > 0)
+ {
+ return wcstrim(buffer);
+ }
+ free(buffer);
+ }
+ }
+ return NULL;
+}
+
/* ======================================================================== */
/* Registry routines */
/* ======================================================================== */
@@ -374,7 +426,8 @@ static const wchar_t *get_executable_path(void)
{
if (_wpgmptr && _wpgmptr[0U])
{
- return wcsdup(_wpgmptr);
+ wchar_t *const executable_path = wcsdup(_wpgmptr);
+ return wcstrim(executable_path);
}
return NULL;
}
@@ -398,7 +451,7 @@ static const wchar_t *get_jarfile_path(const wchar_t *const executable_path, con
#else
const wchar_t *jarfile_path = NULL;
- const wchar_t *const path_prefix = remove_file_extension(executable_path);
+ const wchar_t *const path_prefix = get_path_without_suffix(executable_path);
if (NOT_EMPTY(path_prefix))
{
const size_t len = wcslen(path_prefix);
@@ -502,7 +555,7 @@ static const wchar_t *detect_java_runtime_verify(const BOOL flag_x64, const HKEY
BOOL is_valid = FALSE;
wchar_t *const java_home_path = reg_read_string(root_key, full_reg_path, L"JavaHome", flag_x64);
- trim_trailing_separator(java_home_path);
+ trim_trailing_separator(wcstrim(java_home_path));
if (NOT_EMPTY(java_home_path))
{
for (size_t i = 0U; REL_PATHS[i]; ++i)
@@ -813,7 +866,7 @@ static void destroy_window(HWND *const hwnd)
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow)
{
int result = -1;
- const wchar_t *executable_path = NULL, *executable_directory = NULL, *jarfile_path = NULL, *java_runtime_path = NULL, *command_line = NULL;
+ const wchar_t *executable_path = NULL, *executable_directory = NULL, *jarfile_path = NULL, *java_runtime_path = NULL, *jvm_extra_args = NULL, *command_line = NULL;
HGDIOBJ splash_image = NULL;
PROCESS_INFORMATION process_info;
STARTUPINFOW startup_info;
@@ -827,7 +880,7 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine
// Show the splash screen
#if ENABLE_SPLASH
- if (splash_image = LoadImage(hInstance, MAKEINTRESOURCE(ID_SPLASH_BITMAP), IMAGE_BITMAP, 0, 0, LR_DEFAULTSIZE))
+ if (splash_image = LoadImage(hInstance, MAKEINTRESOURCE(ID_BITMAP_SPLASH), IMAGE_BITMAP, 0, 0, LR_DEFAULTSIZE))
{
if (create_splash_screen(hwnd, splash_image))
{
@@ -880,7 +933,6 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine
show_jre_download_notice(hwnd);
goto cleanup;
}
- show_message(hwnd, MB_ICONERROR | MB_TOPMOST, L"java_runtime_path Error", java_runtime_path);
#else
if (!(java_runtime_path = awprintf(L"%ls\\%ls", executable_directory, JRE_RELATIVE_PATH)))
{
@@ -894,14 +946,18 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine
}
#endif
+ // Load extra JVM args
+ jvm_extra_args = load_string(hInstance, ID_STR_JVMARGS);
+
// Build the command-line
- command_line = NOT_EMPTY(pCmdLine) ? awprintf(L"\"%ls\" -jar \"%ls\" %ls", java_runtime_path, jarfile_path, pCmdLine) : awprintf(L"\"%ls\" -jar \"%ls\"", java_runtime_path, jarfile_path);
+ command_line = (NOT_EMPTY(jvm_extra_args) && (wcscmp(jvm_extra_args, L"?") != 0))
+ ? awprintf(NOT_EMPTY(pCmdLine) ? L"\"%ls\" %ls -jar \"%ls\" %ls" : L"\"%ls\" %ls -jar \"%ls\"", java_runtime_path, jvm_extra_args, jarfile_path, pCmdLine)
+ : awprintf(NOT_EMPTY(pCmdLine) ? L"\"%ls\" -jar \"%ls\" %ls" : L"\"%ls\" -jar \"%ls\"", java_runtime_path, jarfile_path, pCmdLine);
if (!command_line)
{
show_message(hwnd, MB_ICONERROR | MB_TOPMOST, L"System Error", L"The Java command-line could not be generated!");
goto cleanup;
}
- show_message(hwnd, MB_ICONERROR | MB_TOPMOST, L"command_line Error", command_line);
// Process pending window messages
#if ENABLE_SPLASH
diff --git a/src/resource.h b/src/resource.h
index e6eec6c..6f36795 100644
--- a/src/resource.h
+++ b/src/resource.h
@@ -12,7 +12,10 @@
/************************************************************/
// ICON
-#define ID_APP_ICON 1
+#define ID_ICON_MAIN 1
// BITMAP
-#define ID_SPLASH_BITMAP 1
+#define ID_BITMAP_SPLASH 1
+
+// STRINGS
+#define ID_STR_JVMARGS 1