51ec29ea5d
Fix linking errors when using wxXML in sttaic monolithic build: in this case we must link with expat but it was listed too early, before wxWidgets libraries using it, in the bakefile-generated makefiles. Now add it to the end of the linker command line too by including -lexpat in EXTRALIBS_FOR_BASE which are appended to the linker arguments. Notice that now -lexpat is linked twice because it is still added by <wx-lib>xml</wx-lib> in bakefiles, even in monolithic build, but I don't know how to avoid it and it is harmless anyhow. Closes #12573. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
312 lines
12 KiB
Plaintext
312 lines
12 KiB
Plaintext
# =========================================================================
|
|
# This makefile was generated by
|
|
# Bakefile 0.2.9 (http://www.bakefile.org)
|
|
# Do not modify, all changes will be overwritten!
|
|
# =========================================================================
|
|
|
|
include ../../build/msw/config.gcc
|
|
|
|
# -------------------------------------------------------------------------
|
|
# Do not modify the rest of this file!
|
|
# -------------------------------------------------------------------------
|
|
|
|
### Variables: ###
|
|
|
|
CPPDEPS = -MT$@ -MF$@.d -MD -MP
|
|
WX_RELEASE_NODOT = 29
|
|
COMPILER_PREFIX = gcc
|
|
OBJS = \
|
|
$(COMPILER_PREFIX)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
|
LIBDIRNAME = .\..\..\lib\$(COMPILER_PREFIX)_$(LIBTYPE_SUFFIX)$(CFG)
|
|
SETUPHDIR = \
|
|
$(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
|
|
IPCCLIENT_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) \
|
|
$(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
|
|
$(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \
|
|
$(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \
|
|
$(__MSLU_DEFINE_p) -I$(SETUPHDIR) -I.\..\..\include \
|
|
$(____CAIRO_INCLUDEDIR_FILENAMES) -W -Wall -I. $(__DLLFLAG_p) \
|
|
-I.\..\..\samples -DNOPCH $(__RTTIFLAG) $(__EXCEPTIONSFLAG) \
|
|
-Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS)
|
|
IPCCLIENT_OBJECTS = \
|
|
$(OBJS)\ipcclient_sample_rc.o \
|
|
$(OBJS)\ipcclient_client.o
|
|
IPCSERVER_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) \
|
|
$(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
|
|
$(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \
|
|
$(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \
|
|
$(__MSLU_DEFINE_p) -I$(SETUPHDIR) -I.\..\..\include \
|
|
$(____CAIRO_INCLUDEDIR_FILENAMES) -W -Wall -I. $(__DLLFLAG_p) \
|
|
-I.\..\..\samples -DNOPCH $(__RTTIFLAG) $(__EXCEPTIONSFLAG) \
|
|
-Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS)
|
|
IPCSERVER_OBJECTS = \
|
|
$(OBJS)\ipcserver_sample_rc.o \
|
|
$(OBJS)\ipcserver_server.o
|
|
BASEIPCCLIENT_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) \
|
|
$(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
|
|
$(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \
|
|
$(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \
|
|
$(__MSLU_DEFINE_p) -I$(SETUPHDIR) -I.\..\..\include \
|
|
$(____CAIRO_INCLUDEDIR_FILENAMES) -W -Wall -I. $(__DLLFLAG_p) -DwxUSE_GUI=0 \
|
|
$(__RTTIFLAG) $(__EXCEPTIONSFLAG) -Wno-ctor-dtor-privacy $(CPPFLAGS) \
|
|
$(CXXFLAGS)
|
|
BASEIPCCLIENT_OBJECTS = \
|
|
$(OBJS)\baseipcclient_baseclient.o
|
|
BASEIPCSERVER_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) \
|
|
$(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
|
|
$(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) \
|
|
$(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) \
|
|
$(__MSLU_DEFINE_p) -I$(SETUPHDIR) -I.\..\..\include \
|
|
$(____CAIRO_INCLUDEDIR_FILENAMES) -W -Wall -I. $(__DLLFLAG_p) -DwxUSE_GUI=0 \
|
|
$(__RTTIFLAG) $(__EXCEPTIONSFLAG) -Wno-ctor-dtor-privacy $(CPPFLAGS) \
|
|
$(CXXFLAGS)
|
|
BASEIPCSERVER_OBJECTS = \
|
|
$(OBJS)\baseipcserver_baseserver.o
|
|
|
|
### Conditionally set variables: ###
|
|
|
|
ifeq ($(GCC_VERSION),2.95)
|
|
GCCFLAGS = -fvtable-thunks
|
|
endif
|
|
ifeq ($(USE_GUI),0)
|
|
PORTNAME = base
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
PORTNAME = msw
|
|
endif
|
|
ifeq ($(BUILD),debug)
|
|
WXDEBUGFLAG = d
|
|
endif
|
|
ifeq ($(UNICODE),1)
|
|
WXUNICODEFLAG = u
|
|
endif
|
|
ifeq ($(WXUNIV),1)
|
|
WXUNIVNAME = univ
|
|
endif
|
|
ifeq ($(SHARED),1)
|
|
WXDLLFLAG = dll
|
|
endif
|
|
ifeq ($(SHARED),0)
|
|
LIBTYPE_SUFFIX = lib
|
|
endif
|
|
ifeq ($(SHARED),1)
|
|
LIBTYPE_SUFFIX = dll
|
|
endif
|
|
ifeq ($(MONOLITHIC),0)
|
|
EXTRALIBS_FOR_BASE =
|
|
endif
|
|
ifeq ($(MONOLITHIC),1)
|
|
EXTRALIBS_FOR_BASE =
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
__ipcclient___depname = $(OBJS)\ipcclient.exe
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
__ipcserver___depname = $(OBJS)\ipcserver.exe
|
|
endif
|
|
ifeq ($(MONOLITHIC),1)
|
|
__LIB_PNG_IF_MONO_p = $(__LIB_PNG_p)
|
|
endif
|
|
ifeq ($(MONOLITHIC),1)
|
|
__LIB_PNG_IF_MONO_p_1 = $(__LIB_PNG_p)
|
|
endif
|
|
ifeq ($(WXUNIV),1)
|
|
__WXUNIV_DEFINE_p_0 = --define __WXUNIVERSAL__
|
|
endif
|
|
ifeq ($(DEBUG_FLAG),0)
|
|
__DEBUG_DEFINE_p_0 = --define wxDEBUG_LEVEL=0
|
|
endif
|
|
ifeq ($(BUILD),release)
|
|
__NDEBUG_DEFINE_p_0 = --define NDEBUG
|
|
endif
|
|
ifeq ($(USE_EXCEPTIONS),0)
|
|
__EXCEPTIONS_DEFINE_p_0 = --define wxNO_EXCEPTIONS
|
|
endif
|
|
ifeq ($(USE_RTTI),0)
|
|
__RTTI_DEFINE_p_0 = --define wxNO_RTTI
|
|
endif
|
|
ifeq ($(USE_THREADS),0)
|
|
__THREAD_DEFINE_p_0 = --define wxNO_THREADS
|
|
endif
|
|
ifeq ($(UNICODE),0)
|
|
__UNICODE_DEFINE_p_0 = --define wxUSE_UNICODE=0
|
|
endif
|
|
ifeq ($(UNICODE),1)
|
|
__UNICODE_DEFINE_p_0 = --define _UNICODE
|
|
endif
|
|
ifeq ($(MSLU),1)
|
|
__MSLU_DEFINE_p_0 = --define wxUSE_UNICODE_MSLU=1
|
|
endif
|
|
ifeq ($(USE_CAIRO),1)
|
|
__CAIRO_INCLUDEDIR_p = --include-dir $(CAIRO_ROOT)/include/cairo
|
|
endif
|
|
ifeq ($(SHARED),1)
|
|
__DLLFLAG_p_0 = --define WXUSINGDLL
|
|
endif
|
|
ifeq ($(MONOLITHIC),0)
|
|
__WXLIB_CORE_p = \
|
|
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
__LIB_TIFF_p = -lwxtiff$(WXDEBUGFLAG)
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
__LIB_JPEG_p = -lwxjpeg$(WXDEBUGFLAG)
|
|
endif
|
|
ifeq ($(BUILD),debug)
|
|
__OPTIMIZEFLAG = -O0
|
|
endif
|
|
ifeq ($(BUILD),release)
|
|
__OPTIMIZEFLAG = -O2
|
|
endif
|
|
ifeq ($(USE_RTTI),0)
|
|
__RTTIFLAG = -fno-rtti
|
|
endif
|
|
ifeq ($(USE_RTTI),1)
|
|
__RTTIFLAG =
|
|
endif
|
|
ifeq ($(USE_EXCEPTIONS),0)
|
|
__EXCEPTIONSFLAG = -fno-exceptions
|
|
endif
|
|
ifeq ($(USE_EXCEPTIONS),1)
|
|
__EXCEPTIONSFLAG =
|
|
endif
|
|
ifeq ($(WXUNIV),1)
|
|
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
|
|
endif
|
|
ifeq ($(DEBUG_FLAG),0)
|
|
__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0
|
|
endif
|
|
ifeq ($(BUILD),release)
|
|
__NDEBUG_DEFINE_p = -DNDEBUG
|
|
endif
|
|
ifeq ($(USE_EXCEPTIONS),0)
|
|
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
|
|
endif
|
|
ifeq ($(USE_RTTI),0)
|
|
__RTTI_DEFINE_p = -DwxNO_RTTI
|
|
endif
|
|
ifeq ($(USE_THREADS),0)
|
|
__THREAD_DEFINE_p = -DwxNO_THREADS
|
|
endif
|
|
ifeq ($(UNICODE),0)
|
|
__UNICODE_DEFINE_p = -DwxUSE_UNICODE=0
|
|
endif
|
|
ifeq ($(UNICODE),1)
|
|
__UNICODE_DEFINE_p = -D_UNICODE
|
|
endif
|
|
ifeq ($(MSLU),1)
|
|
__MSLU_DEFINE_p = -DwxUSE_UNICODE_MSLU=1
|
|
endif
|
|
ifeq ($(USE_CAIRO),1)
|
|
____CAIRO_INCLUDEDIR_FILENAMES = -I$(CAIRO_ROOT)\include\cairo
|
|
endif
|
|
ifeq ($(SHARED),1)
|
|
__DLLFLAG_p = -DWXUSINGDLL
|
|
endif
|
|
ifeq ($(MONOLITHIC),0)
|
|
__WXLIB_NET_p = \
|
|
-lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_net
|
|
endif
|
|
ifeq ($(MONOLITHIC),0)
|
|
__WXLIB_BASE_p = \
|
|
-lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
|
endif
|
|
ifeq ($(MONOLITHIC),1)
|
|
__WXLIB_MONO_p = \
|
|
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
|
endif
|
|
ifeq ($(USE_GUI),1)
|
|
__LIB_PNG_p = -lwxpng$(WXDEBUGFLAG)
|
|
endif
|
|
ifeq ($(MSLU),1)
|
|
__UNICOWS_LIB_p = -lunicows
|
|
endif
|
|
ifeq ($(USE_CAIRO),1)
|
|
__CAIRO_LIB_p = -lcairo
|
|
endif
|
|
ifeq ($(USE_CAIRO),1)
|
|
____CAIRO_LIBDIR_FILENAMES = -L$(CAIRO_ROOT)\lib
|
|
endif
|
|
ifeq ($(BUILD),debug)
|
|
ifeq ($(DEBUG_INFO),default)
|
|
__DEBUGINFO = -g
|
|
endif
|
|
endif
|
|
ifeq ($(BUILD),release)
|
|
ifeq ($(DEBUG_INFO),default)
|
|
__DEBUGINFO =
|
|
endif
|
|
endif
|
|
ifeq ($(DEBUG_INFO),0)
|
|
__DEBUGINFO =
|
|
endif
|
|
ifeq ($(DEBUG_INFO),1)
|
|
__DEBUGINFO = -g
|
|
endif
|
|
ifeq ($(USE_THREADS),0)
|
|
__THREADSFLAG =
|
|
endif
|
|
ifeq ($(USE_THREADS),1)
|
|
__THREADSFLAG = -mthreads
|
|
endif
|
|
|
|
|
|
all: $(OBJS)
|
|
$(OBJS):
|
|
-if not exist $(OBJS) mkdir $(OBJS)
|
|
|
|
### Targets: ###
|
|
|
|
all: $(__ipcclient___depname) $(__ipcserver___depname) $(OBJS)\baseipcclient.exe $(OBJS)\baseipcserver.exe
|
|
|
|
clean:
|
|
-if exist $(OBJS)\*.o del $(OBJS)\*.o
|
|
-if exist $(OBJS)\*.d del $(OBJS)\*.d
|
|
-if exist $(OBJS)\ipcclient.exe del $(OBJS)\ipcclient.exe
|
|
-if exist $(OBJS)\ipcserver.exe del $(OBJS)\ipcserver.exe
|
|
-if exist $(OBJS)\baseipcclient.exe del $(OBJS)\baseipcclient.exe
|
|
-if exist $(OBJS)\baseipcserver.exe del $(OBJS)\baseipcserver.exe
|
|
|
|
ifeq ($(USE_GUI),1)
|
|
$(OBJS)\ipcclient.exe: $(IPCCLIENT_OBJECTS) $(OBJS)\ipcclient_sample_rc.o
|
|
$(CXX) -o $@ $(IPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lwininet
|
|
endif
|
|
|
|
ifeq ($(USE_GUI),1)
|
|
$(OBJS)\ipcserver.exe: $(IPCSERVER_OBJECTS) $(OBJS)\ipcserver_sample_rc.o
|
|
$(CXX) -o $@ $(IPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lwininet
|
|
endif
|
|
|
|
$(OBJS)\baseipcclient.exe: $(BASEIPCCLIENT_OBJECTS)
|
|
$(CXX) -o $@ $(BASEIPCCLIENT_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lwininet
|
|
|
|
$(OBJS)\baseipcserver.exe: $(BASEIPCSERVER_OBJECTS)
|
|
$(CXX) -o $@ $(BASEIPCSERVER_OBJECTS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES) $(LDFLAGS) $(__WXLIB_NET_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p_1) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lwininet
|
|
|
|
$(OBJS)\ipcclient_sample_rc.o: ./../../samples/sample.rc
|
|
windres --use-temp-file -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_0) $(__DEBUG_DEFINE_p_0) $(__NDEBUG_DEFINE_p_0) $(__EXCEPTIONS_DEFINE_p_0) $(__RTTI_DEFINE_p_0) $(__THREAD_DEFINE_p_0) $(__UNICODE_DEFINE_p_0) $(__MSLU_DEFINE_p_0) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_0) --include-dir ./../../samples --define NOPCH
|
|
|
|
$(OBJS)\ipcclient_client.o: ./client.cpp
|
|
$(CXX) -c -o $@ $(IPCCLIENT_CXXFLAGS) $(CPPDEPS) $<
|
|
|
|
$(OBJS)\ipcserver_sample_rc.o: ./../../samples/sample.rc
|
|
windres --use-temp-file -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_0) $(__DEBUG_DEFINE_p_0) $(__NDEBUG_DEFINE_p_0) $(__EXCEPTIONS_DEFINE_p_0) $(__RTTI_DEFINE_p_0) $(__THREAD_DEFINE_p_0) $(__UNICODE_DEFINE_p_0) $(__MSLU_DEFINE_p_0) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_0) --include-dir ./../../samples --define NOPCH
|
|
|
|
$(OBJS)\ipcserver_server.o: ./server.cpp
|
|
$(CXX) -c -o $@ $(IPCSERVER_CXXFLAGS) $(CPPDEPS) $<
|
|
|
|
$(OBJS)\baseipcclient_baseclient.o: ./baseclient.cpp
|
|
$(CXX) -c -o $@ $(BASEIPCCLIENT_CXXFLAGS) $(CPPDEPS) $<
|
|
|
|
$(OBJS)\baseipcserver_baseserver.o: ./baseserver.cpp
|
|
$(CXX) -c -o $@ $(BASEIPCSERVER_CXXFLAGS) $(CPPDEPS) $<
|
|
|
|
.PHONY: all clean
|
|
|
|
|
|
SHELL := $(COMSPEC)
|
|
|
|
# Dependencies tracking:
|
|
-include $(OBJS)/*.d
|