diff --git a/Mac/Lib/mkcwproject/cwxmlgen.py b/Mac/Lib/mkcwproject/cwxmlgen.py index e80cfa7a8b9..0ffe12fb401 100644 --- a/Mac/Lib/mkcwproject/cwxmlgen.py +++ b/Mac/Lib/mkcwproject/cwxmlgen.py @@ -53,6 +53,8 @@ def _adddefaults(self, dict): dict['stdlibraryflags'] = 'Debug' if not dict.has_key('libraryflags'): dict['libraryflags'] = 'Debug' + if not dict.has_key('initialize'): + dict['initialize'] = '__initialize' if not dict.has_key('mac_sysprefixtype'): if os.path.isabs(dict['sysprefix']): dict['mac_sysprefixtype'] = 'Absolute' diff --git a/Mac/Lib/mkcwproject/template-carbon/template.prj.xml b/Mac/Lib/mkcwproject/template-carbon/template.prj.xml index d0550f59180..5c426a19b34 100644 --- a/Mac/Lib/mkcwproject/template-carbon/template.prj.xml +++ b/Mac/Lib/mkcwproject/template-carbon/template.prj.xml @@ -558,7 +558,7 @@ MWLinker_PPC_dontdeadstripinitcode0 MWLinker_PPC_permitmultdefs0 MWLinker_PPC_linkmodeFast - MWLinker_PPC_initname__initialize + MWLinker_PPC_initname%(initialize)s MWLinker_PPC_mainname MWLinker_PPC_termname__terminate diff --git a/Mac/Lib/mkcwproject/template-ppc/template.prj.xml b/Mac/Lib/mkcwproject/template-ppc/template.prj.xml index 0c79f678247..65ca175ec32 100644 --- a/Mac/Lib/mkcwproject/template-ppc/template.prj.xml +++ b/Mac/Lib/mkcwproject/template-ppc/template.prj.xml @@ -549,7 +549,7 @@ MWLinker_PPC_dontdeadstripinitcode0 MWLinker_PPC_permitmultdefs0 MWLinker_PPC_linkmodeFast - MWLinker_PPC_initname__initialize + MWLinker_PPC_initname%(initialize)s MWLinker_PPC_mainname MWLinker_PPC_termname__terminate diff --git a/Mac/scripts/genpluginprojects.py b/Mac/scripts/genpluginprojects.py index 1286993b0f9..3e2e443473a 100644 --- a/Mac/scripts/genpluginprojects.py +++ b/Mac/scripts/genpluginprojects.py @@ -36,16 +36,17 @@ def genpluginproject(architecture, module, sources=[], sourcedirs=[], libraries=[], extradirs=[], extraexportsymbols=[], outputdir=":::Lib:lib-dynload", - libraryflags=None, stdlibraryflags=None, prefixname=None): + libraryflags=None, stdlibraryflags=None, prefixname=None, + initialize=None): if architecture == "all": # For the time being we generate two project files. Not as nice as # a single multitarget project, but easier to implement for now. genpluginproject("ppc", module, project, projectdir, sources, sourcedirs, libraries, extradirs, extraexportsymbols, outputdir, libraryflags, - stdlibraryflags, prefixname) + stdlibraryflags, prefixname, initialize) genpluginproject("carbon", module, project, projectdir, sources, sourcedirs, libraries, extradirs, extraexportsymbols, outputdir, libraryflags, - stdlibraryflags, prefixname) + stdlibraryflags, prefixname, initialize) return templatename = "template-%s" % architecture targetname = "%s.%s" % (module, architecture) @@ -99,6 +100,8 @@ def genpluginproject(architecture, module, dict['libraryflags'] = libraryflags if stdlibraryflags: dict['stdlibraryflags'] = stdlibraryflags + if initialize: + dict['initialize'] = initialize mkcwproject.mkproject(os.path.join(projectdir, project), module, dict, force=FORCEREBUILD, templatename=templatename)