diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ee10dea2e..7caa5ac47 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,6 +25,7 @@ on: - 'OpenCL/**.cl' - 'include/**.h' - 'src/**.c' + - 'src/**.mk' - 'tools/**' - '**/Makefile' - '.github/workflows/build.yml' @@ -36,6 +37,7 @@ on: - 'OpenCL/**.cl' - 'include/**.h' - 'src/**.c' + - 'src/**.mk' - 'tools/**' - '**/Makefile' - '.github/workflows/build.yml' diff --git a/src/Makefile b/src/Makefile index fe28aff62..917f78126 100644 --- a/src/Makefile +++ b/src/Makefile @@ -748,10 +748,10 @@ $(BRIDGES_DISABLE): ; ifeq ($(SHARED),1) bridges/bridge_%.$(BRIDGE_SUFFIX): src/bridges/bridge_%.c $(HASHCAT_LIBRARY) - $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) -march=native + $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) else bridges/bridge_%.$(BRIDGE_SUFFIX): src/bridges/bridge_%.c obj/combined.NATIVE.a - $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) -march=native + $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) endif BRIDGES_LIB := $(patsubst src/bridges/bridge_%.c, bridges/bridge_%.$(BRIDGE_SUFFIX), $(BRIDGES_SRC)) @@ -877,11 +877,10 @@ bridges_linux: $(BRIDGES_LIB_LINUX) bridges_win: $(BRIDGES_LIB_WIN) bridges/bridge_%.so: src/bridges/bridge_%.c obj/combined.LINUX.a - $(CC_LINUX) $(CCFLAGS) $(CFLAGS_CROSS_LINUX) $^ -o $@ $(LFLAGS_CROSS_LINUX) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) -march=native + $(CC_LINUX) $(CCFLAGS) $(CFLAGS_CROSS_LINUX) $^ -o $@ $(LFLAGS_CROSS_LINUX) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) bridges/bridge_%.dll: src/bridges/bridge_%.c obj/combined.WIN.a - $(CC_WIN) $(CCFLAGS) $(CFLAGS_CROSS_WIN) $^ -o $@ $(LFLAGS_CROSS_WIN) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) -march=native - + $(CC_WIN) $(CCFLAGS) $(CFLAGS_CROSS_WIN) $^ -o $@ $(LFLAGS_CROSS_WIN) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) ## ## cross compiled hashcat diff --git a/src/bridges/bridge_argon2id_reference.mk b/src/bridges/bridge_argon2id_reference.mk index 50ca3bf7f..1ce6051ee 100644 --- a/src/bridges/bridge_argon2id_reference.mk +++ b/src/bridges/bridge_argon2id_reference.mk @@ -1,14 +1,30 @@ ARGON2_REFERENCE := deps/phc-winner-argon2-20190702 +ARGON2_REFERENCE_CFLAGS := -I$(ARGON2_REFERENCE)/_hashcat/ ifeq ($(MAKECMDGOALS),binaries) -ARGON2_REFERENCE_CFLAGS := -I$(ARGON2_REFERENCE)/_hashcat/ -mavx2 +ARGON2_REFERENCE_CFLAGS += -mavx2 else -ARGON2_REFERENCE_CFLAGS := -I$(ARGON2_REFERENCE)/_hashcat/ -march=native +ifeq ($(UNAME),Darwin) +ifeq ($(IS_APPLE_SILICON),0) +ARGON2_REFERENCE_CFLAGS += -mavx2 +endif +else +ARGON2_REFERENCE_CFLAGS += -march=native +endif endif +ifeq ($(MAKECMDGOALS),binaries) bridges/bridge_argon2id_reference.so: src/bridges/bridge_argon2id_reference.c obj/combined.LINUX.a - $(CC_LINUX) $(CCFLAGS) $(CFLAGS_CROSS_LINUX) $^ -o $@ $(LFLAGS_CROSS_LINUX) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) - + $(CC_LINUX) $(CCFLAGS) $(CFLAGS_CROSS_LINUX) $^ -o $@ $(LFLAGS_CROSS_LINUX) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) bridges/bridge_argon2id_reference.dll: src/bridges/bridge_argon2id_reference.c obj/combined.WIN.a - $(CC_WIN) $(CCFLAGS) $(CFLAGS_CROSS_WIN) $^ -o $@ $(LFLAGS_CROSS_WIN) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) + $(CC_WIN) $(CCFLAGS) $(CFLAGS_CROSS_WIN) $^ -o $@ $(LFLAGS_CROSS_WIN) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) +else +ifeq ($(SHARED),1) +bridges/bridge_argon2id_reference.$(BRIDGE_SUFFIX): src/bridges/bridge_argon2id_reference.c $(HASHCAT_LIBRARY) + $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) +else +bridges/bridge_argon2id_reference.$(BRIDGE_SUFFIX): src/bridges/bridge_argon2id_reference.c obj/combined.NATIVE.a + $(CC) $(CCFLAGS) $(CFLAGS_NATIVE) $^ -o $@ $(LFLAGS_NATIVE) -shared -fPIC -D BRIDGE_INTERFACE_VERSION_CURRENT=$(BRIDGE_INTERFACE_VERSION) $(ARGON2_REFERENCE_CFLAGS) +endif +endif