# 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 <mark.odonohue@ludwig.edu.au>
#
#  Contributor(s):
# 
#
#
ROOT=..
ObjModuleType=superclient
CPPFLAGS+= -DSUPERCLIENT

include     $(ROOT)/gen/make.defaults
include     $(ROOT)/gen/make.platform
include     $(ROOT)/gen/make.rules
include     $(ROOT)/gen/make.shared.variables

@SET_MAKE@


FBTRACE_UTIL_Files= TraceConfiguration.cpp traceplugin.cpp TracePluginImpl.cpp \
	TraceUnicodeUtils.cpp PluginLogWriter.cpp platform.cpp

FBTRACE_UTIL_Sources = $(addprefix utilities/ntrace/, $(FBTRACE_UTIL_Files))

FBTRACE_UTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACE_UTIL_Sources))))


FBTRACE_OTHER_Sources = $(OS_SPECIFIC_Sources) $(TRACE_OS_Sources) \
	jrd/isc.cpp jrd/isc_file.cpp jrd/isc_sync.cpp jrd/CharSet.cpp jrd/TextType.cpp \
	jrd/IntlUtil.cpp jrd/unicode_util.cpp common/classes/ClumpletReader.cpp common/utils.cpp

FBTRACE_OTHER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACE_OTHER_Sources))))


FBTRACE_Objects = $(FBTRACE_UTIL_Objects) $(FBTRACE_OTHER_Objects) $(CONFIG_Objects) \
				  $(VULCAN_Objects) $(FBCOMMON_ClientObjects) $(FBCLASSES_MsgObjects) \
				  $(FBCLASSES_ClientObjects) $(FBCONFIG_Objects)


AllObjects = $(FBTRACE_Objects)
Dependencies = $(AllObjects:.o=.d)


.PHONY: all fbtrace


all : fbtrace

fbtrace: $(FBTRACE)

ifeq (@FIREBIRD_ARCH_TYPE@,classic)
  LINK_TRACE_LIBS += -lfbembed
else
  FBTRACE_Objects += $(addprefix $(OBJ)/, $(addsuffix .o, $(basename jrd/gds.cpp)))
endif

$(FBTRACE):	$(FBTRACE_Objects)
	$(LINK_TRACE) -o $@ $^ $(LINK_TRACE_LIBS)


include $(ROOT)/gen/make.shared.targets

-include $(Dependencies)
