]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/tech/tn0016.txt
Send all menu item actions to a dedicated target. This is to ensure
[wxWidgets.git] / docs / tech / tn0016.txt
index b250aed7e9782c75b8826a8f6f37d9b772815cda..490e7b4f7db5438b89091e230ea87785e3568542 100644 (file)
@@ -14,7 +14,7 @@ Python on Windows.
 Once you have installed Bakefile, you can easily regenerate the makefiles using
 the makefile in $(wx)/build/bakefiles directory. The makefile uses Unix make
 syntax and works on Unix or using either Borland Make or GNU Make (including
-native Win32 port called mingw32-make from http://www.mingw.org) on Windows.
+native Win32 port called mingw32-make from http://www.mingw.org/) on Windows.
 It is possible that other Windows make utilities work as well, but it wasn't
 tested. "make clean" only works on Unix or Cygwin or MSYS emulation layer on
 Windows.
@@ -74,6 +74,7 @@ Support files are:
   common_samples.bkl
   common_contrib.bkl      - shared definitions and templates
   config.bkl              - user-configurable build options
+  make_dist.mk            - implementation of "make dist" on Unix
 
 Files used to build the library are:
   wx.bkl                  - main file
@@ -128,7 +129,9 @@ Make sure to add <wx-lib> statements for all libraries from multilib build
 that are required by the sample.
 
 Run Python script regenMakefile.py in $(wx)/build/bakefiles to update Makefile
-and commit $(wx)/build/bakefiles/Makefile.
+then run "make" in $(wx)/build/bakefiles directories.
+
+Finally commit $(wx)/build/bakefiles/Makefile and all the other modified files.
 
 
 5. Adding contrib library
@@ -171,7 +174,9 @@ a) Add files to files.bkl:
      Finally, define FOO_SRC and FOO_HDR to contain both
      FOO_PLATFORM_{SRC,HDR} and FOO_{SRC,HDR} (see NET_SRC definition for an
      example).
-   * Add FOO_HDR to ALL_HEADERS
+   * Add FOO_HDR to ALL_GUI_HEADERS or ALL_BASE_HEADERS. 
+   * If wxFoo is wxBase library (doesn't use GUI), add FOO_SRC to
+     ALL_BASE_SOURCES.
 
    (You can apply different approaches to HDR and SRC variables, if e.g.
    headers are all common but sources are not.)
@@ -180,8 +185,9 @@ a) Add files to files.bkl:
    native make tools.
 
 b) Modify bakefile system in build/bakefiles/ to recognize wxFoo:
-   * Add 'foo'to MAIN_LIBS and LIBS_NOGUI or LIBS_GUI (depending on whether
+   * Add 'foo' to MAIN_LIBS and LIBS_NOGUI or LIBS_GUI (depending on whether
      the library depends on wxCore or not) to wxwin.py file.
+   * Add the library to DEPS_TABLE in wxwin.py
    * Add WXLIB_FOO definition to common.bkl (into the "Names of component
      libraries" section). It looks like this:
        <set var="WXLIB_FOO">
@@ -221,6 +227,11 @@ g) Update defs.h to define WXMAKINGDLL_FOO if WXMAKINGDLL is defined (add
         #endif
    Use WXDLLIMPEXP_FOO when declaring wxFoo classes and functions.
 
+h) Add this code to one of wxFoo's files (the more often used, the better):
+      // DLL options compatibility check:
+      #include "wx/app.h"
+      WX_CHECK_BUILD_OPTIONS("wxFoo")
+
 i) Add information about wxFoo to the manual ("Libraries list" section
    in libs.tex).