]> git.saurik.com Git - wxWidgets.git/blobdiff - Makefile.in
fix memory leak as Dimitri suggested
[wxWidgets.git] / Makefile.in
index ead7b628e61063b1b434f6a061134f32f8077bdc..756cc72895b36b02efda46ebe08700920720050f 100644 (file)
@@ -18,7 +18,7 @@ include ./src/make.env
 #     implicit rules (%.o: %.c) because they are more portable, in
 #     particular the BSD make understands the former but not the
 #     latter
-.SUFFIXES: .o .c .cpp .cxx .rsrc .r
+.SUFFIXES: .o .c .cpp .cxx .rsrc .r .mm
 
 .c.o:
        $(CC) -c $(CFLAGS) $(PICFLAGS) -o $@ $<
@@ -29,6 +29,10 @@ include ./src/make.env
 .cxx.o:
        $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
 
+# Objective-C++, right now just use CXXFLAGS
+.mm.o:
+       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
+
 .rsrc.r:
        $(DEREZ) $^ Carbon.r -useDF > $@
 
@@ -73,6 +77,7 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL@
+INSTALL_DIR = @INSTALL_DIR@
 
 build_alias = @build_alias@
 build_triplet = @build@
@@ -101,11 +106,13 @@ ZLIBDIR  = $(WXDIR)/src/zlib
 REGEXDIR = $(WXDIR)/src/regex
 GTKDIR   = $(WXDIR)/src/gtk
 X11DIR   = $(WXDIR)/src/x11
+X11INC   = $(WXDIR)/include/wx/x11
 MGLDIR   = $(WXDIR)/src/mgl
 MOTIFDIR = $(WXDIR)/src/motif
 MSWDIR   = $(WXDIR)/src/msw
 PMDIR    = $(WXDIR)/src/os2
 MACDIR   = $(WXDIR)/src/mac
+COCOADIR = $(WXDIR)/src/cocoa
 ODBCDIR  = $(WXDIR)/src/iodbc
 FTDIR    = $(WXDIR)/src/freetype
 INCDIR   = $(WXDIR)/include
@@ -179,20 +186,22 @@ ZLIBOBJS = \
 
 PNGOBJS = \
                png.o \
+               pngerror.o \
+               pnggccrd.o \
+               pngget.o \
+               pngmem.o \
+               pngpread.o \
                pngread.o \
+               pngrio.o \
                pngrtran.o \
                pngrutil.o \
-               pngpread.o \
+               pngset.o \
                pngtrans.o \
+               pngvcrd.o \
+               pngwio.o \
                pngwrite.o \
                pngwtran.o \
-               pngwutil.o \
-               pngerror.o \
-               pngmem.o \
-               pngwio.o \
-               pngrio.o \
-               pngget.o \
-               pngset.o
+               pngwutil.o
 
 JPEGOBJS = \
                jcomapi.o \
@@ -303,27 +312,29 @@ SONAME_FLAGS_GL = @SONAME_FLAGS_GL@
 all: @WX_ALL@
 
 $(build_libdir)/@WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
-       @$(INSTALL) -d $(build_libdir)
+       @$(INSTALL_DIR) $(build_libdir)
        @$(RM) $@
        $(AR) $(AROPTIONS) $@ $(OBJECTS)
        $(RANLIB) $@
 
 $(build_libdir)/@WX_LIBRARY_NAME_STATIC_GL@: glcanvas.o
-       @$(INSTALL) -d $(build_libdir)
+       @$(INSTALL_DIR) $(build_libdir)
        @$(RM) $@
        $(AR) $(AROPTIONS) $@ glcanvas.o
        $(RANLIB) $@
 
 $(build_libdir)/@WX_LIBRARY_NAME_SHARED@: $(OBJECTS)
-       @$(INSTALL) -d $(build_libdir)
+       @$(INSTALL_DIR) $(build_libdir)
        $(SHARED_LD) $@ $(SONAME_FLAGS) $(OBJECTS) $(EXTRALIBS)
 
+# NB: we used to have "-L$(build_libdir) @WXCONFIG_LIBS@" in the SHARED_LD line
+#     but this seems to result in problems with libwx_gtk being linked in twice
 $(build_libdir)/@WX_LIBRARY_NAME_SHARED_GL@: glcanvas.o $(build_libdir)/@WX_LIBRARY_NAME_SHARED@
-       @$(INSTALL) -d $(build_libdir)
-       $(SHARED_LD) $@ $(SONAME_FLAGS_GL) glcanvas.o -L$(build_libdir) @WXCONFIG_LIBS@ $(EXTRALIBS) $(OPENGLLIBS)
+       @$(INSTALL_DIR) $(build_libdir)
+       $(SHARED_LD) $@ $(SONAME_FLAGS_GL) glcanvas.o $(EXTRALIBS) $(OPENGLLIBS)
 
 $(build_libdir)/@WX_RESOURCES_MACOSX_DATA@: $(MACRESOURCES)
-       @$(INSTALL) -d $(build_libdir)
+       @$(INSTALL_DIR) $(build_libdir)
        $(RESCOMP) -d __UNIX__ -useDF $^ -o $@
 
 $(build_libdir)/@WX_LIBRARY_LINK1@: $(build_libdir)/@WX_LIBRARY_NAME_SHARED@
@@ -380,18 +391,30 @@ CREATE_INSTALLED_LINKS_GL: preinstall_gl
                && $(LN_S) @WX_LIBRARY_NAME_SHARED_GL@ @WX_LIBRARY_LINK2_GL@
 
 afminstall: preinstall
-       @if test ! -d $(datadir); then $(INSTALL) -d $(datadir); fi
-       $(INSTALL) -d $(datadir)/wx
-       $(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)
-       $(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)/afm
-       $(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)/gs_afm
+       @if test ! -d $(datadir); then $(INSTALL_DIR) $(datadir); fi
+       $(INSTALL_DIR) $(datadir)/wx
+       $(INSTALL_DIR) $(datadir)/wx/$(VER_MAJMIN)
+       $(INSTALL_DIR) $(datadir)/wx/$(VER_MAJMIN)/afm
+       $(INSTALL_DIR) $(datadir)/wx/$(VER_MAJMIN)/gs_afm
        $(INSTALL_DATA) $(top_srcdir)/misc/afm/*.afm $(datadir)/wx/$(VER_MAJMIN)/afm
        $(INSTALL_DATA) $(top_srcdir)/misc/gs_afm/*.afm $(datadir)/wx/$(VER_MAJMIN)/gs_afm
-        
+
 m4datainstall: preinstall
-       $(INSTALL) -d $(datadir)/aclocal
+       $(INSTALL_DIR) $(datadir)/aclocal
        $(INSTALL_DATA) $(top_srcdir)/wxwin.m4 $(datadir)/aclocal
 
+win32install: preinstall
+       $(INSTALL_DIR) $(includedir)/wx/msw
+       $(INSTALL_DIR) $(includedir)/wx/msw/gnuwin32
+       $(INSTALL_DIR) $(includedir)/wx/msw/gnuwin32/gl
+       $(INSTALL_DATA) $(top_srcdir)/include/wx/msw/*.cur \
+                       $(top_srcdir)/include/wx/msw/*.ico \
+                       $(top_srcdir)/include/wx/msw/*.bmp \
+                       $(top_srcdir)/include/wx/msw/wx.rc \
+                               $(includedir)/wx/msw
+       $(INSTALL_DATA) $(top_srcdir)/include/wx/msw/gnuwin32/*.h $(includedir)/wx/msw/gnuwin32
+       $(INSTALL_DATA) $(top_srcdir)/include/wx/msw/gnuwin32/gl/*.h $(includedir)/wx/msw/gnuwin32/gl
+
 # this is the real install target: copies the library, wx-config and the
 # headers to the installation directory
 preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAME@-config
@@ -399,9 +422,9 @@ preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAM
        @echo " Installing wxWindows..."
        @echo " "
 
-       @if test ! -d $(prefix); then $(INSTALL) -d $(prefix); fi
-       @if test ! -d $(bindir); then $(INSTALL) -d $(bindir); fi
-       @if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
+       @if test ! -d $(prefix); then $(INSTALL_DIR) $(prefix); fi
+       @if test ! -d $(bindir); then $(INSTALL_DIR) $(bindir); fi
+       @if test ! -d $(libdir); then $(INSTALL_DIR) $(libdir); fi
 
        $(INSTALL_SCRIPT) $(top_builddir)/wx@TOOLCHAIN_NAME@-config $(bindir)/wx@TOOLCHAIN_NAME@-config
        cd $(bindir) && rm -f wx-config && $(LN_S) wx@TOOLCHAIN_NAME@-config wx-config
@@ -409,36 +432,37 @@ preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAM
        @if test "x@WX_LIBRARY_IMPORTLIB@" != "x"; then \
                $(INSTALL_PROGRAM) $(top_builddir)/lib/@WX_LIBRARY_IMPORTLIB@ $(libdir)/@WX_LIBRARY_IMPORTLIB@; fi
 
-       $(INSTALL) -d $(libdir)/wx
-       $(INSTALL) -d $(libdir)/wx/include
-       $(INSTALL) -d $(libdir)/wx/include/univ
-       $(INSTALL) -d $(libdir)/wx/include/@TOOLCHAIN_NAME@
-       $(INSTALL) -d $(libdir)/wx/include/@TOOLCHAIN_NAME@/wx
+       $(INSTALL_DIR) $(libdir)/wx
+       $(INSTALL_DIR) $(libdir)/wx/include
+       $(INSTALL_DIR) $(libdir)/wx/include/univ
+       $(INSTALL_DIR) $(libdir)/wx/include/@TOOLCHAIN_NAME@
+       $(INSTALL_DIR) $(libdir)/wx/include/@TOOLCHAIN_NAME@/wx
        $(INSTALL_DATA) $(build_libdir)/wx/include/@TOOLCHAIN_NAME@/wx/setup.h \
                     $(libdir)/wx/include/@TOOLCHAIN_NAME@/wx/setup.h
 
-       $(INSTALL) -d $(includedir)/wx
+       $(INSTALL_DIR) $(includedir)/wx
        @# FIXME: This will erroneously install a wx/base dir for wxBase..
-       @if test "$(USE_GUI)" = 1; then $(INSTALL) -d $(includedir)/wx/@TOOLKIT_DIR@; fi
-       @if test "$(USE_GUI)" = 1; then $(INSTALL) -d $(includedir)/wx/html; fi
-       @if test "$(USE_GUI)" = 1; then $(INSTALL) -d $(includedir)/wx/generic; fi
-       @if test "$(USE_GUI)" = 1; then $(INSTALL) -d $(includedir)/wx/univ; fi
-       @if test "@TOOLKIT_DIR@" = "msw"; then $(INSTALL) -d $(includedir)/wx/msw/ole; fi
+       @if test "$(USE_GUI)" = 1; then $(INSTALL_DIR) $(includedir)/wx/@TOOLKIT_DIR@; fi
+       @if test "$(USE_GUI)" = 1; then $(INSTALL_DIR) $(includedir)/wx/html; fi
+       @if test "$(USE_GUI)" = 1; then $(INSTALL_DIR) $(includedir)/wx/generic; fi
+       @if test "$(USE_GUI)" = 1; then $(INSTALL_DIR) $(includedir)/wx/univ; fi
+       @if test "@TOOLKIT_DIR@" = "msw"; then $(INSTALL_DIR) $(includedir)/wx/msw/ole; fi
+       @if test "@TOOLKIT_DIR@" = "motif"; then $(INSTALL_DIR) $(includedir)/wx/x11; fi
 
        @# always install msw headers for wxBase, it's much simpler
-       @if test "$(USE_GUI)" = 0; then $(INSTALL) -d $(includedir)/wx/msw; fi
+       @if test "$(USE_GUI)" = 0; then $(INSTALL_DIR) $(includedir)/wx/msw; fi
 
-       $(INSTALL) -d $(includedir)/wx/protocol
-       $(INSTALL) -d $(includedir)/wx/unix
+       $(INSTALL_DIR) $(includedir)/wx/protocol
+       $(INSTALL_DIR) $(includedir)/wx/unix
        @list='$(HEADERS)'; for p in $$list; do \
          $(INSTALL_DATA) $(top_srcdir)/include/wx/$$p $(includedir)/wx/$$p; \
          echo "$(INSTALL_DATA) $(top_srcdir)/include/wx/$$p $(includedir)/wx/$$p"; \
        done
 
-       @if test ! -d $(localedir); then $(INSTALL) -d $(localedir); fi
+       @if test ! -d $(localedir); then $(INSTALL_DIR) $(localedir); fi
        @for p in $(WX_LINGUAS); do \
-         if test ! -d $(localedir)/$$p; then $(INSTALL) -d $(localedir)/$$p; fi;\
-         if test ! -d $(localedir)/$$p/LC_MESSAGES; then $(INSTALL) -d $(localedir)/$$p/LC_MESSAGES; fi;\
+         if test ! -d $(localedir)/$$p; then $(INSTALL_DIR) $(localedir)/$$p; fi;\
+         if test ! -d $(localedir)/$$p/LC_MESSAGES; then $(INSTALL_DIR) $(localedir)/$$p/LC_MESSAGES; fi;\
          $(INSTALL_DATA) $(top_srcdir)/locale/$$p.mo $(localedir)/$$p/LC_MESSAGES/wxstd.mo; \
          echo "$(INSTALL_DATA) $(top_srcdir)/locale/$$p.mo $(localedir)/$$p/LC_MESSAGES/wxstd.mo"; \
        done
@@ -447,7 +471,7 @@ preinstall_res: $(build_libdir)/@WX_RESOURCES_MACOSX_ASCII@ $(build_libdir)/@WX_
        @echo " "
        @echo " Installing wxWindows Mac resource ..."
        @echo " "
-       @if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
+       @if test ! -d $(libdir); then $(INSTALL_DIR) $(libdir); fi
        $(INSTALL_PROGRAM) $(build_libdir)/@WX_RESOURCES_MACOSX_ASCII@ $(libdir)/@WX_RESOURCES_MACOSX_ASCII@
        $(INSTALL_PROGRAM) $(build_libdir)/@WX_RESOURCES_MACOSX_DATA@ $(libdir)/@WX_RESOURCES_MACOSX_DATA@
 
@@ -455,10 +479,10 @@ preinstall_gl: $(build_libdir)/@WX_TARGET_LIBRARY_GL@
        @echo " "
        @echo " Installing wxWindows OpenGl add-on..."
        @echo " "
-       @if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
+       @if test ! -d $(libdir); then $(INSTALL_DIR) $(libdir); fi
        @INSTALL_LIBRARY@ $(build_libdir)/@WX_TARGET_LIBRARY_GL@ $(libdir)/@WX_TARGET_LIBRARY_GL@
 
-install: @AFMINSTALL@ @WX_ALL_INSTALLED@ m4datainstall
+install: @AFMINSTALL@ @WX_ALL_INSTALLED@ m4datainstall @WIN32INSTALL@
        @echo " "
        @echo " The installation of wxWindows is finished.  On certain"
        @echo " platforms (e.g. Linux) you'll now have to run ldconfig"
@@ -489,15 +513,17 @@ uninstall:
        @$(RM) $(bindir)/wx@TOOLCHAIN_NAME@-config
        @$(RM) $(datadir)/wx/$(VER_MAJMIN)/afm/*
        @$(RM) $(datadir)/wx/$(VER_MAJMIN)/gs_afm/*
-# FIXME: wxBase doesnt install these next 3 dirs.
+       # FIXME: wxBase doesnt install these next 3 dirs.
        @-rmdir $(datadir)/wx/$(VER_MAJMIN)/gs_afm
        @-rmdir $(datadir)/wx/$(VER_MAJMIN)/afm
        @-rmdir $(datadir)/wx/$(VER_MAJMIN)
        @-rmdir $(datadir)/wx
+       @$(RM) $(datadir)/aclocal/wxwin.m4
        @echo " Removing headers..."
        @list='$(HEADERS)'; for p in $$list; do \
          $(RM) $(includedir)/wx/$$p; \
        done
+       # TODO: uninstall the files installed by win32install
        @echo " Removing i18n files..."
        @-for p in $(WX_LINGUAS); do \
          $(RM) $(localedir)/$$p/LC_MESSAGES/wxstd.mo; \
@@ -532,6 +558,7 @@ ALL_DIST: distclean
        cp $(WXDIR)/install-sh $(DISTDIR)
        cp $(WXDIR)/mkinstalldirs $(DISTDIR)
        cp $(WXDIR)/wx-config.in $(DISTDIR)
+       cp $(WXDIR)/version-script.in $(DISTDIR)
        cp $(WXDIR)/setup.h.in $(DISTDIR)
        cp $(WXDIR)/setup.h_vms $(DISTDIR)
        cp $(WXDIR)/descrip.mms $(DISTDIR)
@@ -539,13 +566,16 @@ ALL_DIST: distclean
        cp $(WXDIR)/wxBase.spec $(DISTDIR)
        cp $(DOCDIR)/lgpl.txt $(DISTDIR)/COPYING.LIB
        cp $(DOCDIR)/licence.txt $(DISTDIR)/LICENCE.txt
-       cp $(DOCDIR)/symbols.txt $(DISTDIR)/SYMBOLS.txt
        cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
        mkdir $(DISTDIR)/lib
        cp $(WXDIR)/lib/vms.opt $(DISTDIR)/lib
        cp $(WXDIR)/lib/vms_gtk.opt $(DISTDIR)/lib
        mkdir $(DISTDIR)/src
-       cp $(SRCDIR)/files.lst $(DISTDIR)/src/
+       # temp hack for common/execcmn.cpp: it's not supported by tmake
+       # yet (it's a header-like file but in src/common directory and it
+       # shouldn't be distributed...)
+       mkdir $(DISTDIR)/src/common
+       cp $(SRCDIR)/common/execcmn.cpp $(DISTDIR)/src/common
        mkdir $(DISTDIR)/src/zlib
        cp $(ZLIBDIR)/*.h $(DISTDIR)/src/zlib
        cp $(ZLIBDIR)/*.c $(DISTDIR)/src/zlib
@@ -556,6 +586,7 @@ ALL_DIST: distclean
        cp $(REGEXDIR)/*.ih $(DISTDIR)/src/regex
        cp $(REGEXDIR)/*.c $(DISTDIR)/src/regex
        cp $(REGEXDIR)/Makefile $(DISTDIR)/src/regex
+       cp $(REGEXDIR)/makefile.* $(DISTDIR)/src/regex
        cp $(REGEXDIR)/COPYRIGHT $(DISTDIR)/src/regex
        cp $(REGEXDIR)/README $(DISTDIR)/src/regex
        cp $(REGEXDIR)/WHATSNEW $(DISTDIR)/src/regex
@@ -572,7 +603,8 @@ ALL_GUI_DIST: ALL_DIST
        if test -f $(DOCDIR)/$(TOOLKITDIR)/changes.txt ; then \
          cp $(DOCDIR)/$(TOOLKITDIR)/changes.txt $(DISTDIR)/CHANGES-$(TOOLKIT).txt ; fi
        cp $(DOCDIR)/$(TOOLKITDIR)/readme.txt $(DISTDIR)/README-$(TOOLKIT).txt
-       cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt
+       if test -f $(DOCDIR)/$(TOOLKITDIR)/todo.txt ; then \
+         cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt ; fi
        mkdir $(DISTDIR)/include
        mkdir $(DISTDIR)/include/wx
        mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR)
@@ -593,7 +625,6 @@ ALL_GUI_DIST: ALL_DIST
        cp $(WXDIR)/art/*.xpm $(DISTDIR)/art
        cp $(WXDIR)/art/gtk/*.xpm $(DISTDIR)/art/gtk
        cp $(WXDIR)/art/motif/*.xpm $(DISTDIR)/art/motif
-       mkdir $(DISTDIR)/src/common
        mkdir $(DISTDIR)/src/generic
        mkdir $(DISTDIR)/src/html
        mkdir $(DISTDIR)/src/$(TOOLKITDIR)
@@ -645,7 +676,6 @@ BASE_DIST: ALL_DIST
        mkdir $(DISTDIR)/include/wx/protocol
        mkdir $(DISTDIR)/include/wx/unix
        mkdir $(DISTDIR)/include/wx/msw
-       mkdir $(DISTDIR)/src/common
        mkdir $(DISTDIR)/src/unix
        mkdir $(DISTDIR)/src/msw
        cp @PORT_FILES@ $(DISTDIR)
@@ -654,6 +684,7 @@ BASE_DIST: ALL_DIST
        cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
        cp $(DOCDIR)/base/readme.txt $(DISTDIR)/README.txt
        cp $(SRCDIR)/*.in $(DISTDIR)/src
+       cp $(SRCDIR)/files.lst $(DISTDIR)/src
        cp $(WXDIR)/src/common/*.inc $(DISTDIR)/src/common
        cp $(WXDIR)/src/common/base.rc $(DISTDIR)/src/common
        cp $(WXDIR)/src/common/unzip.h $(DISTDIR)/src/common
@@ -687,6 +718,16 @@ GTK_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/contrib
        cp -R $(WXDIR)/contrib $(DISTDIR)
 
+X11_DIST: ALL_GUI_DIST UNIV_DIST
+       cp $(WXDIR)/wxX11.spec $(DISTDIR)
+       cp $(INCDIR)/wx/x11/*.h $(DISTDIR)/include/wx/x11
+       cp $(X11DIR)/files.lst $(DISTDIR)/src/x11
+       cp $(X11DIR)/*.cpp $(DISTDIR)/src/x11
+       cp $(X11DIR)/*.c $(DISTDIR)/src/x11
+       cp $(X11DIR)/*.xbm $(DISTDIR)/src/x11
+       mkdir $(DISTDIR)/contrib
+       cp -R $(WXDIR)/contrib $(DISTDIR)
+
 MOTIF_DIST: ALL_GUI_DIST
        cp $(WXDIR)/wxMotif.spec $(DISTDIR)
        cp $(INCDIR)/wx/motif/*.h $(DISTDIR)/include/wx/motif
@@ -698,6 +739,11 @@ MOTIF_DIST: ALL_GUI_DIST
        cp $(MOTIFDIR)/xmcombo/*.c $(DISTDIR)/src/motif/xmcombo
        cp $(MOTIFDIR)/xmcombo/*.h $(DISTDIR)/src/motif/xmcombo
        cp $(MOTIFDIR)/xmcombo/copying.txt $(DISTDIR)/src/motif/xmcombo
+       mkdir $(DISTDIR)/src/x11
+       mkdir $(DISTDIR)/include/wx/x11
+       cp $(X11DIR)/pen.cpp $(X11DIR)/brush.cpp $(DISTDIR)/src/x11
+       cp $(X11INC)/pen.h $(X11INC)/brush.h $(X11INC)/privx.h \
+               $(DISTDIR)/include/wx/x11
 
 MACX_DIST: ALL_GUI_DIST
        cp $(INCDIR)/*.* $(DISTDIR)/include
@@ -713,12 +759,17 @@ MACX_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/src/mac/macsock
        cp $(MACDIR)/macsock/*.lib $(DISTDIR)/src/mac/macsock
 
+# TODO: Distribute some files
+COCOA_DIST: ALL_GUI_DIST
+       cp $(COCOADIR)/*.mm $(DISTDIR)/src/cocoa
+
 MSW_DIST: ALL_GUI_DIST
        cp $(WXDIR)/wxWINE.spec $(DISTDIR)
        mkdir $(DISTDIR)/include/wx/msw/ctl3d
        mkdir $(DISTDIR)/include/wx/msw/gnuwin32
        mkdir $(DISTDIR)/include/wx/msw/gnuwin32/gl
        mkdir $(DISTDIR)/include/wx/msw/ole
+       mkdir $(DISTDIR)/include/wx/msw/wince
        cp $(INCDIR)/wx/msw/*.h $(DISTDIR)/include/wx/msw
        cp $(INCDIR)/wx/msw/*.cur $(DISTDIR)/include/wx/msw
        cp $(INCDIR)/wx/msw/*.ico $(DISTDIR)/include/wx/msw
@@ -729,12 +780,17 @@ MSW_DIST: ALL_GUI_DIST
        cp $(INCDIR)/wx/msw/gnuwin32/gl/*.h $(DISTDIR)/include/wx/msw/gnuwin32/gl
        cp $(INCDIR)/wx/msw/gnuwin32/gl/*.def $(DISTDIR)/include/wx/msw/gnuwin32/gl
        cp $(INCDIR)/wx/msw/ole/*.h $(DISTDIR)/include/wx/msw/ole
+       cp $(INCDIR)/wx/msw/wince/*.h $(DISTDIR)/include/wx/msw/wince
        mkdir $(DISTDIR)/src/msw/ole
+       mkdir $(DISTDIR)/src/msw/wince
        cp $(MSWDIR)/files.lst $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.cpp $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.c $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.def $(DISTDIR)/src/msw
        cp $(MSWDIR)/ole/*.cpp $(DISTDIR)/src/msw/ole
+       cp $(MSWDIR)/wince/*.* $(DISTDIR)/src/msw/wince
+       mkdir $(DISTDIR)/contrib
+       cp -R $(WXDIR)/contrib $(DISTDIR)
 
 MSW_ZIP_TEXT_DIST: ALL_GUI_DIST
        cp $(WXDIR)/wxWINE.spec $(DISTDIR)
@@ -743,6 +799,7 @@ MSW_ZIP_TEXT_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/include/wx/msw/gnuwin32
        mkdir $(DISTDIR)/include/wx/msw/gnuwin32/gl
        mkdir $(DISTDIR)/include/wx/msw/ole
+       mkdir $(DISTDIR)/include/wx/msw/wince
        cp $(INCDIR)/wx/msw/*.h $(DISTDIR)/include/wx/msw
        cp $(INCDIR)/wx/msw/*.rc $(DISTDIR)/include/wx/msw
        cp $(INCDIR)/wx/msw/ctl3d/*.h $(DISTDIR)/include/wx/msw/ctl3d
@@ -750,25 +807,41 @@ MSW_ZIP_TEXT_DIST: ALL_GUI_DIST
        cp $(INCDIR)/wx/msw/gnuwin32/gl/*.h $(DISTDIR)/include/wx/msw/gnuwin32/gl
        cp $(INCDIR)/wx/msw/gnuwin32/gl/*.def $(DISTDIR)/include/wx/msw/gnuwin32/gl
        cp $(INCDIR)/wx/msw/ole/*.h $(DISTDIR)/include/wx/msw/ole
+       cp $(INCDIR)/wx/msw/wince/*.h $(DISTDIR)/include/wx/msw/wince
        mkdir $(DISTDIR)/src/msw
        mkdir $(DISTDIR)/src/msw/ole
+       mkdir $(DISTDIR)/src/msw/wince
        cp $(MSWDIR)/files.lst $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.cpp $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.c $(DISTDIR)/src/msw
        cp $(MSWDIR)/*.def $(DISTDIR)/src/msw
        cp $(MSWDIR)/ole/*.cpp $(DISTDIR)/src/msw/ole
-       cp $(SRCDIR)/*.* $(DISTDIR)/src
+       cp $(MSWDIR)/wince/*.* $(DISTDIR)/src/msw/wince
+       cp $(SRCDIR)/*.??? $(DISTDIR)/src
+       cp $(SRCDIR)/*.?? $(DISTDIR)/src
        cp $(MSWDIR)/?ake*.* $(DISTDIR)/src/msw
+       mkdir $(DISTDIR)/contrib
+       cp -R $(WXDIR)/contrib $(DISTDIR)
 
 UNIV_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/include/wx/univ
        mkdir $(DISTDIR)/src/univ
        mkdir $(DISTDIR)/src/univ/themes
        cp $(INCDIR)/wx/univ/*.h $(DISTDIR)/include/wx/univ
+       cp $(INCDIR)/wx/univ/setup0.h $(DISTDIR)/include/wx/univ/setup.h
        cp $(SRCDIR)/univ/files.lst $(DISTDIR)/src/univ
        cp $(SRCDIR)/univ/*.cpp $(DISTDIR)/src/univ
        cp $(SRCDIR)/univ/themes/*.cpp $(DISTDIR)/src/univ/themes
 
+MGL_DIST: UNIV_DIST
+       cp $(WXDIR)/wxMGL.spec $(DISTDIR)
+       cp $(INCDIR)/wx/mgl/*.h $(DISTDIR)/include/wx/mgl
+       cp $(SRCDIR)/mgl/files.lst $(DISTDIR)/src/mgl
+       cp $(SRCDIR)/mgl/make* $(DISTDIR)/src/mgl
+       cp $(SRCDIR)/mgl/*.cpp $(DISTDIR)/src/mgl
+       mkdir $(DISTDIR)/contrib
+       cp -R $(WXDIR)/contrib $(DISTDIR)
+
 DEMOS_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/demos
        cp $(DEMODIR)/Makefile.in $(DISTDIR)/demos
@@ -824,6 +897,13 @@ SAMPLES_DIST: ALL_GUI_DIST
        cp $(SAMPDIR)/configure $(DISTDIR)/samples
        cp $(SAMPDIR)/configure.in $(DISTDIR)/samples
 
+       mkdir $(DISTDIR)/samples/artprov
+       cp $(SAMPDIR)/artprov/Makefile.in $(DISTDIR)/samples/artprov
+       cp $(SAMPDIR)/artprov/makefile.unx $(DISTDIR)/samples/artprov
+       cp $(SAMPDIR)/artprov/*.cpp $(DISTDIR)/samples/artprov
+       cp $(SAMPDIR)/artprov/*.h $(DISTDIR)/samples/artprov
+       cp $(SAMPDIR)/artprov/*.xpm $(DISTDIR)/samples/artprov
+
        mkdir $(DISTDIR)/samples/calendar
        cp $(SAMPDIR)/calendar/Makefile.in $(DISTDIR)/samples/calendar
        cp $(SAMPDIR)/calendar/makefile.unx $(DISTDIR)/samples/calendar
@@ -1007,18 +1087,20 @@ SAMPLES_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/samples/internat
        mkdir $(DISTDIR)/samples/internat/de
        mkdir $(DISTDIR)/samples/internat/fr
+       mkdir $(DISTDIR)/samples/internat/ju
        mkdir $(DISTDIR)/samples/internat/ru
        cp $(SAMPDIR)/internat/Makefile.in $(DISTDIR)/samples/internat
        cp $(SAMPDIR)/internat/makefile.unx $(DISTDIR)/samples/internat
        cp $(SAMPDIR)/internat/*.cpp $(DISTDIR)/samples/internat
        cp $(SAMPDIR)/internat/*.xpm $(DISTDIR)/samples/internat
        cp $(SAMPDIR)/internat/*.txt $(DISTDIR)/samples/internat
-       cp $(SAMPDIR)/internat/*.po $(DISTDIR)/samples/internat
        cp $(SAMPDIR)/internat/fr/*.mo $(DISTDIR)/samples/internat/fr
        cp $(SAMPDIR)/internat/de/*.mo $(DISTDIR)/samples/internat/de
+       cp $(SAMPDIR)/internat/ja/*.mo $(DISTDIR)/samples/internat/ja
        cp $(SAMPDIR)/internat/ru/*.mo $(DISTDIR)/samples/internat/ru
        cp $(SAMPDIR)/internat/fr/*.po $(DISTDIR)/samples/internat/fr
        cp $(SAMPDIR)/internat/de/*.po $(DISTDIR)/samples/internat/de
+       cp $(SAMPDIR)/internat/ja/*.po $(DISTDIR)/samples/internat/ja
        cp $(SAMPDIR)/internat/ru/*.po $(DISTDIR)/samples/internat/ru
 
        mkdir $(DISTDIR)/samples/ipc
@@ -1035,6 +1117,10 @@ SAMPLES_DIST: ALL_GUI_DIST
        cp $(SAMPDIR)/joytest/*.h $(DISTDIR)/samples/joytest
        cp $(SAMPDIR)/joytest/*.wav $(DISTDIR)/samples/joytest
 
+       mkdir $(DISTDIR)/samples/keyboard
+       cp $(SAMPDIR)/keyboard/Makefile.in $(DISTDIR)/samples/keyboard
+       cp $(SAMPDIR)/keyboard/*.cpp $(DISTDIR)/samples/keyboard
+
        mkdir $(DISTDIR)/samples/layout
        cp $(SAMPDIR)/layout/Makefile.in $(DISTDIR)/samples/layout
        cp $(SAMPDIR)/layout/makefile.unx $(DISTDIR)/samples/layout
@@ -1092,6 +1178,11 @@ SAMPLES_DIST: ALL_GUI_DIST
        cp $(SAMPDIR)/mobile/wxedit/Makefile.in $(DISTDIR)/samples/mobile/wxedit
        cp $(SAMPDIR)/mobile/wxedit/*.cpp $(DISTDIR)/samples/mobile/wxedit
        cp $(SAMPDIR)/mobile/wxedit/*.h $(DISTDIR)/samples/mobile/wxedit
+       mkdir $(DISTDIR)/samples/mobile/styles
+       cp $(SAMPDIR)/mobile/styles/Makefile.in $(DISTDIR)/samples/mobile/styles
+       cp $(SAMPDIR)/mobile/styles/*.cpp $(DISTDIR)/samples/mobile/styles
+       cp $(SAMPDIR)/mobile/styles/*.h $(DISTDIR)/samples/mobile/styles
+       cp $(SAMPDIR)/mobile/styles/*.jpg $(DISTDIR)/samples/mobile/styles
     
        mkdir $(DISTDIR)/samples/dialup
        cp $(SAMPDIR)/dialup/Makefile.in $(DISTDIR)/samples/dialup
@@ -1238,8 +1329,6 @@ SAMPLES_DIST: ALL_GUI_DIST
        cp $(SAMPDIR)/treectrl/*.cpp $(DISTDIR)/samples/treectrl
        cp $(SAMPDIR)/treectrl/*.h $(DISTDIR)/samples/treectrl
        cp $(SAMPDIR)/treectrl/*.xpm $(DISTDIR)/samples/treectrl
-       mkdir $(DISTDIR)/samples/treectrl/bitmaps
-       cp $(SAMPDIR)/treectrl/bitmaps/*.bmp $(DISTDIR)/samples/treectrl/bitmaps
 
        mkdir $(DISTDIR)/samples/treelay
        cp $(SAMPDIR)/treelay/Makefile.in $(DISTDIR)/samples/treelay
@@ -1289,6 +1378,18 @@ UTILS_DIST: ALL_GUI_DIST
        cp $(UTILSDIR)/tex2rtf/src/*.cpp $(DISTDIR)/utils/tex2rtf/src
        cp $(UTILSDIR)/tex2rtf/src/tex2rtf.* $(DISTDIR)/utils/tex2rtf/src
 
+       mkdir $(DISTDIR)/utils/emulator
+       mkdir $(DISTDIR)/utils/emulator/src
+       mkdir $(DISTDIR)/utils/emulator/docs
+       cp $(UTILSDIR)/emulator/*.in $(DISTDIR)/utils/emulator
+       cp $(UTILSDIR)/emulator/src/*.h $(DISTDIR)/utils/emulator/src
+       cp $(UTILSDIR)/emulator/src/*.in $(DISTDIR)/utils/emulator/src
+       cp $(UTILSDIR)/emulator/src/*.cpp $(DISTDIR)/utils/emulator/src
+       cp $(UTILSDIR)/emulator/src/*.jpg $(DISTDIR)/utils/emulator/src
+       cp $(UTILSDIR)/emulator/src/*.wxe $(DISTDIR)/utils/emulator/src
+       cp $(UTILSDIR)/emulator/docs/*.txt $(DISTDIR)/utils/emulator/docs
+       cp $(UTILSDIR)/emulator/docs/*.jpg $(DISTDIR)/utils/emulator/docs
+
        mkdir $(DISTDIR)/utils/makegen
        mkdir $(DISTDIR)/utils/makegen/templates
        cp $(UTILSDIR)/makegen/Makefile.in $(DISTDIR)/utils/makegen
@@ -1303,7 +1404,29 @@ UTILS_DIST: ALL_GUI_DIST
        cp $(UTILSDIR)/HelpGen/Makefile.in $(DISTDIR)/utils/HelpGen
        cp $(UTILSDIR)/HelpGen/src/*.* $(DISTDIR)/utils/HelpGen/src
 
-       cp -R $(UTILSDIR)/dialoged $(DISTDIR)/utils/dialoged
+       mkdir $(DISTDIR)/utils/dialoged
+       mkdir $(DISTDIR)/utils/dialoged/src
+       mkdir $(DISTDIR)/utils/dialoged/src/bitmaps
+       mkdir $(DISTDIR)/utils/dialoged/docs
+       cp $(UTILSDIR)/dialoged/Makefile.in $(DISTDIR)/utils/dialoged
+       cp $(UTILSDIR)/dialoged/src/*.h $(DISTDIR)/utils/dialoged/src
+       cp $(UTILSDIR)/dialoged/src/*.cpp $(DISTDIR)/utils/dialoged/src
+       cp $(UTILSDIR)/dialoged/src/Makefile.in $(DISTDIR)/utils/dialoged/src
+       cp $(UTILSDIR)/dialoged/src/makefile.unx $(DISTDIR)/utils/dialoged/src
+       cp $(UTILSDIR)/dialoged/src/bitmaps/*.xpm $(DISTDIR)/utils/dialoged/src/bitmaps
+       cp $(UTILSDIR)/dialoged/docs/*.tex $(DISTDIR)/utils/dialoged/docs
+       cp $(UTILSDIR)/dialoged/docs/*.ini $(DISTDIR)/utils/dialoged/docs
+       cp $(UTILSDIR)/dialoged/docs/*.gif $(DISTDIR)/utils/dialoged/docs
+
+       mkdir $(DISTDIR)/utils/helpview
+       mkdir $(DISTDIR)/utils/helpview/src
+       mkdir $(DISTDIR)/utils/helpview/src/bitmaps
+       cp $(UTILSDIR)/helpview/Makefile.in $(DISTDIR)/utils/helpview
+       cp $(UTILSDIR)/helpview/src/*.h $(DISTDIR)/utils/helpview/src
+       cp $(UTILSDIR)/helpview/src/*.cpp $(DISTDIR)/utils/helpview/src
+       cp $(UTILSDIR)/helpview/src/Makefile.in $(DISTDIR)/utils/helpview/src
+       cp $(UTILSDIR)/helpview/src/test.zip $(DISTDIR)/utils/helpview/src
+       cp $(UTILSDIR)/helpview/src/bitmaps/*.xpm $(DISTDIR)/utils/helpview/src/bitmaps
 
 MISC_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/misc
@@ -1350,11 +1473,14 @@ PYTHON_DIST:
        mkdir $(DISTDIR)/wxPython/demo/dllwidget
        mkdir $(DISTDIR)/wxPython/src
        mkdir $(DISTDIR)/wxPython/src/gtk
+       mkdir $(DISTDIR)/wxPython/scripts
        mkdir $(DISTDIR)/wxPython/wxPython
        mkdir $(DISTDIR)/wxPython/wxPython/lib
        mkdir $(DISTDIR)/wxPython/wxPython/lib/PyCrust
        mkdir $(DISTDIR)/wxPython/wxPython/lib/editor
        mkdir $(DISTDIR)/wxPython/wxPython/lib/mixins
+       mkdir $(DISTDIR)/wxPython/wxPython/tools
+       mkdir $(DISTDIR)/wxPython/wxPython/tools/XRCed
 
        cp $(WXDIR)/wxPython/*.txt $(DISTDIR)/wxPython
        cp $(WXDIR)/wxPython/*.py $(DISTDIR)/wxPython
@@ -1374,6 +1500,7 @@ PYTHON_DIST:
        -cp $(WXDIR)/wxPython/demo/data/* $(DISTDIR)/wxPython/demo/data
        -cp $(WXDIR)/wxPython/demo/dllwidget/Makefile $(DISTDIR)/wxPython/demo/dllwidget
        -cp $(WXDIR)/wxPython/demo/dllwidget/test_* $(DISTDIR)/wxPython/demo/dllwidget
+       -cp $(WXDIR)/wxPython/scripts/* $(DISTDIR)/wxPython/scripts
        -cp $(WXDIR)/wxPython/src/* $(DISTDIR)/wxPython/src
        cp $(WXDIR)/wxPython/src/gtk/*.py $(DISTDIR)/wxPython/src/gtk
        cp $(WXDIR)/wxPython/src/gtk/*.cpp $(DISTDIR)/wxPython/src/gtk
@@ -1381,6 +1508,8 @@ PYTHON_DIST:
        cp $(WXDIR)/wxPython/wxPython/lib/PyCrust/*.py $(DISTDIR)/wxPython/wxPython/lib/PyCrust
        cp $(WXDIR)/wxPython/wxPython/lib/editor/*.py $(DISTDIR)/wxPython/wxPython/lib/editor
        cp $(WXDIR)/wxPython/wxPython/lib/mixins/*.py $(DISTDIR)/wxPython/wxPython/lib/mixins
+       cp $(WXDIR)/wxPython/wxPython/tools/*.py $(DISTDIR)/wxPython/wxPython/tools
+       cp $(WXDIR)/wxPython/wxPython/tools/XRCed/*.{py,ico,sh,xrc} $(DISTDIR)/wxPython/wxPython/tools/XRCed
 
 distclean:
        $(RM) -r _dist_dir
@@ -1404,6 +1533,11 @@ dist-only:
 
 dist: @GUIDIST@
        @echo "*** Creating wxWindows distribution in $(DISTDIR)..."
+       @# now prune away a lot of the crap included by using cp -R
+       @# in other dist targets.
+       find $(DISTDIR) \( -name "CVS" -o -name ".cvsignore" -o -name "*.dsp" -o -name "*.dsw" -o -name "*.hh*" -o \
+                       \( -name "makefile.*" -a ! -name "makefile.unx" \) \) \
+                       -print0 | xargs -0 rm -rf
        @cd _dist_dir && tar ch $(DISTDIRNAME) | gzip -f9 > ../$(WXARCHIVE);
        @if test "$(USE_GUI)" = 1; then \
        cd $(DISTDIR); \
@@ -1477,6 +1611,7 @@ debian-dist: debian-native-dist debian-msw-dirs MSW_DIST
        mv $(DISTDIR) $(WXDIR)/../wxwindows$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER)-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER)
 
 debian-native-dist: @GUIDIST@ UNIV_DIST MANUAL_DIST PYTHON_DIST
+       cp $(SRCDIR)/files.lst $(DISTDIR)/src
 
 debian-msw-dirs:
        mkdir $(DISTDIR)/include/wx/msw