Skip to content

Commit 0e21adb

Browse files
committed
Add mingw support
Add support for MinGW
1 parent 377d035 commit 0e21adb

12 files changed

+208
-65
lines changed

Diff for: acx_pthread.m4

+3
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,9 @@ case "${host_cpu}-${host_os}" in
7474
7575
acx_pthread_flags="-pthread -pthreads pthread -mt $acx_pthread_flags"
7676
;;
77+
*mingw*)
78+
acx_pthread_flags="none"
79+
;;
7780
esac
7881
7982
if test x"$acx_pthread_ok" = xno; then

Diff for: builds/posix/Makefile.in

+32-10
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ $(RE2_LIB): $(RE2_Objs)
315315
libcds:
316316
mkdir -p $(LIBCDS)/lib/$(TARGET)
317317
cd $(LIBCDS)/lib/$(TARGET); \
318-
cmake -DCMAKE_BUILD_TYPE=$(FB_CMAKE_BUILD_TYPE) -DCMAKE_CXX_COMPILER="$(CXX)" -DCMAKE_CXX_FLAGS=-fPIC $(LIBCDS)
318+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=$(FB_CMAKE_BUILD_TYPE) -DCMAKE_CXX_COMPILER="$(CXX)" -DCMAKE_CXX_FLAGS=-fPIC $(LIBCDS)
319319
AR="$(AR)" $(MAKE) -C $(LIBCDS)/lib/$(TARGET)
320320

321321
ifeq ($(TARGET),Debug)
@@ -551,10 +551,15 @@ $(LIBIBUTIL_SO): $(UTIL_Objects)
551551

552552
utilities: firebird_server fb_lock_print fbguard fbsvcmgr fbtracemgr gbak gfix gsec gsplit gstat isql nbackup udfsupport
553553

554+
ifeq ($(PLATFORM),win32)
555+
.PHONY: instreg instsvc instclient
556+
utilities +: instreg instsvc instclient
557+
endif
558+
554559
firebird_server: $(FB_DAEMON)
555560

556561
$(FB_DAEMON): $(Remote_Server_Objects) $(COMMON_LIB)
557-
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
562+
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LIB_GUI) $(LINK_LIBS)
558563

559564
fb_lock_print: $(LOCKPRINT)
560565

@@ -564,7 +569,7 @@ $(LOCKPRINT): $(LOCKPRINT_Objects) $(COMMON_LIB)
564569
fbguard: $(FBGUARD)
565570

566571
$(FBGUARD): $(FBGUARD_Objects) $(COMMON_LIB)
567-
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
572+
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LIB_GUI) $(LINK_LIBS)
568573

569574
fbsvcmgr: $(FBSVCMGR)
570575

@@ -614,6 +619,21 @@ nbackup: $(NBACKUP)
614619
$(NBACKUP): $(NBACKUP_Objects) $(COMMON_LIB)
615620
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
616621

622+
instreg: $(INSTREG)
623+
624+
$(INSTREG): $(INSTREG_Objects) $(COMMON_LIB)
625+
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
626+
627+
instsvc: $(INSTSVC)
628+
629+
$(INSTSVC): $(INSTSVC_Objects) $(COMMON_LIB)
630+
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
631+
632+
instclient: $(INSTCLIENT)
633+
634+
$(INSTCLIENT): $(INSTCLIENT_Objects) $(COMMON_LIB)
635+
$(EXE_LINK) $(EXE_LINK_OPTIONS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
636+
617637

618638
#___________________________________________________________________________
619639
# plugins - some of them are required to build examples, use separate entry for them
@@ -636,6 +656,8 @@ ifeq ($(TARGET),Debug)
636656
BUILD_DEBUG:=auth_debug
637657
endif
638658

659+
PLUGIN_SONAME=$(notdir $@).0
660+
639661
plugins: udr legacy_user_management legacy_auth_server srp_user_management trace $(BUILD_DEBUG) udf_compat chacha profiler
640662

641663
udr: $(UDR_PLUGIN) $(PLUGINS)/udr_engine.conf
@@ -644,31 +666,31 @@ $(PLUGINS)/udr_engine.conf: $(ROOT)/src/plugins/udr_engine/udr_engine.conf
644666
cp $^ $@
645667

646668
$(UDR_PLUGIN): $(UDRENG_Objects) $(COMMON_LIB)
647-
$(LINK_UDRENG) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_UDRENG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
669+
$(LINK_UDRENG) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_UDRENG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
648670
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libudr_engine.$(SHRLIB_EXT))
649671

650672
legacy_user_management: $(LEGACY_USER_MANAGER)
651673

652674
$(LEGACY_USER_MANAGER): $(LEGACY_USERS_MANAGE_Objects) $(COMMON_LIB)
653-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(RE2LIB) $(FIREBIRD_LIBRARY_LINK)\
675+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(RE2LIB) $(FIREBIRD_LIBRARY_LINK)\
654676
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libLegacy_UserManager.$(SHRLIB_EXT))
655677

656678
chacha: $(CHACHA)
657679

658680
$(CHACHA): $(Chacha_Objects) $(COMMON_LIB)
659-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
681+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
660682
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libChaCha.$(SHRLIB_EXT))
661683

662684
legacy_auth_server: $(LEGACY_AUTH_SERVER)
663685

664686
$(LEGACY_AUTH_SERVER): $(LEGACY_AUTH_SERVER_Objects) $(COMMON_LIB)
665-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
687+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
666688
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libLegacy_Auth.$(SHRLIB_EXT))
667689

668690
profiler: $(PROFILER)
669691

670692
$(PROFILER): $(Profiler_Objects) $(COMMON_LIB)
671-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
693+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
672694
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libDefault_Profiler.$(SHRLIB_EXT))
673695

674696
trace: $(FBTRACE)
@@ -679,13 +701,13 @@ $(FBTRACE): $(FBTRACE_UTIL_Objects) $(COMMON_LIB)
679701
auth_debug: $(AUTH_DEBUGGER)
680702

681703
$(AUTH_DEBUGGER): $(AUTH_DEBUGGER_Objects) $(COMMON_LIB)
682-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
704+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
683705
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libAuth_Debug.$(SHRLIB_EXT))
684706

685707
srp_user_management: $(SRP_USER_MANAGER)
686708

687709
$(SRP_USER_MANAGER): $(SRP_USERS_MANAGE_Objects) $(COMMON_LIB)
688-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
710+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)\
689711
$(call LIB_LINK_DARWIN_INSTALL_NAME,plugins/libSrp.$(SHRLIB_EXT))
690712

691713
udf_compat: $(UDF_BACKWARD_COMPATIBILITY) $(COMPAT_SQL)

Diff for: builds/posix/Makefile.in.examples

+4-1
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,11 @@ export PATH
6767
#endif
6868
GPRE_FLAGS= -m -z -n
6969

70+
ifneq ($(PLATFORM),win32)
71+
LIB_PREFIX = lib
7072
LIB_LINK_RPATH = $(call LIB_PLATFORM_RPATH,$(if $(subst intl,,$(1)),$(LIB),$(LIB)/../intl))
7173
LINK_DARWIN_RPATH = -Wl,-rpath,@loader_path/../$(TARGET)/firebird
74+
endif
7275
LIB_LINK_MAPFILE =
7376

7477
EXAMPLES_DEST= $(GEN_ROOT)/examples
@@ -91,7 +94,7 @@ EMPLOYEE_DB= $(EXAMPLES_DEST)/employee.fdb
9194
FINAL_EMPDB= $(EXAMPLES_FB)/empbuild/employee.fdb
9295
INTLEMP_DB= $(EXAMPLES_DEST)/intlemp.fdb
9396

94-
EXTAUTH_PLUGIN= $(EXAMPLES_FB)/prebuilt/libfbSampleExtAuth.$(SHRLIB_EXT)
97+
EXTAUTH_PLUGIN= $(EXAMPLES_FB)/prebuilt/$(LIB_PREFIX)fbSampleExtAuth.$(SHRLIB_EXT)
9598

9699
.PHONY: all examples
97100

Diff for: examples/extauth/Makefile renamed to builds/posix/Makefile.in.extauth

+15-3
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@ BIN=$(ROOT)/bin
2828
LIB=$(ROOT)/lib
2929

3030
LIB_PREFIX=lib
31-
SHRLIB_EXT=so
31+
SHRLIB_EXT=@SHRLIB_EXT@
32+
EXEC_EXT=@EXEEXT@
33+
PLATFORM=@PLATFORM@
3234

3335
ifndef INTERMED
3436
INTERMED=.
@@ -42,7 +44,12 @@ else
4244
OUT_PLUG=.
4345
endif
4446

47+
ifeq ($(PLATFORM),win32)
48+
LIB_PREFIX=
49+
TOMCRYPT_COMPILE=-DUSE_LTM -DLTM_DESC
50+
else
4551
TOMCRYPT_COMPILE=-DLTC_PTHREAD -DUSE_LTM -DLTM_DESC
52+
endif
4653
OwnInclude=$(shell [ -d tomcrypt.include ] && echo Yes || echo No)
4754
ifeq ($(OwnInclude), Yes)
4855
TOMCRYPT_COMPILE += -Itomcrypt.include
@@ -53,16 +60,21 @@ SIMPLE_KEY_AUTH_NAME=$(LIB_PREFIX)fbSampleExtAuth.$(SHRLIB_EXT)
5360
BLD_SIMPLE_KEY_AUTH=$(OUT_PLUG)/$(SIMPLE_KEY_AUTH_NAME)
5461
SIMPLE_KEY_AUTH=$(PLUGINS)/$(SIMPLE_KEY_AUTH_NAME)
5562

56-
KEYGEN_NAME=fbSampleExtAuthKeygen
63+
KEYGEN_NAME=fbSampleExtAuthKeygen$(EXEC_EXT)
5764
BLD_KEYGEN=$(OUT_BIN)/$(KEYGEN_NAME)
5865
KEYGEN=$(BIN)/$(KEYGEN_NAME)
5966

6067
KEYGEN_objects=$(INTERMED)/keygen.o
6168
TCWRAP_objects=$(INTERMED)/TcWrapper.o
6269
KEY_AUTH_objects=$(INTERMED)/ExtAuth.o
6370

64-
CXXFLAGS=-std=c++11 -pthread -I$(ROOT)/include -fPIC $(TOMCRYPT_COMPILE)
71+
ifeq ($(PLATFORM),win32)
72+
CXXFLAGS=-std=c++17 -I$(ROOT)/include $(TOMCRYPT_COMPILE)
73+
LDFLAGS=-L$(LIB)
74+
else
75+
CXXFLAGS=-std=c++17 -pthread -I$(ROOT)/include -fPIC $(TOMCRYPT_COMPILE)
6576
LDFLAGS=-pthread -L$(LIB) -Wl,-rpath,'$$ORIGIN/../lib' $(TOMCRYPT_LINK)
77+
endif
6678

6779
LINK_LIBS=-lfbclient -ltomcrypt -ltommath
6880

Diff for: builds/posix/Makefile.in.plugins_examples

+16-6
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,16 @@ include $(ROOT)/gen/make.shared.variables
6060

6161
all: udrcpp_example dc_example kh_example crypt_app
6262

63+
ifeq ($(PLATFORM),win32)
64+
PLUGIN_SONAME=$(notdir $@)
65+
PLUGINS_DIR=$(FIREBIRD)/examples/prebuilt/plugins
66+
SAMPLES_DIR=$(FIREBIRD)/examples/prebuilt/bin
67+
makePluginName=$(PLUGINS_DIR)/$(1).$(SHRLIB_EXT)
68+
else
69+
PLUGIN_SONAME=$(notdir $@).0
70+
PLUGINS_DIR=$(PLUGINS)
71+
SAMPLES_DIR=$(BIN)
72+
endif
6373

6474
UDR_Objects = $(call dirObjects,../examples/udr)
6575
UDR_Plugin = $(PLUGINS)/udr/$(LIB_PREFIX)udrcpp_example.$(SHRLIB_EXT)
@@ -72,7 +82,7 @@ ifeq ($(PLATFORM),DARWIN)
7282
$(LIB_LINK) $(LIB_BUNDLE_OPTIONS) -o $@ $^ @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ \
7383
$(FIREBIRD_LIBRARY_LINK)
7484
else
75-
$(LIB_LINK) $(LIB_LINK_OPTIONS) $(LIB_LINK_SONAME)udrcpp_example.$(SHRLIB_EXT) \
85+
$(LIB_LINK) $(LIB_LINK_OPTIONS) $(call LIB_LINK_SONAME,udrcpp_example.$(SHRLIB_EXT)) \
7686
$(LIB_PATH_OPTS) -o $@ $^ $(THR_LIBS) \
7787
$(FIREBIRD_LIBRARY_LINK)
7888
endif
@@ -85,8 +95,8 @@ AllObjects += $(DC_Objects)
8595
dc_example: $(DC_Plugin)
8696

8797
$(DC_Plugin): $(DC_Objects)
88-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
89-
$(CP) $(EXA_ROOT)/dbcrypt/fbSampleDbCrypt.conf $(PLUGINS)
98+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
99+
$(CP) $(EXA_ROOT)/dbcrypt/fbSampleDbCrypt.conf $(PLUGINS_DIR)
90100

91101

92102
KH_Objects = $(call makeObjects,../examples/dbcrypt,CryptKeyHolder.cpp)
@@ -96,12 +106,12 @@ AllObjects += $(KH_Objects)
96106
kh_example: $(KH_Plugin)
97107

98108
$(KH_Plugin): $(KH_Objects)
99-
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
100-
$(CP) $(EXA_ROOT)/dbcrypt/fbSampleKeyHolder.conf $(PLUGINS)
109+
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(PLUGIN_SONAME)) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
110+
$(CP) $(EXA_ROOT)/dbcrypt/fbSampleKeyHolder.conf $(PLUGINS_DIR)
101111

102112

103113
CA_Objects = $(call makeObjects,../examples/dbcrypt,CryptApplication.cpp)
104-
CRYPT_APP = $(BIN)/fbSampleDbCryptApp$(EXEC_EXT)
114+
CRYPT_APP = $(SAMPLES_DIR)/fbSampleDbCryptApp$(EXEC_EXT)
105115
AllObjects += $(CA_Objects)
106116

107117
crypt_app: $(CRYPT_APP)

Diff for: builds/posix/make.defaults

+7-5
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ INLINE_EDIT_SED:= -i
172172

173173
SH= sh -c
174174
RM= rm -f
175-
RM_R= rm -rf
175+
RM_R= rm -rf
176176
CHMOD= chmod
177177
CHMOD_6= chmod 666
178178
CHMOD_7= chmod 777
@@ -196,6 +196,7 @@ CXX = @CXX@
196196
LD = @CXX@
197197
OBJCOPY = @OBJCOPY@
198198
READELF = @READELF@
199+
WINDRES = @WINDRES@
199200

200201
AC_CFLAGS = @CFLAGS@
201202
AC_CXXFLAGS = @CXXFLAGS@
@@ -215,7 +216,7 @@ SO_LINK_LIBS = @LIBS@ $(DECLIB) $(I128LIB)
215216

216217
ARCH_EXT= .a
217218
EXEC_EXT= @EXEEXT@
218-
SHRLIB_EXT=@SHRLIB_EXT@
219+
SHRLIB_EXT= @SHRLIB_EXT@
219220
LIB_PREFIX= lib
220221
SHRLIB_FOREIGN_EXT= $(SHRLIB_EXT)
221222

@@ -233,7 +234,7 @@ include $(ROOT)/gen/Make.Version
233234

234235
vpath %.so $(LIB)
235236
vpath %.a $(LIB)
236-
vpath %.dll $(LIB)
237+
vpath %.dll $(BIN)
237238

238239
#_____________________________________________________________________________
239240

@@ -357,7 +358,7 @@ endif
357358
LIB_PATH_OPTS = $(call LIB_LINK_RPATH,lib) $(call LIB_LINK_RPATH,intl)
358359
LIB_LINK_SONAME= -Wl,-soname,$(1)
359360
LIB_LINK_MAPFILE= -Wl,--version-script,$(1)
360-
FIREBIRD_LIBRARY_LINK= -L$(LIB) -L$(STATIC_LIB) -lfbclient $(MATHLIB) $(CRYPTLIB)
361+
FIREBIRD_LIBRARY_LINK= -L$(LIB) -L$(STATIC_LIB) -lfbclient $(CRYPTLIB) $(MATHLIB)
361362

362363
EXE_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) $(call LINK_DARWIN_RPATH,..) $(LINK_EMPTY_SYMBOLS)
363364
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -shared
@@ -383,7 +384,7 @@ LINK_TRACE_LIBS = -L$(LIB) -L$(STATIC_LIB) $(SO_LINK_LIBS)
383384

384385
LINK_FIREBIRD = $(LIB_LINK) $(LINK_FIREBIRD_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
385386
$(call LIB_LINK_SONAME,$(LibrarySoName)) $(call LIB_LINK_RPATH,lib) $(call LINK_DARWIN_RPATH,..)
386-
LINK_FIREBIRD_LIBS = -L$(LIB) -L$(STATIC_LIB) $(LIB_GUI) $(SO_LINK_LIBS) $(MATHLIB)
387+
LINK_FIREBIRD_LIBS = -L$(LIB) -L$(STATIC_LIB) $(LIB_GUI) $(SO_LINK_LIBS) $(CRYPTLIB) $(MATHLIB)
387388

388389
LINK_ENGINE = $(LIB_LINK) $(LINK_PLUGIN_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
389390
$(call LIB_LINK_SONAME,$(EngineSoName)) $(call LIB_LINK_RPATH,lib) $(call LINK_DARWIN_RPATH,..)
@@ -414,6 +415,7 @@ RUN_GFIX = $(RBIN)/gfix$(EXEC_EXT)
414415
FBGUARD = $(BIN)/fbguard$(EXEC_EXT)
415416
INSTREG = $(BIN)/instreg$(EXEC_EXT)
416417
INSTSVC = $(BIN)/instsvc$(EXEC_EXT)
418+
INSTCLIENT = $(BIN)/instclient$(EXEC_EXT)
417419

418420
SECURITY_FDB = $(FIREBIRD)/security6.fdb
419421

Diff for: builds/posix/make.rules

+2-2
Original file line numberDiff line numberDiff line change
@@ -147,8 +147,8 @@ $(OBJ)/%.o: $(ROOT)/%.cpp
147147

148148
# Rules for making resource files
149149

150-
$(GEN_ROOT)/%.res: $(SRC_ROOT)/%.rc
151-
windres --output-format=coff --include-dir=$(<D) $< $@
150+
$(OBJ)/%.res: $(SRC_ROOT)/%.rc
151+
$(WINDRES) $(RCFLAGS) --output-format=coff --include-dir=$(<D) $< $@
152152

153153
# Rule for making gbak files when cross-compiling
154154

Diff for: builds/posix/make.shared.targets

+30-8
Original file line numberDiff line numberDiff line change
@@ -78,17 +78,39 @@ $(OBJ)/dsql/PackageNodes.cpp: $(SRC_ROOT)/dsql/PackageNodes.epp
7878

7979
# Adding resources as prerequisite for some files
8080

81-
$(FilesToAddVersionInfo): $(GEN_ROOT)/jrd/version.res
82-
$(FilesToAddDialog): $(GEN_ROOT)/remote/os/win32/window.res
83-
$(FilesToAddDialog2): $(GEN_ROOT)/iscguard/iscguard.res
81+
$(FilesToAddVersionInfo): $(OBJ)/jrd/version.res
82+
$(FilesToAddVersionInfo2): $(OBJ)/yvalve/config/os/win32/version.res
83+
$(FilesToAddVersionInfo3): $(OBJ)/jrd/os/win32/version.res
84+
$(FilesToAddVersionInfo4): $(OBJ)/intl/version.res
85+
$(FilesToAddVersionInfo5): $(OBJ)/extlib/version.res
86+
$(FilesToAddDialog): $(OBJ)/remote/server/os/win32/window.res
87+
$(FilesToAddDialog2): $(OBJ)/iscguard/iscguard.res
8488

8589
# Explicit dependence of resource script
86-
$(GEN_ROOT)/remote/os/win32/window.res: $(SRC_ROOT)/remote/os/win32/window.rc $(SRC_ROOT)/remote/os/win32/window.rh \
87-
$(SRC_ROOT)/jrd/version.rc $(SRC_ROOT)/jrd/build_no.h $(SRC_ROOT)/remote/os/win32/property.rc \
88-
$(SRC_ROOT)/remote/os/win32/property.rh
8990

90-
$(GEN_ROOT)/iscguard/iscguard.res: $(SRC_ROOT)/iscguard/iscguard.rc $(SRC_ROOT)/iscguard/iscguard.rh \
91-
$(SRC_ROOT)/jrd/version.rc
91+
# fbclient.dll
92+
$(OBJ)/yvalve/config/os/win32/version.res: $(SRC_ROOT)/jrd/version.rc
93+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_fbclient --output-format=coff --include-dir=$(<D) $< $@
94+
95+
# engine14.dll
96+
$(OBJ)/jrd/os/win32/version.res: $(SRC_ROOT)/jrd/version.rc
97+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_engine14 --output-format=coff --include-dir=$(<D) $< $@
98+
99+
# fbintl.dll
100+
$(OBJ)/intl/version.res: $(SRC_ROOT)/jrd/version.rc
101+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_fbintl --output-format=coff --include-dir=$(<D) $< $@
102+
103+
# ib_util.dll
104+
$(OBJ)/extlib/version.res: $(SRC_ROOT)/jrd/version.rc
105+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_ib_util --output-format=coff --include-dir=$(<D) $< $@
106+
107+
# firebird.exe
108+
$(OBJ)/remote/server/os/win32/window.res: $(SRC_ROOT)/remote/server/os/win32/window.rc
109+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_firebird --output-format=coff --include-dir=$(<D) $< $@
110+
111+
# fbguard.exe
112+
$(OBJ)/iscguard/iscguard.res: $(SRC_ROOT)/iscguard/iscguard.rc
113+
$(WINDRES) $(RCFLAGS) -DRC_TARGET_fbguard --output-format=coff --include-dir=$(<D) $< $@
92114

93115
.PHONY: FORCE
94116

0 commit comments

Comments
 (0)