@@ -78,12 +78,12 @@ ifneq ($(make_ge_4_1),1)
7878# don't use variable expansion trick as workaround for bugs of GNU Make before 4.1
7979LIBS ?= $(shell $(uname2libs ) )
8080LDFLAGS ?= $(shell $(uname2ldflags ) )
81- LIB_STDCXXFS ?= $(shell echo '$(cxx_filesystem_probe ) ' | cat mdbx.h++ - | sed $$'1s/\xef\xbb\xbf//' | $(CXX ) -x c++ $(CXXFLAGS ) -Wno-error - -Wl,--allow-multiple-definition -lstdc++fs $(LIBS ) $(LDFLAGS ) $(EXE_LDFLAGS ) -o /dev/null 2>probe4lstdfs.err >/dev/null && echo '-Wl,--allow-multiple-definition -lstdc++fs')
81+ LIB_STDCXXFS ?= $(shell echo '$(cxx_filesystem_probe ) ' | cat mdbx.h++ - | sed $$'1s/\xef\xbb\xbf//' | grep -v 'pragma once' | $(CXX ) -x c++ $(CXXFLAGS ) -Wno-error - -Wl,--allow-multiple-definition -lstdc++fs $(LIBS ) $(LDFLAGS ) $(EXE_LDFLAGS ) -o /dev/null 2>probe4lstdfs.err >/dev/null && echo '-Wl,--allow-multiple-definition -lstdc++fs')
8282else
8383# using variable expansion trick to avoid repeaded probes
8484LIBS ?= $(eval LIBS := $$(shell $$(uname2libs ) ) )$(LIBS )
8585LDFLAGS ?= $(eval LDFLAGS := $$(shell $$(uname2ldflags ) ) )$(LDFLAGS )
86- LIB_STDCXXFS ?= $(eval LIB_STDCXXFS := $$(shell echo '$$(cxx_filesystem_probe ) ' | cat mdbx.h++ - | sed $$$$'1s/\xef\xbb\xbf//' | $(CXX ) -x c++ $(CXXFLAGS ) -Wno-error - -Wl,--allow-multiple-definition -lstdc++fs $(LIBS ) $(LDFLAGS ) $(EXE_LDFLAGS ) -o /dev/null 2>probe4lstdfs.err >/dev/null && echo '-Wl,--allow-multiple-definition -lstdc++fs') )$(LIB_STDCXXFS )
86+ LIB_STDCXXFS ?= $(eval LIB_STDCXXFS := $$(shell echo '$$(cxx_filesystem_probe ) ' | cat mdbx.h++ - | sed $$$$'1s/\xef\xbb\xbf//' | grep -v '#pragma once' | $(CXX ) -x c++ $(CXXFLAGS ) -Wno-error - -Wl,--allow-multiple-definition -lstdc++fs $(LIBS ) $(LDFLAGS ) $(EXE_LDFLAGS ) -o /dev/null 2>probe4lstdfs.err >/dev/null && echo '-Wl,--allow-multiple-definition -lstdc++fs') )$(LIB_STDCXXFS )
8787endif
8888
8989ifneq ($(make_ge_4_4 ) ,1)
@@ -347,34 +347,34 @@ config-gnumake.h: @buildflags.tag mdbx.c $(lastword $(MAKEFILE_LIST)) LICENSE NO
347347 && echo ' #define MDBX_BUILD_METADATA "$(MDBX_BUILD_METADATA)"' \
348348 ) > $@
349349
350- mdbx-dylib.o : config-gnumake.h mdbx.c mdbx.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
350+ mdbx-dylib.o : config-gnumake.h mdbx.c mdbx.h mdbx-internals.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
351351 @echo ' CC $@'
352352 $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' -DLIBMDBX_EXPORTS=1 -c mdbx.c -o $@
353353
354- mdbx-static.o : config-gnumake.h mdbx.c mdbx.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
354+ mdbx-static.o : config-gnumake.h mdbx.c mdbx.h mdbx-internals.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
355355 @echo ' CC $@'
356356 $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' -ULIBMDBX_EXPORTS -c mdbx.c -o $@
357357
358- mdbx++-dylib.o : config-gnumake.h mdbx.c++ $(HEADERS ) $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
358+ mdbx++-dylib.o : config-gnumake.h mdbx.c++ $(HEADERS ) mdbx-internals.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
359359 @echo ' CC $@'
360360 $(QUIET )$(CXX ) $(CXXFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' -DLIBMDBX_EXPORTS=1 -c mdbx.c++ -o $@
361361
362- mdbx++-static.o : config-gnumake.h mdbx.c++ $(HEADERS ) $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
362+ mdbx++-static.o : config-gnumake.h mdbx.c++ $(HEADERS ) mdbx-internals.h $(lastword $(MAKEFILE_LIST ) ) LICENSE NOTICE COPYRIGHT
363363 @echo ' CC $@'
364364 $(QUIET )$(CXX ) $(CXXFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' -ULIBMDBX_EXPORTS -c mdbx.c++ -o $@
365365
366- mdbx_% : mdbx_% .c mdbx-static.o
366+ mdbx_% : mdbx_% .c mdbx-static.o mdbx-wingetopt.h
367367 @echo ' CC+LD $@'
368- $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' $^ $(EXE_LDFLAGS ) $(LIBS ) -o $@
368+ $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' $< mdbx-static.o $( LDFLAGS ) $(EXE_LDFLAGS ) $(LIBS ) -o $@
369369
370370mdbx_% .static : mdbx_% .c mdbx-static.o
371371 @echo ' CC+LD $@'
372- $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' $^ $(EXE_LDFLAGS ) -static -Wl,--strip-all -o $@
372+ $(QUIET )$(CC ) $(CFLAGS ) $(MDBX_BUILD_OPTIONS ) ' -DMDBX_CONFIG_H="config-gnumake.h"' $^ $(LDFLAGS ) $( EXE_LDFLAGS ) -static -Wl,--strip-all -o $@
373373
374374mdbx_% .static-lto : mdbx_% .c config-gnumake.h mdbx.c mdbx.h
375375 @echo ' CC+LD $@'
376376 $(QUIET )$(CC ) $(CFLAGS ) -Os -flto $(MDBX_BUILD_OPTIONS ) ' -DLIBMDBX_API=' ' -DMDBX_CONFIG_H="config-gnumake.h"' \
377- $< mdbx.c $(EXE_LDFLAGS ) $(LIBS ) -static -Wl,--strip-all -o $@
377+ $< mdbx.c $(LDFLAGS ) $( EXE_LDFLAGS ) $(LIBS ) -static -Wl,--strip-all -o $@
378378
379379check smoke : test
380380
0 commit comments