Added additional build configuration options.

This commit is contained in:
LoRd_MuldeR 2020-09-28 13:30:57 +02:00
parent ea76ebc141
commit 5105236cf2
2 changed files with 210 additions and 64 deletions

199
Makefile
View File

@ -12,14 +12,12 @@
############################################################ ############################################################
ifeq ($(words $(filter x86_64-%,$(shell $(CXX) -dumpmachine))),0) ifeq ($(words $(filter x86_64-%,$(shell $(CXX) -dumpmachine))),0)
EXE_ARCH = x86 CPU_ARCH := i586
DEFAULT_MARCH := i586
else else
EXE_ARCH = x64 CPU_ARCH := x86-64
DEFAULT_MARCH := x86-64
endif endif
MARCH ?= $(DEFAULT_MARCH) MARCH ?= $(CPU_ARCH)
MTUNE ?= generic MTUNE ?= generic
CFLAGS = -Os -static -municode -mwindows -march=$(MARCH) -mtune=$(MTUNE) CFLAGS = -Os -static -municode -mwindows -march=$(MARCH) -mtune=$(MTUNE)
@ -33,38 +31,173 @@ init:
mkdir -p obj mkdir -p obj
resources: init resources: init
windres -o obj/icon.$(EXE_ARCH).o res/icon.rc windres -o obj/icon.$(CPU_ARCH).o res/icon.rc
windres -o obj/splash_screen.$(EXE_ARCH).o res/splash_screen.rc windres -o obj/splash_screen.$(CPU_ARCH).o res/splash_screen.rc
windres -o obj/version.$(EXE_ARCH).o res/version.rc windres -o obj/version.$(CPU_ARCH).o res/version.rc
build: init resources build: init resources
$(CC) $(CFLAGS) -o bin/launch5j_$(EXE_ARCH).exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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/version.$(CPU_ARCH).o obj/icon.$(CPU_ARCH).o obj/splash_screen.$(CPU_ARCH).o
$(CC) $(CFLAGS) -o bin/launch5j_$(EXE_ARCH).nosplash.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).nowait.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).nowait_nosplash.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).wrapped.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).wrapped_nosplash.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).wrapped_nowait.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).wrapped_nowait_nosplash.exe -DDETECT_REGISTRY=0 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_nowait.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_nowait_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_wrapped.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_wrapped_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_wrapped_nowait.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_wrapped_nowait_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=0 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_nowait.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_nowait_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=0 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_wrapped.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_wrapped_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=1 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_wrapped_nowait.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=1 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_ARCH).o obj/splash_screen.$(EXE_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) -o bin/launch5j_$(EXE_ARCH).registry_java11_wrapped_nowait_nosplash.exe -DDETECT_REGISTRY=1 -DREQUIRE_JAVA11=1 -DJAR_FILE_WRAPPED=1 -DSTAY_ALIVE=0 -DENABLE_SPLASH=0 src/head.c obj/version.$(EXE_ARCH).o obj/icon.$(EXE_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
strip: build strip: build
find bin -type f -name '*.exe' -exec strip -v {} \; strip bin/launch5j_$(CPU_ARCH).exe
strip bin/launch5j_$(CPU_ARCH)_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry.exe
strip bin/launch5j_$(CPU_ARCH)_registry_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_only64bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java9_only64bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_registry_java11_only64bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_only64bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java9_only64bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only32bit_nowait_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nosplash.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait.exe
strip bin/launch5j_$(CPU_ARCH)_wrapped_registry_java11_only64bit_nowait_nosplash.exe
clean: init clean: init
rm -f bin/*.exe rm -f bin/*.exe

View File

@ -29,49 +29,58 @@
#include "resource.h" #include "resource.h"
// Options // Options
#ifndef ENABLE_SPLASH
#define ENABLE_SPLASH 1
#endif
#ifndef JAR_FILE_WRAPPED #ifndef JAR_FILE_WRAPPED
#define JAR_FILE_WRAPPED 0 #define JAR_FILE_WRAPPED 0
#endif #endif
#ifndef WAIT_FOR_WINDOW
#define WAIT_FOR_WINDOW 1
#endif
#ifndef STAY_ALIVE
#define STAY_ALIVE 1
#endif
#ifndef DETECT_REGISTRY #ifndef DETECT_REGISTRY
#define DETECT_REGISTRY 0 #define DETECT_REGISTRY 0
#endif #endif
#ifndef PREFER_X64 #ifndef REQUIRE_JAVA
#define PREFER_X64 1 #define REQUIRE_JAVA 8
#endif #endif
#ifndef REQUIRE_JAVA11 #ifndef REQUIRE_BITNESS
#define REQUIRE_JAVA11 0 #define REQUIRE_BITNESS 0
#endif
#ifndef ENABLE_SPLASH
#define ENABLE_SPLASH 1
#endif
#ifndef STAY_ALIVE
#define STAY_ALIVE 1
#endif
#ifndef WAIT_FOR_WINDOW
#define WAIT_FOR_WINDOW 1
#endif
// Sanity check
#if (REQUIRE_JAVA < 5) || (REQUIRE_JAVA > 255)
#error Invalid REQUIRE_JAVA value!
#endif
#if (REQUIRE_BITNESS != 0) && (REQUIRE_BITNESS != 32) && (REQUIRE_BITNESS != 64)
#error Invalid REQUIRE_BITNESS value!
#endif
// Dependant
#if (REQUIRE_BITNESS == 64)
#define REQUIRE_BITNESS_CPUARCH "x64"
#else
#define REQUIRE_BITNESS_CPUARCH "x86"
#endif #endif
// Const // Const
static const wchar_t *const JRE_RELATIVE_PATH = L"runtime\\bin\\javaw.exe"; static const wchar_t *const JRE_RELATIVE_PATH = L"runtime\\bin\\javaw.exe";
static const wchar_t *const JRE_DOWNLOAD_LINK = L"https://adoptopenjdk.net/"; static const wchar_t *const JRE_DOWNLOAD_LINK = L"https://adoptopenjdk.net/";
static const DWORD SPLASH_SCREEN_TIMEOUT = 30000U; static const DWORD SPLASH_SCREEN_TIMEOUT = 30000U;
#if REQUIRE_JAVA11 static const ULONGLONG JAVA_MINIMUM_VERSION = ((ULONGLONG)(REQUIRE_JAVA)) << 48;
static const ULONGLONG JAVA_MINIMUM_VERSION = 0x000B000000000000ull;
#else
static const ULONGLONG JAVA_MINIMUM_VERSION = 0x0008000000000000ull;
#endif
// Version
static const DWORD REQUIRED_VERSION[] =
{
(JAVA_MINIMUM_VERSION >> 48) & 0xFFFF, (JAVA_MINIMUM_VERSION >> 32) & 0xFFFF, (JAVA_MINIMUM_VERSION >> 16) & 0xFFFF, JAVA_MINIMUM_VERSION & 0xFFFF
};
/* ======================================================================== */ /* ======================================================================== */
/* String routines */ /* String routines */
/* ======================================================================== */ /* ======================================================================== */
#define XSTR(S) STR(S)
#define STR(S) #S
#define NOT_EMPTY(STR) ((STR) && ((STR)[0U])) #define NOT_EMPTY(STR) ((STR) && ((STR)[0U]))
#define SET_STRING(DST,SRC) do \ #define SET_STRING(DST,SRC) do \
{ \ { \
if((DST)) { free((void*)(DST)); } \ if((DST)) { free((void*)(DST)); } \
@ -457,7 +466,7 @@ static ULONGLONG parse_java_version(const wchar_t *const version_str)
wchar_t *const temp = wcsdup(version_str); wchar_t *const temp = wcsdup(version_str);
if (temp) if (temp)
{ {
static const wchar_t *const delimiters = L".,_"; static const wchar_t *const delimiters = L".,_+";
BOOL first_token = TRUE; BOOL first_token = TRUE;
const wchar_t *token = wcstok(temp, delimiters); const wchar_t *token = wcstok(temp, delimiters);
while (token) while (token)
@ -571,21 +580,17 @@ static const wchar_t *detect_java_runtime_loop(const BOOL flag_x64)
static const wchar_t *detect_java_runtime(void) static const wchar_t *detect_java_runtime(void)
{ {
const wchar_t *java_runtime; const wchar_t *java_runtime;
#if PREFER_X64 #if (REQUIRE_BITNESS != 32)
if(java_runtime = running_on_64bit() ? detect_java_runtime_loop(TRUE) : NULL) if(java_runtime = running_on_64bit() ? detect_java_runtime_loop(TRUE) : NULL)
{ {
return java_runtime; return java_runtime;
} }
#endif #endif
#if (REQUIRE_BITNESS != 64)
if(java_runtime = detect_java_runtime_loop(FALSE)) if(java_runtime = detect_java_runtime_loop(FALSE))
{ {
return java_runtime; return java_runtime;
} }
#if !PREFER_X64
if(java_runtime = running_on_64bit() ? detect_java_runtime_loop(TRUE) : NULL)
{
return java_runtime;
}
#endif #endif
return NULL; return NULL;
} }
@ -745,6 +750,11 @@ static int show_message_format(HWND hwnd, const DWORD flags, const wchar_t *cons
static void show_jre_download_notice(const HWND hwnd) static void show_jre_download_notice(const HWND hwnd)
{ {
const DWORD REQUIRED_VERSION[] =
{
(JAVA_MINIMUM_VERSION >> 48) & 0xFFFF, (JAVA_MINIMUM_VERSION >> 32) & 0xFFFF,
(JAVA_MINIMUM_VERSION >> 16) & 0xFFFF, JAVA_MINIMUM_VERSION & 0xFFFF
};
wchar_t *const version_str = (REQUIRED_VERSION[3U] != 0U) wchar_t *const version_str = (REQUIRED_VERSION[3U] != 0U)
? awprintf(L"%u.%u.%u_%u", REQUIRED_VERSION[0U], REQUIRED_VERSION[1U], REQUIRED_VERSION[2U], REQUIRED_VERSION[3U]) ? awprintf(L"%u.%u.%u_%u", REQUIRED_VERSION[0U], REQUIRED_VERSION[1U], REQUIRED_VERSION[2U], REQUIRED_VERSION[3U])
: ((REQUIRED_VERSION[2U] != 0U) : ((REQUIRED_VERSION[2U] != 0U)
@ -754,6 +764,9 @@ static void show_jre_download_notice(const HWND hwnd)
{ {
if (show_message_format(hwnd, MB_ICONWARNING | MB_OKCANCEL | MB_TOPMOST, L"JRE not found", if (show_message_format(hwnd, MB_ICONWARNING | MB_OKCANCEL | MB_TOPMOST, L"JRE not found",
L"This application requires the Java Runtime Environment, version %ls, or a compatible newer version.\n\n" L"This application requires the Java Runtime Environment, version %ls, or a compatible newer version.\n\n"
#if (REQUIRE_BITNESS != 0)
L"Only the " XSTR(REQUIRE_BITNESS) "-Bit (" REQUIRE_BITNESS_CPUARCH ") version of the JRE is supported!\n\n"
#endif
L"We recommend downloading the OpenJDK runtime here:\n%ls", version_str, JRE_DOWNLOAD_LINK) == IDOK) L"We recommend downloading the OpenJDK runtime here:\n%ls", version_str, JRE_DOWNLOAD_LINK) == IDOK)
{ {
ShellExecuteW(hwnd, NULL, JRE_DOWNLOAD_LINK, NULL, NULL, SW_SHOW); ShellExecuteW(hwnd, NULL, JRE_DOWNLOAD_LINK, NULL, NULL, SW_SHOW);