wxWidgets/samples/widgets/widgets.bkl
Scott Talbert 1aad7ae9d7 Fix building some samples in out of tree build
This is a 3.2 backport of these commits:
1216315, db78515, 033dfd2, 2e22666, 0ab31ed, b6ea233
2023-07-25 15:46:10 -04:00

87 lines
2.6 KiB
XML

<?xml version="1.0" ?>
<makefile>
<include file="../../build/bakefiles/common_samples.bkl"/>
<!--
The source file using native controls uses Cocoa under OS X, so it must
be compiled as Objective C++ which means it must have .mm extension.
But this would make it uncompilable under the other platforms and we
don't want to have two files with identical contents. Hence this hack:
we have native.mm which just includes native.cpp under OS X, while
elsewhere we just compile native.cpp directly.
-->
<set var="NATIVE_OBJCPP_SRC">
<if cond="OUT_OF_TREE_MAKEFILES=='1'">
<!--
We can't determine if we're using Cocoa or not at generation
time, so deal with it in the makefile fragment below.
-->
</if>
<if cond="TOOLKIT=='OSX_COCOA' and WXUNIV=='0'">
native_wrapper.mm
</if>
</set>
<fragment format="gnu">
widgets_native_wrapper.o: ./native_wrapper.mm ./native.cpp
$(CXX) -c -o $@ $(WIDGETS_CXXFLAGS) $(OBJCXXFLAGS) ./native_wrapper.mm
ifeq ($(WX_PORT),osx_cocoa)
WIDGETS_OBJECTS += widgets_native_wrapper.o
widgets: widgets_native_wrapper.o
endif
ifeq ($(WX_PORT),gtk2)
widgets_native.o: CXXFLAGS=$(shell pkg-config --cflags gtk+-2.0)
widgets: LDFLAGS=$(shell pkg-config --libs gtk+-2.0)
endif
ifeq ($(WX_PORT),gtk3)
widgets_native.o: CXXFLAGS=$(shell pkg-config --cflags gtk+-3.0)
widgets: LDFLAGS=$(shell pkg-config --libs gtk+-3.0)
endif
</fragment>
<exe id="widgets" template="wx_sample" template_append="wx_append">
<sources>
activityindicator.cpp
bmpcombobox.cpp
button.cpp
checkbox.cpp
choice.cpp
clrpicker.cpp
combobox.cpp
datepick.cpp
dirctrl.cpp
dirpicker.cpp
editlbox.cpp
filectrl.cpp
filepicker.cpp
fontpicker.cpp
gauge.cpp
headerctrl.cpp
hyperlnk.cpp
itemcontainer.cpp
listbox.cpp
$(NATIVE_OBJCPP_SRC)
native.cpp
notebook.cpp
odcombobox.cpp
radiobox.cpp
searchctrl.cpp
slider.cpp
spinbtn.cpp
static.cpp
statbmp.cpp
textctrl.cpp
timepick.cpp
toggle.cpp
widgets.cpp
</sources>
<headers>widgets.h itemcontainer.h</headers>
<wx-lib>core</wx-lib>
<wx-lib>base</wx-lib>
</exe>
</makefile>