]> git.saurik.com Git - wxWidgets.git/blobdiff - tests/test.bkl
No-PCH compilation fix
[wxWidgets.git] / tests / test.bkl
index 56e4e9314e5cadd5052e0936582bb653efff9f21..629d6049e81dbeb3acd53ada26afc9d16dcce989 100644 (file)
 <!-- $Id$ -->
 
 <makefile>
+    <!--
+        The use of PCH is disabled for samples by default but we do want to use
+        them for the test as this dramatically speeds up its compilation.
+     -->
+    <set var="WX_ENABLE_PRECOMP_HEADERS">1</set>
 
     <include file="../build/bakefiles/common_samples.bkl"/>
 
-    <exe id="test" template="wx_test_console"
+    <template id="wx_test">
+        <cppflags>$(CPPUNIT_CFLAGS)</cppflags>
+        <ldflags>$(CPPUNIT_LIBS)</ldflags>
+
+        <if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
+            <if cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">
+                <sources>dummy.cpp</sources>
+                <precomp-headers-gen>dummy.cpp</precomp-headers-gen>
+            </if>
+            <precomp-headers-header>testprec.h</precomp-headers-header>
+            <precomp-headers>on</precomp-headers>
+            <precomp-headers-file>testprec_$(id)</precomp-headers-file>
+        </if>
+    </template>
+
+    <exe id="test" template="wx_sample_console,wx_test"
                    template_append="wx_append_base">
         <sources>
             test.cpp
-            mbconv/main.cpp
-            formatconverter/formatconverter.cpp
-            regex/regex.cpp
-            regex/wxregex.cpp
-            filesys/filesys.cpp
+            any/anytest.cpp
+            archive/archivetest.cpp
+            archive/ziptest.cpp
+            archive/tartest.cpp
             arrays/arrays.cpp
-            longlong/longlong.cpp
+            base64/base64.cpp
+            cmdline/cmdlinetest.cpp
+            config/fileconf.cpp
+            datetime/datetimetest.cpp
+            events/evthandler.cpp
+            events/evtsource.cpp
+            events/timertest.cpp
+            exec/exec.cpp
+            file/filetest.cpp
+            filekind/filekind.cpp
+            filename/filenametest.cpp
+            filesys/filesystest.cpp
+            fontmap/fontmaptest.cpp
+            formatconverter/formatconvertertest.cpp
+            fswatcher/fswatchertest.cpp
+            hashes/hashes.cpp
+            intl/intltest.cpp
+            lists/lists.cpp
+            log/logtest.cpp
+            longlong/longlongtest.cpp
+            mbconv/convautotest.cpp
+            mbconv/mbconvtest.cpp
+            misc/misctests.cpp
+            misc/typeinfotest.cpp
+            net/ipc.cpp
+            net/socket.cpp
+            regex/regextest.cpp
+            regex/wxregextest.cpp
+            scopeguard/scopeguardtest.cpp
+            strings/iostream.cpp
             strings/strings.cpp
+            strings/stdstrings.cpp
+            strings/tokenizer.cpp
+            strings/unichar.cpp
+            strings/unicode.cpp
+            strings/vararg.cpp
+            strings/crt.cpp
+            strings/vsnprintf.cpp
             streams/bstream.cpp
+            streams/datastreamtest.cpp
             streams/ffilestream.cpp
+            streams/fileback.cpp
             streams/filestream.cpp
+            streams/iostreams.cpp
+            streams/largefile.cpp
             streams/memstream.cpp
+            streams/socketstream.cpp
+            streams/sstream.cpp
+            streams/stdstream.cpp
+            streams/tempfile.cpp
+            streams/textstreamtest.cpp
             streams/zlibstream.cpp
+            textfile/textfiletest.cpp
+            thread/atomic.cpp
+            thread/misc.cpp
+            thread/queue.cpp
+            thread/tls.cpp
+            uris/uris.cpp
+            uris/url.cpp
+            vectors/vectors.cpp
+            weakref/evtconnection.cpp
+            weakref/weakref.cpp
+            xlocale/xlocale.cpp
+            xml/xmltest.cpp
+        </sources>
+        <wx-lib>net</wx-lib>
+        <wx-lib>xml</wx-lib>
+        <wx-lib>base</wx-lib>
+    </exe>
+
+
+    <exe id="test_gui" template="wx_sample,wx_test"
+                       template_append="wx_append"
+         cond="USE_GUI=='1'">
+
+        <!-- link against GUI libraries, but be a console app: -->
+        <app-type>console</app-type>
+
+        <sources>
+            test.cpp
+            geometry/rect.cpp
+            geometry/size.cpp
+            geometry/point.cpp
+            graphics/bitmap.cpp
+            graphics/colour.cpp
+            graphics/ellipsization.cpp
+            graphics/measuring.cpp
+            config/config.cpp
+            controls/comboboxtest.cpp
+            controls/headerctrltest.cpp
+            controls/label.cpp
+            controls/listctrltest.cpp
+            controls/textctrltest.cpp
+            controls/textentrytest.cpp
+            controls/treectrltest.cpp
+            events/clone.cpp
+            events/propagation.cpp
+            font/fonttest.cpp
+            image/image.cpp
+            image/rawbmp.cpp
+            html/htmlwindow.cpp
+            misc/guifuncs.cpp
+            misc/selstoretest.cpp
+            misc/garbage.cpp
+            misc/settings.cpp
+            <!--
+                This one is intentionally duplicated here (it is also part of
+                non-GUI test) as sockets behave differently in console and GUI
+                applications.
+             -->
+            net/socket.cpp
+            sizers/boxsizer.cpp
+            window/clientsize.cpp
+            window/setsize.cpp
         </sources>
+        <wx-lib>media</wx-lib>
+        <wx-lib>xrc</wx-lib>
+        <wx-lib>xml</wx-lib>
+        <wx-lib>adv</wx-lib>
+        <wx-lib>html</wx-lib>
+        <wx-lib>core</wx-lib>
+        <wx-lib>net</wx-lib>
         <wx-lib>base</wx-lib>
     </exe>
 
+
+    <wx-data id="data">
+        <files>testdata.fc</files>
+        
+        <!-- test data for image/image.cpp test unit: -->
+        <files>horse.ani  horse.bmp  horse.cur  horse.gif  horse.ico  horse.jpg  
+               horse.pcx  horse.png  horse.pnm  horse.tga  horse.tif  horse.xpm</files>
+    </wx-data>
+
+    <template id="catalog">
+        <dstdir>$(BUILDDIR)/intl/$(id)</dstdir>
+        <srcdir>$(SRCDIR)/intl/$(id)</srcdir>
+        <files>internat.po internat.mo</files>
+    </template>
+
+    <wx-data id="fr" template="catalog"/>
+
+
+    <fragment format="autoconf">
+# notice the ugly hack with using CXXWARNINGS: we can't use CPPFLAGS as
+# currently the value in the makefile would be ignored if we did, but
+# warnings don't matter when we expect compilation to fail anyhow so we can
+# use this variable to enable the compilation of code which is supposed to
+# fail
+failtest:
+       @$(RM) test_evthandler.o
+       @for d in GLOBAL STATIC METHOD FUNCTOR NO_HANDLER DERIVED WRONG_CLASS; do \
+           if $(MAKE) CXXWARNINGS=-DTEST_INVALID_BIND_$$d test_evthandler.o 2>/dev/null; then \
+               echo "*** Compilation with TEST_INVALID_BIND_$$d unexpectedly succeeded.">&amp;2; \
+               exit 1; \
+           fi; \
+       done; \
+       exit 0
+
+.PHONY: failtest
+    </fragment>
+
 </makefile>