]> git.saurik.com Git - wxWidgets.git/blobdiff - Makefile.in
fix memory leak as Dimitri suggested
[wxWidgets.git] / Makefile.in
index ea419afc235e041ab273e6d41b4308753d3c7a8d..756cc72895b36b02efda46ebe08700920720050f 100644 (file)
@@ -1,34 +1,42 @@
-#
+#####################################################################
 # File:     makefile.unx
+# Purpose:  Makefile for Unix wxWindows ports (both GUI and wxBase)
 # Author:   Julian Smart, Robert Roebling, Vadim Zeitlin, Ron Lee
 # Created:  1993
-# Updated:  2001
+# Version:  $Id$
 # Copyright:(c) 1993, AIAI, University of Edinburgh,
 # Copyright:(c) 1999, Vadim Zeitlin
 # Copyright:(c) 1999, Robert Roebling
 # Copyright:(c) 2001, Ron Lee
-#
-# Makefile for libwx_gtk.a, libwx_motif.a and libwx_msw.a
-
-###################################################################
+#####################################################################
 
 include ./src/make.env
 
-############## override make.env for PIC ##########################
+#################### the implicit rules #############################
+
+# NB: we use the old style suffix rules (.c.o) and not the GNU make
+#     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 .mm
+
+.c.o:
+       $(CC) -c $(CFLAGS) $(PICFLAGS) -o $@ $<
 
-%.o : %.c
-       $(CC) -c $(CFLAGS) $(PICFLAGS) @WXMSW_DLL_DEFINES@ -o $@ $<
+.cpp.o:
+       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
 
-%.o : %.cpp
-       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) @WXMSW_DLL_DEFINES@ -o $@ $<
+.cxx.o:
+       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
 
-%.o : %.cxx
-       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) @WXMSW_DLL_DEFINES@ -o $@ $<
+# Objective-C++, right now just use CXXFLAGS
+.mm.o:
+       $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
 
-%.r : %.rsrc
+.rsrc.r:
        $(DEREZ) $^ Carbon.r -useDF > $@
 
-########################### Paths #################################
+############################# Paths #################################
 
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
@@ -69,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@
@@ -96,10 +105,14 @@ TIFFDIR  = $(WXDIR)/src/tiff
 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
@@ -114,11 +127,13 @@ INTLDIR  = $(WXDIR)/locale
 ########################## Archive name ###############################
 
 # append a version suffix x.y.z to all file names
+VER_MAJMIN=$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER)
 VER_SUFFIX=$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER)$(EXTRA_VER)
 WXARCHIVE=@DISTDIR@-$(VER_SUFFIX).tar.gz
 WXGLARCHIVE=@DISTDIR@-gl-$(VER_SUFFIX).tar.gz
 WXSAMPLES=wx$(TOOLKIT)-samples-$(VER_SUFFIX).tar.gz
 WXDEMOS=wx$(TOOLKIT)-demos-$(VER_SUFFIX).tar.gz
+WXARCHIVE_ZIP=wxMSW-$(VER_SUFFIX).zip
 
 WXARCHIVE_BZIP=@DISTDIR@-$(VER_SUFFIX).tar.bz2
 WXGLARCHIVE_BZIP=@DISTDIR@-gl-$(VER_SUFFIX).tar.bz2
@@ -138,8 +153,8 @@ WX_LINGUAS = `cd $(top_srcdir)/locale && ls *.mo 2> /dev/null | sed -n 's/\.mo//
 # .d and .h/.inl files for the current toolkit
 include @PORT_FILES@
 
-SOURCES = $(ALL_SOURCES)
-HEADERS = $(ALL_HEADERS)
+SOURCES = @ALL_SOURCES@
+HEADERS = @ALL_HEADERS@
 
 # for the objects and depfiles, we might be bulding only part of them
 # depending on configure arguments, so select a subset of ALL
@@ -171,39 +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
-
-FREETYPEOBJS = \
-               ftsystem.o \
-               autohint.o \
-               ftbase.o \
-               ftdebug.o \
-               ftglyph.o \
-               ftinit.o \
-               ftmm.o \
-               cff.o \
-               type1cid.o \
-               psnames.o \
-               psmodule.o \
-               raster1.o \
-               sfnt.o \
-               smooth.o \
-               truetype.o \
-               type1z.o \
-               winfnt.o
+               pngwutil.o
 
 JPEGOBJS = \
                jcomapi.o \
@@ -313,26 +311,30 @@ SONAME_FLAGS_GL = @SONAME_FLAGS_GL@
 
 all: @WX_ALL@
 
-$(build_libdir)/@WX_LIBRARY_NAME_STATIC@:  $(OBJECTS)
-       @$(INSTALL) -d $(build_libdir)
+$(build_libdir)/@WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
+       @$(INSTALL_DIR) $(build_libdir)
+       @$(RM) $@
        $(AR) $(AROPTIONS) $@ $(OBJECTS)
        $(RANLIB) $@
 
-$(build_libdir)/@WX_LIBRARY_NAME_STATIC_GL@:  glcanvas.o
-       @$(INSTALL) -d $(build_libdir)
+$(build_libdir)/@WX_LIBRARY_NAME_STATIC_GL@: glcanvas.o
+       @$(INSTALL_DIR) $(build_libdir)
+       @$(RM) $@
        $(AR) $(AROPTIONS) $@ glcanvas.o
        $(RANLIB) $@
 
-$(build_libdir)/@WX_LIBRARY_NAME_SHARED@:  $(OBJECTS)
-       @$(INSTALL) -d $(build_libdir)
+$(build_libdir)/@WX_LIBRARY_NAME_SHARED@: $(OBJECTS)
+       @$(INSTALL_DIR) $(build_libdir)
        $(SHARED_LD) $@ $(SONAME_FLAGS) $(OBJECTS) $(EXTRALIBS)
 
-$(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)
+# 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_DIR) $(build_libdir)
+       $(SHARED_LD) $@ $(SONAME_FLAGS_GL) glcanvas.o $(EXTRALIBS) $(OPENGLLIBS)
 
-$(build_libdir)/@WX_RESOURCES_MACOSX@: $(MACRESOURCES)
-       @$(INSTALL) -d $(build_libdir)
+$(build_libdir)/@WX_RESOURCES_MACOSX_DATA@: $(MACRESOURCES)
+       @$(INSTALL_DIR) $(build_libdir)
        $(RESCOMP) -d __UNIX__ -useDF $^ -o $@
 
 $(build_libdir)/@WX_LIBRARY_LINK1@: $(build_libdir)/@WX_LIBRARY_NAME_SHARED@
@@ -349,12 +351,12 @@ $(build_libdir)/@WX_LIBRARY_LINK1_GL@: $(build_libdir)/@WX_LIBRARY_NAME_SHARED_G
                && $(LN_S) @WX_TARGET_LIBRARY_GL@ @WX_LIBRARY_LINK1_GL@ \
                && $(LN_S) @WX_TARGET_LIBRARY_GL@ @WX_LIBRARY_LINK2_GL@
 
-$(OBJECTS):    $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h
+$(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h
 
-parser.o:    parser.c lexer.c
+parser.o: parser.c lexer.c
        $(CCLEX) -c $(CFLAGS) -I. $(PICFLAGS) -o $@ parser.c
 
-parser.c:      $(COMMDIR)/parser.y lexer.c
+parser.c: $(COMMDIR)/parser.y lexer.c
        $(YACC) $(COMMDIR)/parser.y
        @sed -e "s;$(COMMDIR)/y.tab.c;parser.y;g" < y.tab.c | \
        sed -e "s/BUFSIZ/5000/g"            | \
@@ -364,7 +366,7 @@ parser.c:   $(COMMDIR)/parser.y lexer.c
        sed -e "s/unput/PROIO_unput/g"      > parser.c
        @$(RM) y.tab.c
 
-lexer.c:       $(COMMDIR)/lexer.l
+lexer.c: $(COMMDIR)/lexer.l
        $(LEX) $(COMMDIR)/lexer.l
        @sed -e "s;$(COMMDIR)/@LEX_STEM@.c;lexer.l;g" < @LEX_STEM@.c | \
        sed -e "s/yy/PROIO_yy/g"            | \
@@ -372,8 +374,7 @@ lexer.c:    $(COMMDIR)/lexer.l
        sed -e "s/unput/PROIO_unput/g"      > lexer.c
        @$(RM) @LEX_STEM@.c
 
--include $(OBJECTS:.o=.d)
-
+@IF_GNU_MAKE@-include $(OBJECTS:.o=.d)
 
 CREATE_INSTALLED_LINKS: preinstall
        $(RM) $(libdir)/@WX_LIBRARY_LINK1@
@@ -390,12 +391,29 @@ 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/afm
-       $(INSTALL) -d $(datadir)/wx/gs_afm
-       $(INSTALL_DATA) $(top_srcdir)/misc/afm/*.afm $(datadir)/wx/afm
-       $(INSTALL_DATA) $(top_srcdir)/misc/gs_afm/*.afm $(datadir)/wx/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_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
@@ -404,60 +422,71 @@ 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
-       $(INSTALL_PROGRAM) $(build_libdir)/@WX_TARGET_LIBRARY@ $(libdir)/@WX_TARGET_LIBRARY@
-
-       $(INSTALL) -d $(libdir)/wx
-       $(INSTALL) -d $(libdir)/wx/include
-       $(INSTALL) -d $(libdir)/wx/include/@TOOLCHAIN_NAME@
-       $(INSTALL) -d $(libdir)/wx/include/@TOOLCHAIN_NAME@/wx
+       @INSTALL_LIBRARY@ $(build_libdir)/@WX_TARGET_LIBRARY@ $(libdir)/@WX_TARGET_LIBRARY@
+       @if test "x@WX_LIBRARY_IMPORTLIB@" != "x"; then \
+               $(INSTALL_PROGRAM) $(top_builddir)/lib/@WX_LIBRARY_IMPORTLIB@ $(libdir)/@WX_LIBRARY_IMPORTLIB@; fi
+
+       $(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
-       $(INSTALL) -d $(includedir)/wx/protocol
-       $(INSTALL) -d $(includedir)/wx/unix
+       @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_DIR) $(includedir)/wx/msw; fi
+
+       $(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
 
-preinstall_res: $(build_libdir)/@WX_RESOURCES_MACOSX_COMPILED@
+preinstall_res: $(build_libdir)/@WX_RESOURCES_MACOSX_ASCII@ $(build_libdir)/@WX_RESOURCES_MACOSX_DATA@
        @echo " "
        @echo " Installing wxWindows Mac resource ..."
        @echo " "
-       @if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
-       $(INSTALL_PROGRAM) $(build_libdir)/@WX_RESOURCES_MACOSX_COMPILED@ $(libdir)/@WX_RESOURCES_MACOSX_COMPILED@
+       @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@
 
 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
-       $(INSTALL_PROGRAM) $(build_libdir)/@WX_TARGET_LIBRARY_GL@ $(libdir)/@WX_TARGET_LIBRARY_GL@
+       @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@
+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"
-       @echo " if you installed a shared library and also modify"
+       @echo " if you installed a shared library and also modify the"
        @echo " LD_LIBRARY_PATH (or equivalent) environment variable."
        @echo " "
        @echo " wxWindows comes with no guarantees and doesn't claim"
@@ -482,16 +511,19 @@ uninstall:
        @$(RM) $(libdir)/wx/include/@TOOLCHAIN_NAME@/wx/setup.h
        @$(RM) $(bindir)/wx-config
        @$(RM) $(bindir)/wx@TOOLCHAIN_NAME@-config
-       @$(RM) $(datadir)/wx/afm/*
-       @$(RM) $(datadir)/wx/gs_afm/*
-# FIXME: wxBase doesnt install these next 3 dirs.
-       @-rmdir $(datadir)/wx/gs_afm
-       @-rmdir $(datadir)/wx/afm
+       @$(RM) $(datadir)/wx/$(VER_MAJMIN)/afm/*
+       @$(RM) $(datadir)/wx/$(VER_MAJMIN)/gs_afm/*
+       # 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; \
@@ -509,6 +541,7 @@ uninstall:
        @if test -d $(includedir)/wx/msw; then rmdir $(includedir)/wx/msw; fi
        @if test -d $(includedir)/wx/html; then rmdir $(includedir)/wx/html; fi
        @if test -d $(includedir)/wx/unix; then rmdir $(includedir)/wx/unix; fi
+       @if test -d $(includedir)/wx/univ; then rmdir $(includedir)/wx/univ; fi
        @if test -d $(includedir)/wx/generic; then rmdir $(includedir)/wx/generic; fi
        @if test -d $(includedir)/wx/protocol; then rmdir $(includedir)/wx/protocol; fi
        @if test -d $(includedir)/wx; then rmdir $(includedir)/wx; fi
@@ -518,44 +551,60 @@ uninstall:
 ALL_DIST: distclean
        mkdir _dist_dir
        mkdir $(DISTDIR)
-       cp $(WXDIR)/configure.in $(DISTDIR)
-       cp $(WXDIR)/configure $(DISTDIR)
+       cp $(WXDIR)/wxwin.m4 $(DISTDIR)
+       cp $(WXDIR)/aclocal.m4 $(DISTDIR)
        cp $(WXDIR)/config.sub $(DISTDIR)
        cp $(WXDIR)/config.guess $(DISTDIR)
        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)
        cp $(WXDIR)/Makefile.in $(DISTDIR)
+       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
+       # 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
        cp $(ZLIBDIR)/README $(DISTDIR)/src/zlib
        cp $(ZLIBDIR)/*.mms $(DISTDIR)/src/zlib
        mkdir $(DISTDIR)/src/regex
-       cp $(REGEXDIR)/*.{i,}h $(DISTDIR)/src/regex
+       cp $(REGEXDIR)/*.h $(DISTDIR)/src/regex
+       cp $(REGEXDIR)/*.ih $(DISTDIR)/src/regex
        cp $(REGEXDIR)/*.c $(DISTDIR)/src/regex
-       cp $(REGEXDIR)/{Makefile,COPYRIGHT,README,WHATSNEW} $(DISTDIR)/src/regex
-       cp $(REGEXDIR)/{mkh,tests} $(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
+       cp $(REGEXDIR)/mkh $(DISTDIR)/src/regex
+       cp $(REGEXDIR)/tests $(DISTDIR)/src/regex
 
 # this target is the common part of distribution script for all GUI toolkits,
 # but is not used when building wxBase distribution
 ALL_GUI_DIST: ALL_DIST
-       cp $(WXDIR)/wx$(TOOLKIT).spec $(DISTDIR)
-       cp $(WXDIR)/wxBase.spec $(DISTDIR)
+       cp $(WXDIR)/configure.in $(DISTDIR)
+       cp $(WXDIR)/configure $(DISTDIR)
+       cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt
        cp $(DOCDIR)/$(TOOLKITDIR)/install.txt $(DISTDIR)/INSTALL.txt
-       cp $(DOCDIR)/$(TOOLKITDIR)/changes.txt $(DISTDIR)/CHANGES.txt
-       cp $(DOCDIR)/$(TOOLKITDIR)/readme.txt $(DISTDIR)/README.txt
-       cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt
+       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
+       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)
@@ -567,21 +616,23 @@ ALL_GUI_DIST: ALL_DIST
        cp $(INCDIR)/wx/*.inl $(DISTDIR)/include/wx
        cp $(INCDIR)/wx/*.cpp $(DISTDIR)/include/wx
        cp $(INCDIR)/wx/generic/*.h $(DISTDIR)/include/wx/generic
-       cp $(INCDIR)/wx/generic/*.xpm $(DISTDIR)/include/wx/generic
        cp $(INCDIR)/wx/html/*.h $(DISTDIR)/include/wx/html
        cp $(INCDIR)/wx/unix/*.h $(DISTDIR)/include/wx/unix
        cp $(INCDIR)/wx/protocol/*.h $(DISTDIR)/include/wx/protocol
-       mkdir $(DISTDIR)/src/common
+       mkdir $(DISTDIR)/art
+       mkdir $(DISTDIR)/art/gtk
+       mkdir $(DISTDIR)/art/motif
+       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/generic
        mkdir $(DISTDIR)/src/html
-       mkdir $(DISTDIR)/src/html/bitmaps
        mkdir $(DISTDIR)/src/$(TOOLKITDIR)
        mkdir $(DISTDIR)/src/png
        mkdir $(DISTDIR)/src/jpeg
        mkdir $(DISTDIR)/src/tiff
        mkdir $(DISTDIR)/src/iodbc
        mkdir $(DISTDIR)/src/unix
-       cp $(SRCDIR)/files.lst $(DISTDIR)/src/
        cp $(SRCDIR)/*.in $(DISTDIR)/src
        cp $(COMMDIR)/*.cpp $(DISTDIR)/src/common
        cp $(COMMDIR)/*.c $(DISTDIR)/src/common
@@ -596,7 +647,6 @@ ALL_GUI_DIST: ALL_DIST
        cp $(GENDIR)/*.cpp $(DISTDIR)/src/generic
        cp $(GENDIR)/*.mms $(DISTDIR)/src/generic
        cp $(HTMLDIR)/*.cpp $(DISTDIR)/src/html
-       cp $(HTMLDIR)/bitmaps/*.xpm $(DISTDIR)/src/html/bitmaps
        cp $(PNGDIR)/*.h $(DISTDIR)/src/png
        cp $(PNGDIR)/*.c $(DISTDIR)/src/png
        cp $(PNGDIR)/README $(DISTDIR)/src/png
@@ -615,19 +665,26 @@ ALL_GUI_DIST: ALL_DIST
        cp $(ODBCDIR)/Changes.log $(DISTDIR)/src/iodbc
 
 BASE_DIST: ALL_DIST
+       # make --disable-gui the default
+       sed 's/DEFAULT_wxUSE_GUI=yes/DEFAULT_wxUSE_GUI=no/' \
+               $(WXDIR)/configure.in > $(DISTDIR)/configure.in
+       sed 's/DEFAULT_wxUSE_GUI=yes/DEFAULT_wxUSE_GUI=no/' \
+               $(WXDIR)/configure > $(DISTDIR)/configure
+       chmod +x $(DISTDIR)/configure
        mkdir $(DISTDIR)/include
        mkdir $(DISTDIR)/include/wx
        mkdir $(DISTDIR)/include/wx/protocol
        mkdir $(DISTDIR)/include/wx/unix
-       mkdir $(DISTDIR)/src/common
+       mkdir $(DISTDIR)/include/wx/msw
        mkdir $(DISTDIR)/src/unix
+       mkdir $(DISTDIR)/src/msw
        cp @PORT_FILES@ $(DISTDIR)
-       cp $(WXDIR)/@RPM_FILES@ $(DISTDIR)/@RPM_FILES@
-       cp $(WXDIR)/@RPM_SPEC@ $(DISTDIR)/@RPM_SPEC@
-       cp $(WXDIR)/wxBase*.ds[pw] $(DISTDIR)
+       cp $(WXDIR)/src/wxBase*.dsp $(DISTDIR)
+       cp $(WXDIR)/src/wxBase*.dsw $(DISTDIR)
        cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
-       cp $(DOCDIR)/readme.txt $(DISTDIR)/README.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
@@ -647,11 +704,12 @@ BASE_DIST: ALL_DIST
        cp $(SAMPDIR)/console/Makefile.in $(DISTDIR)/samples/console
        cp $(SAMPDIR)/console/makefile.unx $(DISTDIR)/samples/console
        cp $(SAMPDIR)/console/console.cpp $(DISTDIR)/samples/console
+       cp $(SAMPDIR)/console/console.dsp $(DISTDIR)/samples/console
        cp $(SAMPDIR)/console/testdata.fc $(DISTDIR)/samples/console
 
 GTK_DIST: ALL_GUI_DIST
+       cp $(WXDIR)/wxGTK.spec $(DISTDIR)
        cp $(INCDIR)/wx/gtk/*.h $(DISTDIR)/include/wx/gtk
-       cp $(INCDIR)/wx/gtk/*.xpm $(DISTDIR)/include/wx/gtk
        cp $(GTKDIR)/files.lst $(DISTDIR)/src/gtk
        cp $(GTKDIR)/*.cpp $(DISTDIR)/src/gtk
        cp $(GTKDIR)/*.c $(DISTDIR)/src/gtk
@@ -660,36 +718,50 @@ 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 $(WXDIR)/wxMotif.spec $(DISTDIR)
        cp $(INCDIR)/wx/motif/*.h $(DISTDIR)/include/wx/motif
        cp $(MOTIFDIR)/files.lst $(DISTDIR)/src/motif
        cp $(MOTIFDIR)/*.cpp $(DISTDIR)/src/motif
+       cp $(MOTIFDIR)/*.c $(DISTDIR)/src/motif
        cp $(MOTIFDIR)/*.xbm $(DISTDIR)/src/motif
        mkdir $(DISTDIR)/src/motif/xmcombo
        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
        cp $(INCDIR)/wx/mac/*.h $(DISTDIR)/include/wx/mac
        cp $(MACDIR)/files.lst $(DISTDIR)/src/mac
        cp $(MACDIR)/*.cpp $(DISTDIR)/src/mac
        cp $(MACDIR)/*.c $(DISTDIR)/src/mac
+       cp $(MACDIR)/*.h $(DISTDIR)/src/mac
+       cp $(MACDIR)/*.r $(DISTDIR)/src/mac
        mkdir $(DISTDIR)/src/mac/morefile
        cp $(MACDIR)/morefile/*.h $(DISTDIR)/src/mac/morefile
-       cp $(MACDIR)/morefile/*.cpp $(DISTDIR)/src/mac/morefile
-       mkdir $(DISTDIR)/src/mac/cdef
-       cp $(MACDIR)/cdef/*.h $(DISTDIR)/src/mac/cdef
-       cp $(MACDIR)/cdef/*.cpp $(DISTDIR)/src/mac/cdef
-       cp $(MACDIR)/cdef/*.mcp $(DISTDIR)/src/mac/cdef
-       mkdir $(DISTDIR)/src/mac/ldef
-       cp $(MACDIR)/ldef/*.h $(DISTDIR)/src/mac/ldef
-       cp $(MACDIR)/ldef/*.cpp $(DISTDIR)/src/mac/ldef
-       cp $(MACDIR)/ldef/*.mcp $(DISTDIR)/src/mac/cdef
-       mkdir $(DISTDIR)/src/mac/morefile
        cp $(MACDIR)/morefile/*.c $(DISTDIR)/src/mac/morefile
-       cp $(MACDIR)/morefile/*.h $(DISTDIR)/src/mac/morefile
+       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)
@@ -697,6 +769,7 @@ MSW_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/*.cur $(DISTDIR)/include/wx/msw
        cp $(INCDIR)/wx/msw/*.ico $(DISTDIR)/include/wx/msw
@@ -707,31 +780,74 @@ 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)
+       mkdir $(DISTDIR)/include/wx/msw
+       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/*.rc $(DISTDIR)/include/wx/msw
+       cp $(INCDIR)/wx/msw/ctl3d/*.h $(DISTDIR)/include/wx/msw/ctl3d
+       cp $(INCDIR)/wx/msw/gnuwin32/*.h $(DISTDIR)/include/wx/msw/gnuwin32
+       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 $(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
        cp $(DEMODIR)/configure $(DISTDIR)/demos
        cp $(DEMODIR)/configure.in $(DISTDIR)/demos
 
-       cp -R $(DEMODIR)/dbbrowse $(DISTDIR)/demos/dbbrowse
-
        mkdir $(DISTDIR)/demos/bombs
        cp $(DEMODIR)/bombs/Makefile.in $(DISTDIR)/demos/bombs
        cp $(DEMODIR)/bombs/makefile.unx $(DISTDIR)/demos/bombs
@@ -740,6 +856,8 @@ DEMOS_DIST: ALL_GUI_DIST
        cp $(DEMODIR)/bombs/*.xpm $(DISTDIR)/demos/bombs
        cp $(DEMODIR)/bombs/readme.txt $(DISTDIR)/demos/bombs
 
+       cp -R $(DEMODIR)/dbbrowse $(DISTDIR)/demos/dbbrowse
+
        mkdir $(DISTDIR)/demos/forty
        cp $(DEMODIR)/forty/Makefile.in $(DISTDIR)/demos/forty
        cp $(DEMODIR)/forty/makefile.unx $(DISTDIR)/demos/forty
@@ -779,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
@@ -962,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
@@ -990,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
@@ -1041,6 +1172,18 @@ SAMPLES_DIST: ALL_GUI_DIST
        cp $(SAMPDIR)/minimal/*.xpm $(DISTDIR)/samples/minimal
        cp $(SAMPDIR)/minimal/*.mms $(DISTDIR)/samples/minimal
 
+       mkdir $(DISTDIR)/samples/mobile
+       cp $(SAMPDIR)/mobile/Makefile.in $(DISTDIR)/samples/mobile
+       mkdir $(DISTDIR)/samples/mobile/wxedit
+       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
        cp $(SAMPDIR)/dialup/makefile.unx $(DISTDIR)/samples/dialup
@@ -1186,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
@@ -1218,7 +1359,9 @@ SAMPLES_DIST: ALL_GUI_DIST
        mkdir $(DISTDIR)/samples/widgets
        mkdir $(DISTDIR)/samples/widgets/icons
        cp $(SAMPDIR)/widgets/Makefile.in $(DISTDIR)/samples/widgets
-       cp $(SAMPDIR)/widgets/*.{cpp,h,rc} $(DISTDIR)/samples/widgets
+       cp $(SAMPDIR)/widgets/*.cpp $(DISTDIR)/samples/widgets
+       cp $(SAMPDIR)/widgets/*.h $(DISTDIR)/samples/widgets
+       cp $(SAMPDIR)/widgets/*.rc $(DISTDIR)/samples/widgets
        cp $(SAMPDIR)/widgets/icons/*.xpm $(DISTDIR)/samples/widgets/icons
 
 UTILS_DIST: ALL_GUI_DIST
@@ -1235,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
@@ -1249,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
@@ -1269,6 +1446,7 @@ MANUAL_DIST:
        mkdir $(DISTDIR)/docs/latex
        mkdir $(DISTDIR)/docs/latex/wx
        cp $(DOCDIR)/latex/wx/*.tex $(DISTDIR)/docs/latex/wx
+       cp $(DOCDIR)/latex/wx/*.inc $(DISTDIR)/docs/latex/wx
        cp $(DOCDIR)/latex/wx/*.gif $(DISTDIR)/docs/latex/wx
        cp $(DOCDIR)/latex/wx/*.ini $(DISTDIR)/docs/latex/wx
        cp $(DOCDIR)/latex/wx/*.bib $(DISTDIR)/docs/latex/wx
@@ -1280,39 +1458,58 @@ MANUAL_DIST:
 PYTHON_DIST:
        mkdir $(DISTDIR)/wxPython
        mkdir $(DISTDIR)/wxPython/contrib
+       mkdir $(DISTDIR)/wxPython/contrib/dllwidget
+       mkdir $(DISTDIR)/wxPython/contrib/gizmos
        mkdir $(DISTDIR)/wxPython/contrib/glcanvas
        mkdir $(DISTDIR)/wxPython/contrib/glcanvas/gtk
        mkdir $(DISTDIR)/wxPython/contrib/ogl
        mkdir $(DISTDIR)/wxPython/contrib/stc
+       mkdir $(DISTDIR)/wxPython/contrib/stc/gtk
        mkdir $(DISTDIR)/wxPython/contrib/xrc
        mkdir $(DISTDIR)/wxPython/demo
        mkdir $(DISTDIR)/wxPython/demo/bitmaps
+       mkdir $(DISTDIR)/wxPython/demo/bmp_source
        mkdir $(DISTDIR)/wxPython/demo/data
+       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
        cp $(WXDIR)/wxPython/setup.cfg $(DISTDIR)/wxPython
        cp $(WXDIR)/wxPython/MANIFEST.in $(DISTDIR)/wxPython
+       cp $(WXDIR)/wxPython/contrib/dllwidget/*.{py,cpp,h,i} $(DISTDIR)/wxPython/contrib/dllwidget
+       cp $(WXDIR)/wxPython/contrib/gizmos/*.{py,cpp,i} $(DISTDIR)/wxPython/contrib/gizmos
        -cp $(WXDIR)/wxPython/contrib/glcanvas/* $(DISTDIR)/wxPython/contrib/glcanvas
        cp $(WXDIR)/wxPython/contrib/glcanvas/gtk/glcanvas.* $(DISTDIR)/wxPython/contrib/glcanvas/gtk
        -cp $(WXDIR)/wxPython/contrib/ogl/* $(DISTDIR)/wxPython/contrib/ogl
        -cp $(WXDIR)/wxPython/contrib/stc/* $(DISTDIR)/wxPython/contrib/stc
+       -cp $(WXDIR)/wxPython/contrib/stc/gtk/* $(DISTDIR)/wxPython/contrib/stc/gtk
        -cp $(WXDIR)/wxPython/contrib/xrc/xrc.* $(DISTDIR)/wxPython/contrib/xrc
        -cp $(WXDIR)/wxPython/demo/* $(DISTDIR)/wxPython/demo
        -cp $(WXDIR)/wxPython/demo/bitmaps/* $(DISTDIR)/wxPython/demo/bitmaps
+       -cp $(WXDIR)/wxPython/demo/bmp_source/* $(DISTDIR)/wxPython/demo/bmp_source
        -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
        cp $(WXDIR)/wxPython/wxPython/lib/*.py $(DISTDIR)/wxPython/wxPython/lib
+       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
@@ -1336,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); \
@@ -1377,6 +1579,18 @@ bzip-dist: @GUIDIST@
        mv wxDemos demos; \
        fi
 
+# RR: Copy text and binary data separatly
+win-dist: MSW_ZIP_TEXT_DIST
+       @echo "*** Creating wxWindows ZIP distribution in $(DISTDIR)..."
+       @cd _dist_dir && mv $(DISTDIRNAME) wxMSW
+       @cd _dist_dir && zip -r -l  ../$(WXARCHIVE_ZIP) *
+       cp $(INCDIR)/wx/msw/*.cur _dist_dir/wxMSW/include/wx/msw
+       cp $(INCDIR)/wx/msw/*.ico _dist_dir/wxMSW/include/wx/msw
+       cp $(INCDIR)/wx/msw/*.bmp _dist_dir/wxMSW/include/wx/msw
+       @cd _dist_dir && zip -r ../$(WXARCHIVE_ZIP) wxMSW/include/wx/msw/*.cur
+       @cd _dist_dir && zip -r ../$(WXARCHIVE_ZIP) wxMSW/include/wx/msw/*.ico
+       @cd _dist_dir && zip -r ../$(WXARCHIVE_ZIP) wxMSW/include/wx/msw/*.bmp
+
 debian-dist: debian-native-dist debian-msw-dirs MSW_DIST
        mkdir $(DISTDIR)/debian
        -cp $(WXDIR)/debian/* $(DISTDIR)/debian
@@ -1397,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
@@ -1418,7 +1633,7 @@ cleanall: clean
 
 RPMTOP=_dist_dir/_rpm_top
 
-rpm: dist
+rpm: bzip-dist
        @echo "*** Building RPMs ***"
        -mkdir $(RPMTOP)
        -mkdir $(RPMTOP)/SOURCES
@@ -1426,7 +1641,7 @@ rpm: dist
        -mkdir $(RPMTOP)/BUILD
        -mkdir $(RPMTOP)/RPMS
        -mkdir $(RPMTOP)/SRPMS
-       cp -f $(WXARCHIVE) $(RPMTOP)/SOURCES
+       cp -f $(WXARCHIVE_BZIP) $(RPMTOP)/SOURCES
        rpm -ba --define "_topdir `pwd`/$(RPMTOP)" $(WXDIR)/wx$(TOOLKIT).spec
        mv -f `find $(RPMTOP) -name "wx$(TARGET)*.rpm"` .