]> granicus.if.org Git - python/commitdiff
Added support for adding libraries.
authorJack Jansen <jack.jansen@cwi.nl>
Sun, 26 Nov 2000 23:02:38 +0000 (23:02 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Sun, 26 Nov 2000 23:02:38 +0000 (23:02 +0000)
Added support for project-relative and absolute path names in the search path entries.

Mac/Lib/mkcwproject/cwxmlgen.py
Mac/Lib/mkcwproject/template/template-alllibraries.xml [new file with mode: 0644]
Mac/Lib/mkcwproject/template/template-grouplistlib.xml [new file with mode: 0644]
Mac/Lib/mkcwproject/template/template-linkorderlib.xml [new file with mode: 0644]
Mac/Lib/mkcwproject/template/template-searchdirs.xml
Mac/Lib/mkcwproject/template/template.prj.xml

index b29786f68a025b05d6a7f14ea12f8c17a7aeb43a..ff5d0cbaf9066ab175aa16e39362edc6d8e1c4d6 100644 (file)
@@ -9,6 +9,9 @@ TEMPLATELIST= [
        ("tmp_allsources", "file", "template-allsources.xml", "sources"),
        ("tmp_linkorder", "file", "template-linkorder.xml", "sources"),
        ("tmp_grouplist", "file", "template-grouplist.xml", "sources"),
+       ("tmp_alllibraries", "file", "template-alllibraries.xml", "libraries"),
+       ("tmp_linkorderlib", "file", "template-linkorderlib.xml", "libraries"),
+       ("tmp_grouplistlib", "file", "template-grouplistlib.xml", "libraries"),
        ("tmp_extrasearchdirs", "file", "template-searchdirs.xml", "extrasearchdirs"),
        ("tmp_projectxmldata", "file", "template.prj.xml", None)
 ]
@@ -24,6 +27,8 @@ class ProjectBuilder:
                if not os.path.exists(templatedir):
                        raise Error, "Cannot file templatedir"
                self.dict = dict
+               if not dict.has_key('prefixname'):
+                       dict['prefixname'] = 'mwerks_plugin_config.h'
                self.templatelist = templatelist
                self.templatedir = templatedir
                
@@ -43,11 +48,17 @@ class ProjectBuilder:
                                                raise Error, "List or tuple expected for %s"%key
                                        for curkeyvalue in keyvalues:
                                                self.dict[key] = curkeyvalue
+                                               if os.path.isabs(curkeyvalue):
+                                                       self.dict['pathtype'] = 'Absolute'
+                                               else:
+                                                       self.dict['pathtype'] = 'Project'
                                                curkeyvalueresult = self._generate_one_value(datasource, dataname)
                                                result = result + curkeyvalueresult
                                finally:
                                        # Restore the list
                                        self.dict[key] = keyvalues
+                                       self.dict['pathtype'] = None
+                                       del self.dict['pathtype']
                else:
                        # Not a multi-element rule. Simply generate
                        result = self._generate_one_value(datasource, dataname)
diff --git a/Mac/Lib/mkcwproject/template/template-alllibraries.xml b/Mac/Lib/mkcwproject/template/template-alllibraries.xml
new file mode 100644 (file)
index 0000000..27f3cb1
--- /dev/null
@@ -0,0 +1,7 @@
+                <FILE>
+                    <PATHTYPE>Name</PATHTYPE>
+                    <PATH>%(libraries)s</PATH>
+                    <PATHFORMAT>MacOS</PATHFORMAT>
+                    <FILEKIND>Library</FILEKIND>
+                    <FILEFLAGS>Debug</FILEFLAGS>
+                </FILE>
diff --git a/Mac/Lib/mkcwproject/template/template-grouplistlib.xml b/Mac/Lib/mkcwproject/template/template-grouplistlib.xml
new file mode 100644 (file)
index 0000000..043313c
--- /dev/null
@@ -0,0 +1,6 @@
+            <FILEREF>
+                <TARGETNAME>%(mac_targetname)s</TARGETNAME>
+                <PATHTYPE>Name</PATHTYPE>
+                <PATH>%(libraries)s</PATH>
+                <PATHFORMAT>MacOS</PATHFORMAT>
+            </FILEREF>
diff --git a/Mac/Lib/mkcwproject/template/template-linkorderlib.xml b/Mac/Lib/mkcwproject/template/template-linkorderlib.xml
new file mode 100644 (file)
index 0000000..ecd2c6b
--- /dev/null
@@ -0,0 +1,5 @@
+                <FILEREF>
+                    <PATHTYPE>Name</PATHTYPE>
+                    <PATH>%(libraries)s</PATH>
+                    <PATHFORMAT>MacOS</PATHFORMAT>
+                </FILEREF>
index 3cb59a9bfadee033839565501c6942fca3a55eeb..c23f8f7b5b03578f0d857d9f73baaca13744c9e9 100644 (file)
@@ -2,7 +2,7 @@
                         <SETTING><NAME>SearchPath</NAME>
                             <SETTING><NAME>Path</NAME><VALUE>%(extrasearchdirs)s</VALUE></SETTING>
                             <SETTING><NAME>PathFormat</NAME><VALUE>MacOS</VALUE></SETTING>
-                            <SETTING><NAME>PathRoot</NAME><VALUE>Absolute</VALUE></SETTING>
+                            <SETTING><NAME>PathRoot</NAME><VALUE>%(pathtype)s</VALUE></SETTING>
                         </SETTING>
                         <SETTING><NAME>Recursive</NAME><VALUE>false</VALUE></SETTING>
                         <SETTING><NAME>HostFlags</NAME><VALUE>All</VALUE></SETTING>
index 6174a311ae6e258f1416851c3a682007fb5ff0c2..8e9c0653785a15138cef28193ca60c514105bbc6 100644 (file)
@@ -78,7 +78,7 @@
                 </SETTING>
 
                 <!-- Settings for "Access Paths" panel -->
-                <SETTING><NAME>AlwaysSearchUserPaths</NAME><VALUE>false</VALUE></SETTING>
+                <SETTING><NAME>AlwaysSearchUserPaths</NAME><VALUE>true</VALUE></SETTING>
                 <SETTING><NAME>InterpretDOSAndUnixPaths</NAME><VALUE>true</VALUE></SETTING>
                 <SETTING><NAME>UserSearchPaths</NAME>
                     <SETTING>
                 <SETTING><NAME>MWFrontEnd_C_onlystdkeywords</NAME><VALUE>0</VALUE></SETTING>
                 <SETTING><NAME>MWFrontEnd_C_enumsalwaysint</NAME><VALUE>0</VALUE></SETTING>
                 <SETTING><NAME>MWFrontEnd_C_mpwpointerstyle</NAME><VALUE>0</VALUE></SETTING>
-                <SETTING><NAME>MWFrontEnd_C_prefixname</NAME><VALUE>mwerks_plugin_config.h</VALUE></SETTING>
+                <SETTING><NAME>MWFrontEnd_C_prefixname</NAME><VALUE>%(prefixname)s</VALUE></SETTING>
                 <SETTING><NAME>MWFrontEnd_C_ansistrict</NAME><VALUE>0</VALUE></SETTING>
                 <SETTING><NAME>MWFrontEnd_C_mpwcnewline</NAME><VALUE>0</VALUE></SETTING>
                 <SETTING><NAME>MWFrontEnd_C_wchar_type</NAME><VALUE>1</VALUE></SETTING>
                     <FILEKIND>Text</FILEKIND>
                     <FILEFLAGS>Debug</FILEFLAGS>
                 </FILE>
+%(tmp_alllibraries)s
                 <FILE>
                     <PATHTYPE>Name</PATHTYPE>
                     <PATH>PythonCore</PATH>
                     <PATH>%(mac_exportname)s</PATH>
                     <PATHFORMAT>MacOS</PATHFORMAT>
                 </FILEREF>
+%(tmp_linkorderlib)s
                 <FILEREF>
                     <PATHTYPE>Name</PATHTYPE>
                     <PATH>PythonCore</PATH>
                 <PATH>MSL ShLibRuntime.Lib</PATH>
                 <PATHFORMAT>MacOS</PATHFORMAT>
             </FILEREF>
+%(tmp_grouplistlib)s
             <FILEREF>
                 <TARGETNAME>%(mac_targetname)s</TARGETNAME>
                 <PATHTYPE>Name</PATHTYPE>