# This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # You may obtain a copy of the Licence at # http://www.gnu.org/licences/lgpl.html # # As a special exception this file can also be included in modules # with other source code as long as that source code has been # released under an Open Source Initiative certificed licence. # More information about OSI certification can be found at: # http://www.opensource.org # # This module is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public Licence for more details. # # This module was created by members of the firebird development # team. All individual contributions remain the Copyright (C) of # those individuals and all rights are reserved. Contributors to # this file are either listed below or can be obtained from a CVS # history command. # # Created by: Mark O'Donohue # # Contributor(s): # Adriano dos Santos Fernandes # ROOT=$(shell cd ..; pwd) ifeq ($(IsDeveloper), Y) DefaultTarget := Debug else DefaultTarget := Release endif CPPFLAGS += -std=c++17 -I$(FB_BUILD)/include include $(ROOT)/gen/make.defaults ifeq ($(CROSS_OUT), Y) include $(ROOT)/gen/make.crossPlatform else include $(ROOT)/gen/make.platform endif ifeq ($(PLATFORM),DARWIN) CPPFLAGS += -stdlib=libc++ endif include $(ROOT)/gen/make.rules include $(ROOT)/gen/make.shared.variables @SET_MAKE@ .PHONY: all udrcpp_example dc_example kh_example crypt_app all: udrcpp_example dc_example kh_example crypt_app UDR_Objects = $(call dirObjects,../examples/udr) UDR_Plugin = $(PLUGINS)/udr/$(LIB_PREFIX)udrcpp_example.$(SHRLIB_EXT) AllObjects = $(UDR_Objects) udrcpp_example: $(UDR_Plugin) $(UDR_Plugin): $(UDR_Objects) ifeq ($(PLATFORM),DARWIN) $(LIB_LINK) $(LIB_BUNDLE_OPTIONS) -o $@ $^ @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ \ $(FIREBIRD_LIBRARY_LINK) else $(LIB_LINK) $(LIB_LINK_OPTIONS) $(LIB_LINK_SONAME)udrcpp_example.$(SHRLIB_EXT) \ $(LIB_PATH_OPTS) -o $@ $^ $(THR_LIBS) \ $(FIREBIRD_LIBRARY_LINK) endif DC_Objects = $(call makeObjects,../examples/dbcrypt,DbCrypt.cpp) DC_Plugin = $(call makePluginName,fbSampleDbCrypt) AllObjects += $(DC_Objects) dc_example: $(DC_Plugin) $(DC_Plugin): $(DC_Objects) $(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK) $(CP) $(EXA_ROOT)/dbcrypt/fbSampleDbCrypt.conf $(PLUGINS) KH_Objects = $(call makeObjects,../examples/dbcrypt,CryptKeyHolder.cpp) KH_Plugin = $(call makePluginName,fbSampleKeyHolder) AllObjects += $(KH_Objects) kh_example: $(KH_Plugin) $(KH_Plugin): $(KH_Objects) $(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK) $(CP) $(EXA_ROOT)/dbcrypt/fbSampleKeyHolder.conf $(PLUGINS) CA_Objects = $(call makeObjects,../examples/dbcrypt,CryptApplication.cpp) CRYPT_APP = $(BIN)/fbSampleDbCryptApp$(EXEC_EXT) AllObjects += $(CA_Objects) crypt_app: $(CRYPT_APP) $(CRYPT_APP): $(CA_Objects) $(EXE_LINK) $(LSB_UNDEF) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) include $(ROOT)/gen/make.shared.targets Dependencies = $(AllObjects:.o=.d) -include $(Dependencies)