]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/distrib/make_installer.py
move default button handling code from wxControlContainer to wxTLW (patch 1524441)
[wxWidgets.git] / wxPython / distrib / make_installer.py
index 9856bb32b1c34e86e5fd326b3ca8aa9d23149643..39917891d620c64425b488dfdc843adc189623e9 100644 (file)
@@ -75,31 +75,37 @@ Name: pthfile;  Description: "Make this install be the default wxPython"; Types:
 
 [Files]
 %(RTDLL)s
-Source: "distrib\msw\gdiplus.dll"; DestDir: "{code:GetPythonDir}"; Check: OnlyBeforeXP; Flags: sharedfile; Components: core
-Source: "%(WXDIR)s\lib\vc_dll\wx*%(WXDLLVER)s_*.dll";  DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
+Source: "%(WXDIR)s\lib\vc_dll\wx*%(WXDLLVER)s_*.dll";  DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: replacesameversion
+Source: "distrib\msw\gdiplus.dll";                     DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: replacesameversion
+%(CPPDLL)s
 %(MSLU)s
 
-Source: "wx\_activex.pyd";                     DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_calendar.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_controls_.pyd";                   DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_core_.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_gdi_.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_animate.pyd";                     DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_gizmos.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_glcanvas.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_grid.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_html.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_media.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_misc_.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_stc.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_webkit.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_windows_.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_wizard.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_xrc.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_aui.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-Source: "wx\_richtext.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-;;Source: "wx\_iewin.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
-;;Source: "wx\_ogl.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
+;; The old way, only installs on pre-XP systems...
+;;Source: "distrib\msw\gdiplus.dll"; DestDir: "{app}\%(PKGDIR)s\wx"; Check: OnlyBeforeXP; Flags: sharedfile; Components: core
+
+
+Source: "wx\_activex.pyd";                     DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_calendar.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_combo.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_controls_.pyd";                   DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_core_.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_gdi_.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_animate.pyd";                     DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_gizmos.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_glcanvas.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_grid.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_html.pyd";                        DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_media.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_misc_.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_stc.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_webkit.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_windows_.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_wizard.pyd";                      DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_xrc.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_aui.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+Source: "wx\_richtext.pyd";                    DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+;;Source: "wx\_iewin.pyd";                       DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
+;;Source: "wx\_ogl.pyd";                         DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: comparetimestamp
 
 
 Source: "wx\*.py";                             DestDir: "{app}\%(PKGDIR)s\wx"; Components: core
@@ -473,6 +479,26 @@ Source: "samples\StyleEditor\*.cfg";        DestDir: "{app}\samples\StyleEditor"
 Source: "samples\wxProject\*.txt";          DestDir: "{app}\samples\wxProject"; 
 Source: "samples\wxProject\*.py";           DestDir: "{app}\samples\wxProject"; 
 
+Source: "samples\wxPIA_book\*";                       DestDir: "{app}\wxPython\samples\wxPIA_book";                         
+Source: "samples\wxPIA_book\Chapter-01\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-01";                      
+Source: "samples\wxPIA_book\Chapter-02\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-02";                      
+Source: "samples\wxPIA_book\Chapter-03\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-03";                      
+Source: "samples\wxPIA_book\Chapter-04\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-04";                      
+Source: "samples\wxPIA_book\Chapter-05\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-05";                      
+Source: "samples\wxPIA_book\Chapter-06\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-06";                      
+Source: "samples\wxPIA_book\Chapter-07\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-07";                      
+Source: "samples\wxPIA_book\Chapter-08\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-08";                      
+Source: "samples\wxPIA_book\Chapter-09\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-09";                      
+Source: "samples\wxPIA_book\Chapter-10\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-10";                      
+Source: "samples\wxPIA_book\Chapter-11\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-11";                      
+Source: "samples\wxPIA_book\Chapter-12\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-12";                      
+Source: "samples\wxPIA_book\Chapter-13\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-13";                      
+Source: "samples\wxPIA_book\Chapter-14\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-14";                      
+Source: "samples\wxPIA_book\Chapter-15\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-15";                      
+Source: "samples\wxPIA_book\Chapter-16\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-16";                      
+Source: "samples\wxPIA_book\Chapter-16\helpfiles\*";  DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-16\helpfiles";                      
+Source: "samples\wxPIA_book\Chapter-17\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-17";                      
+Source: "samples\wxPIA_book\Chapter-18\*";            DestDir: "{app}\wxPython\samples\wxPIA_book\Chapter-18";                      
 
 
 Source: "scripts\pyshell";                  DestDir: "{app}\scripts"; DestName: "pyshell.pyw";   
@@ -558,6 +584,27 @@ Type: files; Name: "{app}\samples\pydocview\*.pyc";
 Type: files; Name: "{app}\samples\docview\*.pyo";
 Type: files; Name: "{app}\samples\pydocview\*.pyo";
 
+Type: files; Name: "{app}\samples\wxPIA_book\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-01\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-02\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-03\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-04\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-05\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-06\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-07\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-08\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-09\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-10\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-11\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-12\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-13\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-14\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-15\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-16\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-16\helpfiles\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-17\*";
+Type: files; Name: "{app}\samples\wxPIA_book\Chapter-18\*";
+
 
 '''
 
@@ -614,18 +661,18 @@ def get_batch_files():
     return '\n'.join(scripts)
 
 
-runtime_template = 'Source: "%s"; DestDir: "{code:GetPythonDir}"; Flags: uninsneveruninstall; Components: core'
 
-def get_runtime_dlls(PYVER):
+runtime_template1 = 'Source: "%(name)s"; DestDir: "{code:GetPythonDir}"; Flags: uninsneveruninstall; Components: core'
+runtime_template2 = 'Source: "%(name)s"; DestDir: "{app}\%(PKGDIR)s\wx"; Components: core; Flags: replacesameversion'
+
+def get_runtime_dlls(PYVER, PKGDIR):
     if PYVER >= "py24":
-        source = [ r"distrib\msw\msvcr71.dll",
-                   r"distrib\msw\msvcp71.dll" ]
+        return ( runtime_template1 % dict(name=r"distrib\msw\msvcr71.dll", PKGDIR=PKGDIR),
+                 runtime_template2 % dict(name=r"distrib\msw\msvcp71.dll", PKGDIR=PKGDIR) )
     else:
-        source = [ r"distrib\msw\MSVCRT.dll",
-                   r"distrib\msw\MSVCIRT.dll",
-                   r"distrib\msw\MSVCP60.dll" ]
-    DLLs = [runtime_template % dll for dll in source]    
-    return '\n'.join(DLLs)
+        return (  runtime_template1 % dict(name=r"distrib\msw\MSVCRT.dll", PKGDIR=PKGDIR),
+                  runtime_template2 % dict(name=r"distrib\msw\MSVCIRT.dll", PKGDIR=PKGDIR) + "\n" +
+                  runtime_template2 % dict(name=r"distrib\msw\MSVCP60.dll", PKGDIR=PKGDIR) )
 
 
 #----------------------------------------------------------------------
@@ -649,9 +696,10 @@ def main():
     UNINSTALL_BATCH = get_batch_files()
     PKGDIR          = open('src/wx.pth').read()
     LOCALE          = build_locale_string(PKGDIR)
-    RTDLL           = get_runtime_dlls(PYVER)
+    RTDLL,CPPDLL    = get_runtime_dlls(PYVER, PKGDIR)
     
-    print """Building Win32 installer for wxPython:
+    print """
+Building Win32 installer for wxPython:
     VERSION    = %(VERSION)s
     SHORTVER   = %(SHORTVER)s
     WXDLLVER   = %(WXDLLVER)s
@@ -668,15 +716,10 @@ def main():
     else:
         IF22 = ""
 
-    # Starting with 2.3.3 the hybrid build is the release build too, so
-    # no need to label it that way.
-    ##if WXDLL.find("h") != -1:
-    ##    PYVER = PYVER + "-hybrid"
-
     MSLU=''
     CHARTYPE='ansi'
     if "UNICODE=1" in sys.argv:
-        MSLU=r'Source: "distrib\msw\unicows.dll";  DestDir: "{code:GetPythonDir}"; Components: core' % vars()
+        MSLU=r'Source: "distrib\msw\unicows.dll"; DestDir: "{code:GetPythonDir}"; Components: core; Flags: replacesameversion sharedfile' % vars()
         CHARTYPE='unicode'
 
     f = open(ISSFILE, "w")
@@ -698,7 +741,6 @@ def main():
         time.sleep(1)
         os.remove(ISSFILE)
         os.remove(ISSDEMOFILE)
-        os.remove(IFSFILE)
 
 
 #----------------------------------------------------------------------