From b5ac3ecb1f25b2d47fd99a3c4fd3b1cddcb695c6 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Thu, 5 Mar 2015 01:08:02 +0100 Subject: CREDITS: Mention skristiansson for his initial SDL2 support work. --- devtools/credits.pl | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/credits.pl b/devtools/credits.pl index 7dc954a6a7..f82d0d4212 100755 --- a/devtools/credits.pl +++ b/devtools/credits.pl @@ -1133,6 +1133,7 @@ begin_credits("Credits"); add_person("Jeroen Janssen", "japj", "Numerous readability and bugfix patches"); add_person("Keith Kaisershot", "blitter", "Several Pegasus Prime patches"); add_person("Andreas Karlsson", "Sprawl", "Initial port for SymbianOS"); + add_person("Stefan Kristiansson", "skristiansson", "Initial work on SDL2 support"); add_person("Claudio Matsuoka", "", "Daily Linux builds"); add_person("Thomas Mayer", "", "PSP port contributions"); add_person("Sean Murray", "lightcast", "ScummVM tools GUI application (GSoC 2007 task)"); -- cgit v1.2.3 From 9a494936561a5351f5bfb9e840d70c05684239c3 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Fri, 6 Mar 2015 02:39:57 +0200 Subject: DEVTOOLS: Add support for linking with SDL 2.0 in create_project This is handled with the new command-line option, --sdl2 --- devtools/create_project/create_project.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index e71816f575..34d30e1d69 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -125,6 +125,7 @@ int main(int argc, char *argv[]) { ProjectType projectType = kProjectNone; int msvcVersion = 9; + bool useSDL2 = false; // Parse command line arguments using std::cout; @@ -267,6 +268,8 @@ int main(int argc, char *argv[]) { setup.devTools = true; } else if (!std::strcmp(argv[i], "--tests")) { setup.tests = true; + } else if (!std::strcmp(argv[i], "--sdl2")) { + useSDL2 = true; } else { std::cerr << "ERROR: Unknown parameter \"" << argv[i] << "\"\n"; return -1; @@ -335,7 +338,13 @@ int main(int argc, char *argv[]) { // Windows only has support for the SDL backend, so we hardcode it here (along with winmm) setup.defines.push_back("WIN32"); setup.defines.push_back("SDL_BACKEND"); - setup.libraries.push_back("sdl"); + if (!useSDL2) { + cout << "\nLinking to SDL 1.2\n\n"; + setup.libraries.push_back("sdl"); + } else { + cout << "\nLinking to SDL 2.0\n\n"; + setup.libraries.push_back("sdl2"); + } setup.libraries.push_back("winmm"); // Add additional project-specific library @@ -645,6 +654,9 @@ void displayHelp(const char *exe) { "Optional features settings:\n" " --enable- enable inclusion of the feature \"name\"\n" " --disable- disable inclusion of the feature \"name\"\n" + "\n" + "SDL settings:\n" + " --sdl2 link to SDL 2.0, instead of SDL 1.2\n" "\n" " There are the following features available:\n" "\n"; -- cgit v1.2.3 From e69696a536b500941398ca42c6eec082a8891c08 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Fri, 3 Apr 2015 01:09:22 +0200 Subject: CREATE_PROJECT: Make PBXGroups use PBXFileReference-hashes instead of PBXBuildFile-hashes. --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index d95bf3e9ee..f70b359edb 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -193,7 +193,7 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p std::string id = "FileReference_" + node->name; FileProperty property = FileProperty(node->name, node->name, node->name, ""); - ADD_SETTING_ORDER_NOVALUE(children, getHash(id), node->name, order++); + ADD_SETTING_ORDER_NOVALUE(children, getHash(node->name), node->name, order++); ADD_BUILD_FILE(id, node->name, node->name + " in Sources"); ADD_FILE_REFERENCE(node->name, property); -- cgit v1.2.3 From 8f66bc1c92d8ac61078dc1a3fb00875e608a25a2 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Fri, 3 Apr 2015 01:19:24 +0200 Subject: CREATE_PROJECT: Escape \" in "" for PBXFileReferences during writeFileListToProject This has to be applied explicitly, as modifying ADD_FILE_REFERENCE to use SettingsQuoteVariable would be wrong (i.e. SDKROOT should not become "SDKROOT"). --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index f70b359edb..18ab98560b 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -191,7 +191,7 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p const FileNode *node = *i; std::string id = "FileReference_" + node->name; - FileProperty property = FileProperty(node->name, node->name, node->name, ""); + FileProperty property = FileProperty(node->name, node->name, node->name, "\"\""); ADD_SETTING_ORDER_NOVALUE(children, getHash(node->name), node->name, order++); ADD_BUILD_FILE(id, node->name, node->name + " in Sources"); -- cgit v1.2.3 From 0395948cd3d612f8b629dc16c09fd0bac0225411 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Fri, 3 Apr 2015 01:31:51 +0200 Subject: CREATE_PROJECT: Quote lastKnownFileType, name and path to avoid breakage on c++11-compat.h --- devtools/create_project/xcode.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 18ab98560b..0cc16d1f8d 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -64,9 +64,9 @@ namespace CreateProjectTool { #define ADD_FILE_REFERENCE(name, properties) { \ Object *fileRef = new Object(this, name, name, "PBXFileReference", "PBXFileReference", name); \ if (!properties.fileEncoding.empty()) fileRef->addProperty("fileEncoding", properties.fileEncoding, "", SettingsNoValue); \ - if (!properties.lastKnownFileType.empty()) fileRef->addProperty("lastKnownFileType", properties.lastKnownFileType, "", SettingsNoValue); \ - if (!properties.fileName.empty()) fileRef->addProperty("name", properties.fileName, "", SettingsNoValue); \ - if (!properties.filePath.empty()) fileRef->addProperty("path", properties.filePath, "", SettingsNoValue); \ + if (!properties.lastKnownFileType.empty()) fileRef->addProperty("lastKnownFileType", properties.lastKnownFileType, "", SettingsNoValue|SettingsQuoteVariable); \ + if (!properties.fileName.empty()) fileRef->addProperty("name", properties.fileName, "", SettingsNoValue|SettingsQuoteVariable); \ + if (!properties.filePath.empty()) fileRef->addProperty("path", properties.filePath, "", SettingsNoValue|SettingsQuoteVariable); \ if (!properties.sourceTree.empty()) fileRef->addProperty("sourceTree", properties.sourceTree, "", SettingsNoValue); \ _fileReference.add(fileRef); \ _fileReference.flags = SettingsSingleItem; \ -- cgit v1.2.3 From b2ff6726cd2a4cbbbd6ce9e8f9568c06f0b2bfeb Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Fri, 3 Apr 2015 05:26:36 +0200 Subject: CREATE_PROJECT: Fix Info.plist path. --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 0cc16d1f8d..428f35d4e4 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -660,7 +660,7 @@ void XCodeProvider::setupBuildConfiguration() { scummvmOSX_HeaderPaths.push_back("../../engines/"); scummvmOSX_HeaderPaths.push_back("../../"); ADD_SETTING_LIST(scummvmOSX_Debug, "HEADER_SEARCH_PATHS", scummvmOSX_HeaderPaths, SettingsNoQuote|SettingsAsList, 5); - ADD_SETTING_QUOTE(scummvmOSX_Debug, "INFOPLIST_FILE", "$(SRCROOT)/../macosx/Info.plist"); + ADD_SETTING_QUOTE(scummvmOSX_Debug, "INFOPLIST_FILE", "$(SRCROOT)/dists/macosx/Info.plist"); ValueList scummvmOSX_LibPaths; scummvmOSX_LibPaths.push_back("/sw/lib"); scummvmOSX_LibPaths.push_back("/opt/local/lib"); -- cgit v1.2.3 From d6625c20bfa27a3745b78956adbe47d20c3ff0ad Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Fri, 3 Apr 2015 05:26:52 +0200 Subject: CREATE_PROJECT: Use whatever SDK is available on OS X. --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 428f35d4e4..40ed3aaab6 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -609,7 +609,7 @@ void XCodeProvider::setupBuildConfiguration() { ADD_SETTING_QUOTE(scummvm_Debug, "OTHER_CFLAGS", ""); ADD_SETTING_QUOTE(scummvm_Debug, "OTHER_LDFLAGS", "-lz"); ADD_SETTING(scummvm_Debug, "PREBINDING", "NO"); - ADD_SETTING(scummvm_Debug, "SDKROOT", "macosx10.6"); + ADD_SETTING(scummvm_Debug, "SDKROOT", "macosx"); scummvm_Debug_Object->addProperty("name", "Debug", "", SettingsNoValue); scummvm_Debug_Object->properties["buildSettings"] = scummvm_Debug; -- cgit v1.2.3 From 9ef6e598058179e5124a75963d25e7e0936c29c4 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:17:10 +0200 Subject: CREATE_PROJECT: Make ProjectProvider able to work properly with subclasses that want to create one single project. --- devtools/create_project/create_project.cpp | 20 +++++++++++++------- devtools/create_project/create_project.h | 7 +++++++ devtools/create_project/xcode.h | 3 ++- 3 files changed, 22 insertions(+), 8 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 34d30e1d69..ffaa4274f4 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -1279,18 +1279,23 @@ void ProjectProvider::createProject(BuildSetup &setup) { for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) { if (i->first == setup.projectName) continue; - - in.clear(); ex.clear(); + // Retain the files between engines if we're creating a single project + if (createOneProjectPerEngine()) { + in.clear(); ex.clear(); + } const std::string moduleDir = setup.srcDir + targetFolder + i->first; createModuleList(moduleDir, setup.defines, setup.testDirs, in, ex); - createProjectFile(i->first, i->second, setup, moduleDir, in, ex); + if (createOneProjectPerEngine()) { + createProjectFile(i->first, i->second, setup, moduleDir, in, ex); + } } if (setup.tests) { // Create the main project file. - in.clear(); ex.clear(); - + if (createOneProjectPerEngine()) { + in.clear(); ex.clear(); + } createModuleList(setup.srcDir + "/backends", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/base", setup.defines, setup.testDirs, in, ex); @@ -1304,8 +1309,9 @@ void ProjectProvider::createProject(BuildSetup &setup) { createProjectFile(setup.projectName, svmUUID, setup, setup.srcDir, in, ex); } else if (!setup.devTools) { // Last but not least create the main project file. - in.clear(); ex.clear(); - + if (createOneProjectPerEngine()) { + in.clear(); ex.clear(); + } // File list for the Project file createModuleList(setup.srcDir + "/backends", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, setup.testDirs, in, ex); diff --git a/devtools/create_project/create_project.h b/devtools/create_project/create_project.h index 459342a67d..cea1222b4d 100644 --- a/devtools/create_project/create_project.h +++ b/devtools/create_project/create_project.h @@ -458,6 +458,13 @@ protected: */ virtual const char *getProjectExtension() { return ""; } + /** + * Returns whether the provider produces one project per engine + * allowing providers such as the XCode-project provider to disable + * the logic for this in the super-class, thus merging the engine-files + * into the main project instead. + */ + virtual bool createOneProjectPerEngine() const { return true; } /** * Adds files of the specified directory recursively to given project file. * diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index f86e7c555c..f7714e4dba 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -45,7 +45,8 @@ protected: void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix); - + // Disable multi-project creation on ProjectProvider + bool createOneProjectPerEngine() const { return false; } private: enum { SettingsAsList = 0x01, -- cgit v1.2.3 From 7e7347f877e7dd3a08c8d36b397badc6b81d9ea3 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:35:18 +0200 Subject: CREATE_PROJECT: Modify XCodeProvider to add the various folders as groups, instead of file-references, hardcoding the root as the group "CustomTemplate" This also modifies the hashes, so that subfolders get unique hashes, even if they have the same name as some other folder in the tree (i.e. there are multiple folders named "sdl" in the various subfolders of backends/platforms). --- devtools/create_project/xcode.cpp | 50 +++++++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 10 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 40ed3aaab6..c1192d3a58 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -173,11 +173,27 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p // Init root group _groups.comment = "PBXGroup"; - + + // We use only the last path component for paths, as every folder gets its own group, + // and subfolders then only need to specify their path relative to their parent folder. + std::string path = getLastPathComponent(dir.name); + std::string name = path; + // We need to use the prefix-name to make sure that the hashes become unique for folders + // that have the same name. + std::string prefixName = objPrefix; + std::string groupName; + // Special case handling for the root-node + if (indentation == 0) { // Indentation level 0 is the root + // Hard-code the name, so that we can use it as mainGroup + name = "CustomTemplate"; + // Should already be "", but lets make sure. + assert(prefixName == ""); + groupName = "PBXGroup_" + name; + } else { + groupName = "PBXGroup_" + prefixName; + } // Create group - std::string name = getLastPathComponent(dir.name); - Object *group = new Object(this, "PBXGroup_" + name , "PBXGroup", "PBXGroup", "", name); - + Object *group = new Object(this, groupName , "PBXGroup", "PBXGroup", "", name); // List of children Property children; children.hasOrder = true; @@ -185,18 +201,32 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p group->addProperty("name", name, "", SettingsNoValue|SettingsQuoteVariable); group->addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); - + // Sub-groups below the root need to have their relative path set (relative to their parent group) + if (indentation != 0) { + group->addProperty("path", path, "", SettingsNoValue|SettingsQuoteVariable); + } int order = 0; for (FileNode::NodeList::const_iterator i = dir.children.begin(); i != dir.children.end(); ++i) { const FileNode *node = *i; std::string id = "FileReference_" + node->name; FileProperty property = FileProperty(node->name, node->name, node->name, "\"\""); - - ADD_SETTING_ORDER_NOVALUE(children, getHash(node->name), node->name, order++); - ADD_BUILD_FILE(id, node->name, node->name + " in Sources"); - ADD_FILE_REFERENCE(node->name, property); - + + // If it is a folder, create a group with a hash made from the concatenated name of the node and + // all its parents, this way, the various folders with the same name (i.e. sdl a bunch of places + // in backends) gets unique hashes, instead of the same hash becoming the child of multiple groups. + if (!node->children.empty()) { + ADD_SETTING_ORDER_NOVALUE(children, getHash("PBXGroup_" + prefixName + node->name + "_"), node->name, order++); + } else { + // Otherwise, simply hash the filename, and hope that we don't get conflicts on those. (Seems to work so far) + ADD_SETTING_ORDER_NOVALUE(children, getHash(node->name), node->name, order++); + } + // Iff it is a file, then add (build) file references. Since we're using Groups and not File References + // for folders, we shouldn't add folders as file references, obviously. + if (node->children.empty()) { + ADD_BUILD_FILE(id, node->name, node->name + " in Sources"); + ADD_FILE_REFERENCE(node->name, property); + } // Process child nodes if (!node->children.empty()) writeFileListToProject(*node, projectFile, indentation + 1, duplicate, objPrefix + node->name + '_', filePrefix + node->name + '/'); -- cgit v1.2.3 From 7052823969df356b9567358d52e8012bb5459c86 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:40:20 +0200 Subject: CREATE_PROJECT: Make sure that children of PBXGroups are always listed as a list with "," after every item, even when there's only one child. This modifies the combination of SettingsAsList and SettingsSingleItem so that "," is used after the item, instead of ";", but only when they are used together. --- devtools/create_project/xcode.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index c1192d3a58..4e651072b1 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -231,7 +231,11 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p if (!node->children.empty()) writeFileListToProject(*node, projectFile, indentation + 1, duplicate, objPrefix + node->name + '_', filePrefix + node->name + '/'); } - + if (order == 1) { + // Force children to use () even when there is only 1 child. + // Also this enforces the use of "," after the single item, instead of ; (see writeProperty) + children.flags |= SettingsSingleItem; + } group->properties["children"] = children; _groups.add(group); @@ -877,7 +881,9 @@ std::string XCodeProvider::writeProperty(const std::string &variable, Property & output += writeSetting((*setting).first, (*setting).second); - if ((prop.flags & SettingsAsList) && prop.settings.size() > 1) { + // The combination of SettingsAsList, and SettingsSingleItem should use "," and not ";" (i.e children + // in PBXGroup, so we special case that case here. + if ((prop.flags & SettingsAsList) && (prop.settings.size() > 1 || (prop.flags & SettingsSingleItem))) { output += (prop.settings.size() > 0) ? ",\n" : "\n"; } else { output += ";"; -- cgit v1.2.3 From 8af5d6e72208e96930f37f6442de71a81e8019cc Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:40:50 +0200 Subject: CREATE_PROJECT: Disable the WIN32-define when creating an XCode-project. --- devtools/create_project/create_project.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index ffaa4274f4..43d3df1702 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -336,7 +336,9 @@ int main(int argc, char *argv[]) { setup.defines.splice(setup.defines.begin(), featureDefines); // Windows only has support for the SDL backend, so we hardcode it here (along with winmm) - setup.defines.push_back("WIN32"); + if (projectType != kProjectXcode) { + setup.defines.push_back("WIN32"); + } setup.defines.push_back("SDL_BACKEND"); if (!useSDL2) { cout << "\nLinking to SDL 1.2\n\n"; -- cgit v1.2.3 From f8b054621a08925f716e2468070911c9100acb0a Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:43:42 +0200 Subject: CREATE_PROJECT: Implement setupSourcesBuildPhase for XCode, basing it on setupResourcesBuildPhase. --- devtools/create_project/xcode.cpp | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 4e651072b1..590fee3af4 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -538,7 +538,36 @@ void XCodeProvider::setupResourcesBuildPhase() { } void XCodeProvider::setupSourcesBuildPhase() { - // TODO + _sourcesBuildPhase.comment = "PBXSourcesBuildPhase"; + + // Setup source file properties + std::map properties; + + // Same as for containers: a rule for each native target + for (unsigned int i = 0; i < _targets.size(); i++) { + Object *source = new Object(this, "PBXSourcesBuildPhase_" + _targets[i], "PBXSourcesBuildPhase", "PBXSourcesBuildPhase", "", "Sources"); + + source->addProperty("buildActionMask", "2147483647", "", SettingsNoValue); + + Property files; + files.hasOrder = true; + files.flags = SettingsAsList; + + int order = 0; + for (std::vector::iterator file = _buildFile.objects.begin(); file !=_buildFile.objects.end(); ++file) { + if (!producesObjectFile((*file)->name)) { + continue; + } + std::string comment = (*file)->name + " in Sources"; + ADD_SETTING_ORDER_NOVALUE(files, getHash((*file)->id), comment, order++); + } + + source->properties["files"] = files; + + source->addProperty("runOnlyForDeploymentPostprocessing", "0", "", SettingsNoValue); + + _sourcesBuildPhase.add(source); + } } // Setup all build configurations -- cgit v1.2.3 From bf919232e9424e54caade5e8d789e4a6231d8e42 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:45:18 +0200 Subject: CREATE_PROJECT: Enable XCode-project creation. --- devtools/create_project/create_project.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 43d3df1702..7b55446b57 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -20,7 +20,7 @@ * */ -//#define ENABLE_XCODE +#define ENABLE_XCODE // HACK to allow building with the SDL backend on MinGW // see bug #1800764 "TOOLS: MinGW tools building broken" -- cgit v1.2.3 From 16618acef73baa01adfb936cd7dc73d308eec67f Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sat, 4 Apr 2015 18:56:48 +0200 Subject: CREATE_PROJECT: Explicitly add /opt/include/freetype2 to header paths. --- devtools/create_project/xcode.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 590fee3af4..f86cc9da49 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -719,6 +719,7 @@ void XCodeProvider::setupBuildConfiguration() { ValueList scummvmOSX_HeaderPaths; scummvmOSX_HeaderPaths.push_back("/opt/local/include/SDL"); scummvmOSX_HeaderPaths.push_back("/opt/local/include"); + scummvmOSX_HeaderPaths.push_back("/opt/local/include/freetype2"); scummvmOSX_HeaderPaths.push_back("include/"); scummvmOSX_HeaderPaths.push_back("../../engines/"); scummvmOSX_HeaderPaths.push_back("../../"); -- cgit v1.2.3 From 8cd84a0152955c1413e3360ec4e8bd5558648187 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sun, 5 Apr 2015 01:11:29 +0200 Subject: CREATE_PROJECT: Define a group for the Frameworks, and add it to the mainGroup, so that the buildPhase can figure things out. --- devtools/create_project/xcode.cpp | 53 ++++++++++++++++++++++++++++----------- devtools/create_project/xcode.h | 1 + 2 files changed, 39 insertions(+), 15 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index f86cc9da49..8989974975 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -236,6 +236,12 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p // Also this enforces the use of "," after the single item, instead of ; (see writeProperty) children.flags |= SettingsSingleItem; } + if (indentation == 0) { + // Add any root-groups to the very bottom (Frameworks-etc) + for (std::vector::iterator it = _rootGroups.objects.begin(); it != _rootGroups.objects.end(); ++it) { + ADD_SETTING_ORDER_NOVALUE(children, getHash((*it)->id), (*it)->id, order++); + } + } group->properties["children"] = children; _groups.add(group); @@ -248,6 +254,9 @@ void XCodeProvider::setupCopyFilesBuildPhase() { // Nothing to do here } +#define DEF_SYSFRAMEWORK(framework) properties[framework".framework"] = FileProperty("wrapper.framework", framework".framework", "System/Library/Frameworks/" framework ".framework", "SDKROOT"); \ + ADD_SETTING_ORDER_NOVALUE(children, getHash(framework".framework"), framework".framework", fwOrder++); + /** * Sets up the frameworks build phase. * @@ -256,24 +265,38 @@ void XCodeProvider::setupCopyFilesBuildPhase() { void XCodeProvider::setupFrameworksBuildPhase() { _frameworksBuildPhase.comment = "PBXFrameworksBuildPhase"; + // Just use a hardcoded id for the Frameworks-group + Object *frameworksGroup = new Object(this, "PBXGroup_CustomTemplate_Frameworks_" , "PBXGroup", "PBXGroup", "", "CustomTemplate_Frameworks_"); + frameworksGroup->addProperty("name", "Frameworks", "", SettingsNoValue|SettingsQuoteVariable); + frameworksGroup->addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); + + Property children; + children.hasOrder = true; + children.flags = SettingsAsList; + // Setup framework file properties std::map properties; - + int fwOrder = 0; // Frameworks - properties["ApplicationServices.framework"] = FileProperty("wrapper.framework", "ApplicationServices.framework", "System/Library/Frameworks/ApplicationServices.framework", "SDKROOT"); - properties["AudioToolbox.framework"] = FileProperty("wrapper.framework", "AudioToolbox.framework", "System/Library/Frameworks/AudioToolbox.framework", "SDKROOT"); - properties["AudioUnit.framework"] = FileProperty("wrapper.framework", "AudioUnit.framework", "System/Library/Frameworks/AudioUnit.framework", "SDKROOT"); - properties["Carbon.framework"] = FileProperty("wrapper.framework", "Carbon.framework", "System/Library/Frameworks/Carbon.framework", "SDKROOT"); - properties["Cocoa.framework"] = FileProperty("wrapper.framework", "Cocoa.framework", "System/Library/Frameworks/Cocoa.framework", "SDKROOT"); - properties["CoreAudio.framework"] = FileProperty("wrapper.framework", "CoreAudio.framework", "System/Library/Frameworks/CoreAudio.framework", "SDKROOT"); - properties["CoreFoundation.framework"] = FileProperty("wrapper.framework", "CoreFoundation.framework", "System/Library/Frameworks/CoreFoundation.framework", "SDKROOT"); - properties["CoreMIDI.framework"] = FileProperty("wrapper.framework", "CoreMIDI.framework", "System/Library/Frameworks/CoreMIDI.framework", "SDKROOT"); - properties["Foundation.framework"] = FileProperty("wrapper.framework", "Foundation.framework", "System/Library/Frameworks/Foundation.framework", "SDKROOT"); - properties["IOKit.framework"] = FileProperty("wrapper.framework", "IOKit.framework", "System/Library/Frameworks/IOKit.framework", "SDKROOT"); - properties["OpenGLES.framework"] = FileProperty("wrapper.framework", "OpenGLES.framework", "System/Library/Frameworks/OpenGLES.framework", "SDKROOT"); - properties["QuartzCore.framework"] = FileProperty("wrapper.framework", "QuartzCore.framework", "System/Library/Frameworks/QuartzCore.framework", "SDKROOT"); - properties["QuickTime.framework"] = FileProperty("wrapper.framework", "QuickTime.framework", "System/Library/Frameworks/QuickTime.framework", "SDKROOT"); - properties["UIKit.framework"] = FileProperty("wrapper.framework", "UIKit.framework", "System/Library/Frameworks/UIKit.framework", "SDKROOT"); + DEF_SYSFRAMEWORK("ApplicationServices"); + DEF_SYSFRAMEWORK("AudioToolbox"); + DEF_SYSFRAMEWORK("AudioUnit"); + DEF_SYSFRAMEWORK("Carbon"); + DEF_SYSFRAMEWORK("Cocoa"); + DEF_SYSFRAMEWORK("CoreAudio"); + DEF_SYSFRAMEWORK("CoreFoundation"); + DEF_SYSFRAMEWORK("CoreMIDI"); + DEF_SYSFRAMEWORK("Foundation"); + DEF_SYSFRAMEWORK("IOKit"); + DEF_SYSFRAMEWORK("OpenGLES"); + DEF_SYSFRAMEWORK("QuartzCore"); + DEF_SYSFRAMEWORK("QuickTime"); + DEF_SYSFRAMEWORK("UIKit"); + + frameworksGroup->properties["children"] = children; + _groups.add(frameworksGroup); + // Force this to be added as a sub-group in the root. + _rootGroups.add(frameworksGroup); // Local libraries properties["libFLAC.a"] = FileProperty("archive.ar", "libFLAC.a", "lib/libFLAC.a", "\"\""); diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index f7714e4dba..f0b0b1e350 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -272,6 +272,7 @@ private: ObjectList _fileReference; ObjectList _frameworksBuildPhase; ObjectList _groups; + ObjectList _rootGroups; ObjectList _nativeTarget; ObjectList _project; ObjectList _resourcesBuildPhase; -- cgit v1.2.3 From 484ad4dde7a92c1c2cc4859601da94c66a940a5e Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sun, 5 Apr 2015 01:12:14 +0200 Subject: CREATE_PROJECT: Define MACOSX and POSIX in XCode-projects for now (ignoring iOS for the moment) --- devtools/create_project/create_project.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 7b55446b57..4113d6c83e 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -338,6 +338,9 @@ int main(int argc, char *argv[]) { // Windows only has support for the SDL backend, so we hardcode it here (along with winmm) if (projectType != kProjectXcode) { setup.defines.push_back("WIN32"); + } else { + setup.defines.push_back("POSIX"); + setup.defines.push_back("MACOSX"); // This will break iOS, but allows OS X to catch up on browser_osx. } setup.defines.push_back("SDL_BACKEND"); if (!useSDL2) { -- cgit v1.2.3 From 675bbde43602581b6954505ea15df8ebe6074498 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Sun, 5 Apr 2015 01:13:14 +0200 Subject: CREATE_PROJECT: Use a different producesObjectFile-function for Xcode, so that we can allow Objective-C(++) and disallow .asm --- devtools/create_project/xcode.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 8989974975..01a03d1357 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -560,6 +560,18 @@ void XCodeProvider::setupResourcesBuildPhase() { } } +bool producesObjectFileOnOSX(const std::string &fileName) { + std::string n, ext; + splitFilename(fileName, n, ext); + + // Note that the difference between this and the general producesObjectFile is that + // this one adds Objective-C(++), and removes asm-support. + if (ext == "cpp" || ext == "c" || ext == "m" || ext == "mm") + return true; + else + return false; +} + void XCodeProvider::setupSourcesBuildPhase() { _sourcesBuildPhase.comment = "PBXSourcesBuildPhase"; @@ -578,7 +590,7 @@ void XCodeProvider::setupSourcesBuildPhase() { int order = 0; for (std::vector::iterator file = _buildFile.objects.begin(); file !=_buildFile.objects.end(); ++file) { - if (!producesObjectFile((*file)->name)) { + if (!producesObjectFileOnOSX((*file)->name)) { continue; } std::string comment = (*file)->name + " in Sources"; -- cgit v1.2.3 From 219a43d7458886062b30eb1e36d8f2259f388128 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 18:30:03 +0200 Subject: CREATE_PROJECT: Revert idea about createOneProjectPerEngine. --- devtools/create_project/create_project.cpp | 17 +++++------------ devtools/create_project/create_project.h | 7 ------- devtools/create_project/xcode.h | 3 +-- 3 files changed, 6 insertions(+), 21 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 4113d6c83e..2f784529bd 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -1285,22 +1285,17 @@ void ProjectProvider::createProject(BuildSetup &setup) { if (i->first == setup.projectName) continue; // Retain the files between engines if we're creating a single project - if (createOneProjectPerEngine()) { - in.clear(); ex.clear(); - } + in.clear(); ex.clear(); + const std::string moduleDir = setup.srcDir + targetFolder + i->first; createModuleList(moduleDir, setup.defines, setup.testDirs, in, ex); - if (createOneProjectPerEngine()) { - createProjectFile(i->first, i->second, setup, moduleDir, in, ex); - } + createProjectFile(i->first, i->second, setup, moduleDir, in, ex); } if (setup.tests) { // Create the main project file. - if (createOneProjectPerEngine()) { - in.clear(); ex.clear(); - } + in.clear(); ex.clear(); createModuleList(setup.srcDir + "/backends", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/base", setup.defines, setup.testDirs, in, ex); @@ -1314,9 +1309,7 @@ void ProjectProvider::createProject(BuildSetup &setup) { createProjectFile(setup.projectName, svmUUID, setup, setup.srcDir, in, ex); } else if (!setup.devTools) { // Last but not least create the main project file. - if (createOneProjectPerEngine()) { - in.clear(); ex.clear(); - } + in.clear(); ex.clear(); // File list for the Project file createModuleList(setup.srcDir + "/backends", setup.defines, setup.testDirs, in, ex); createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, setup.testDirs, in, ex); diff --git a/devtools/create_project/create_project.h b/devtools/create_project/create_project.h index cea1222b4d..459342a67d 100644 --- a/devtools/create_project/create_project.h +++ b/devtools/create_project/create_project.h @@ -458,13 +458,6 @@ protected: */ virtual const char *getProjectExtension() { return ""; } - /** - * Returns whether the provider produces one project per engine - * allowing providers such as the XCode-project provider to disable - * the logic for this in the super-class, thus merging the engine-files - * into the main project instead. - */ - virtual bool createOneProjectPerEngine() const { return true; } /** * Adds files of the specified directory recursively to given project file. * diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index f0b0b1e350..b02cb5b75c 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -45,9 +45,8 @@ protected: void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix); - // Disable multi-project creation on ProjectProvider - bool createOneProjectPerEngine() const { return false; } private: + std::string _projectRoot; enum { SettingsAsList = 0x01, SettingsSingleItem = 0x02, -- cgit v1.2.3 From 000b80263c46287843b5859d84cfb6fcaf3363ff Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 18:39:03 +0200 Subject: CREATE_PROJECT: Add macros to disable IOS-project creation for now. --- devtools/create_project/xcode.cpp | 67 +++++++++++++++++++++++++++------------ 1 file changed, 47 insertions(+), 20 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 01a03d1357..20525af2d8 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -30,6 +30,14 @@ namespace CreateProjectTool { #define DEBUG_XCODE_HASH 0 +#ifdef ENABLE_IOS +#define IOS_TARGET 0 +#define OSX_TARGET 1 +#define SIM_TARGET 2 +#else +#define OSX_TARGET 0 +#endif + #define ADD_DEFINE(defines, name) \ defines.push_back(name); @@ -83,10 +91,13 @@ void XCodeProvider::createWorkspace(const BuildSetup &setup) { // Setup global objects setupDefines(setup); +#ifdef ENABLE_IOS _targets.push_back(PROJECT_DESCRIPTION "-iPhone"); +#endif _targets.push_back(PROJECT_DESCRIPTION "-OS X"); +#ifdef ENABLE_IOS _targets.push_back(PROJECT_DESCRIPTION "-Simulator"); - +#endif setupCopyFilesBuildPhase(); setupFrameworksBuildPhase(); setupNativeTarget(); @@ -304,9 +315,12 @@ void XCodeProvider::setupFrameworksBuildPhase() { //properties["libmpeg2.a"] = FileProperty("archive.ar", "libmpeg2.a", "lib/libmpeg2.a", "\"\""); properties["libvorbisidec.a"] = FileProperty("archive.ar", "libvorbisidec.a", "lib/libvorbisidec.a", "\"\""); + // Declare this here, as it's used across the three targets + int order = 0; +#ifdef ENABLE_IOS ////////////////////////////////////////////////////////////////////////// // iPhone - Object *framework_iPhone = new Object(this, "PBXFrameworksBuildPhase_" + _targets[0], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); + Object *framework_iPhone = new Object(this, "PBXFrameworksBuildPhase_" + _targets[IOS_TARGET], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); framework_iPhone->addProperty("buildActionMask", "2147483647", "", SettingsNoValue); framework_iPhone->addProperty("runOnlyForDeploymentPostprocessing", "0", "", SettingsNoValue); @@ -329,7 +343,6 @@ void XCodeProvider::setupFrameworksBuildPhase() { frameworks_iPhone.push_back("libvorbisidec.a"); frameworks_iPhone.push_back("OpenGLES.framework"); - int order = 0; for (ValueList::iterator framework = frameworks_iPhone.begin(); framework != frameworks_iPhone.end(); framework++) { std::string id = "Frameworks_" + *framework + "_iphone"; std::string comment = *framework + " in Frameworks"; @@ -342,10 +355,10 @@ void XCodeProvider::setupFrameworksBuildPhase() { framework_iPhone->properties["files"] = iPhone_files; _frameworksBuildPhase.add(framework_iPhone); - +#endif ////////////////////////////////////////////////////////////////////////// // ScummVM-OS X - Object *framework_OSX = new Object(this, "PBXFrameworksBuildPhase_" + _targets[1], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); + Object *framework_OSX = new Object(this, "PBXFrameworksBuildPhase_" + _targets[OSX_TARGET], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); framework_OSX->addProperty("buildActionMask", "2147483647", "", SettingsNoValue); framework_OSX->addProperty("runOnlyForDeploymentPostprocessing", "0", "", SettingsNoValue); @@ -382,10 +395,10 @@ void XCodeProvider::setupFrameworksBuildPhase() { framework_OSX->properties["files"] = osx_files; _frameworksBuildPhase.add(framework_OSX); - +#ifdef ENABLE_IOS ////////////////////////////////////////////////////////////////////////// // Simulator - Object *framework_simulator = new Object(this, "PBXFrameworksBuildPhase_" + _targets[2], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); + Object *framework_simulator = new Object(this, "PBXFrameworksBuildPhase_" + _targets[SIM_TARGET], "PBXFrameworksBuildPhase", "PBXFrameworksBuildPhase", "", "Frameworks"); framework_simulator->addProperty("buildActionMask", "2147483647", "", SettingsNoValue); framework_simulator->addProperty("runOnlyForDeploymentPostprocessing", "0", "", SettingsNoValue); @@ -417,6 +430,7 @@ void XCodeProvider::setupFrameworksBuildPhase() { framework_simulator->properties["files"] = simulator_files; _frameworksBuildPhase.add(framework_simulator); +#endif } void XCodeProvider::setupNativeTarget() { @@ -424,6 +438,11 @@ void XCodeProvider::setupNativeTarget() { // Output native target section for (unsigned int i = 0; i < _targets.size(); i++) { +#ifndef ENABLE_IOS + if (i != OSX_TARGET) { // TODO: Fix iOS-targets, for now just disable them. + continue; + } +#endif Object *target = new Object(this, "PBXNativeTarget_" + _targets[i], "PBXNativeTarget", "PBXNativeTarget", "", _targets[i]); target->addProperty("buildConfigurationList", getHash("XCConfigurationList_" + _targets[i]), "Build configuration list for PBXNativeTarget \"" + _targets[i] + "\"", SettingsNoValue); @@ -475,10 +494,18 @@ void XCodeProvider::setupProject() { // List of targets Property targets; targets.flags = SettingsAsList; - targets.settings[getHash("PBXNativeTarget_" + _targets[0])] = Setting("", _targets[0], SettingsNoValue, 0, 0); - targets.settings[getHash("PBXNativeTarget_" + _targets[1])] = Setting("", _targets[1], SettingsNoValue, 0, 1); - targets.settings[getHash("PBXNativeTarget_" + _targets[2])] = Setting("", _targets[2], SettingsNoValue, 0, 2); +#ifdef ENABLE_IOS + targets.settings[getHash("PBXNativeTarget_" + _targets[IOS_TARGET])] = Setting("", _targets[IOS_TARGET], SettingsNoValue, 0, 0); +#endif + targets.settings[getHash("PBXNativeTarget_" + _targets[OSX_TARGET])] = Setting("", _targets[OSX_TARGET], SettingsNoValue, 0, 1); +#ifdef ENABLE_IOS + targets.settings[getHash("PBXNativeTarget_" + _targets[SIM_TARGET])] = Setting("", _targets[SIM_TARGET], SettingsNoValue, 0, 2); +#endif project->properties["targets"] = targets; +#ifndef ENABLE_IOS + // Force list even when there is only a single target + project->properties["targets"].flags |= SettingsSingleItem; +#endif _project.add(project); } @@ -614,9 +641,9 @@ void XCodeProvider::setupBuildConfiguration() { ///**************************************** // * iPhone // ****************************************/ - +#ifdef ENABLE_IOS // Debug - Object *iPhone_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-iPhone_Debug", _targets[0] /* ScummVM-iPhone */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); + Object *iPhone_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-iPhone_Debug", _targets[IOS_TARGET] /* ScummVM-iPhone */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); Property iPhone_Debug; ADD_SETTING_QUOTE(iPhone_Debug, "ARCHS", "$(ARCHS_UNIVERSAL_IPHONE_OS)"); ADD_SETTING_QUOTE(iPhone_Debug, "CODE_SIGN_IDENTITY", "iPhone Developer"); @@ -658,7 +685,7 @@ void XCodeProvider::setupBuildConfiguration() { iPhone_Debug_Object->properties["buildSettings"] = iPhone_Debug; // Release - Object *iPhone_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-iPhone_Release", _targets[0] /* ScummVM-iPhone */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); + Object *iPhone_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-iPhone_Release", _targets[IOS_TARGET] /* ScummVM-iPhone */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); Property iPhone_Release(iPhone_Debug); ADD_SETTING(iPhone_Release, "GCC_OPTIMIZATION_LEVEL", "3"); ADD_SETTING(iPhone_Release, "COPY_PHASE_STRIP", "YES"); @@ -670,7 +697,7 @@ void XCodeProvider::setupBuildConfiguration() { _buildConfiguration.add(iPhone_Debug_Object); _buildConfiguration.add(iPhone_Release_Object); - +#endif /**************************************** * scummvm ****************************************/ @@ -731,7 +758,7 @@ void XCodeProvider::setupBuildConfiguration() { ****************************************/ // Debug - Object *scummvmOSX_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-OSX_Debug", _targets[1] /* ScummVM-OS X */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); + Object *scummvmOSX_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-OSX_Debug", _targets[OSX_TARGET] /* ScummVM-OS X */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); Property scummvmOSX_Debug; ADD_SETTING_QUOTE(scummvmOSX_Debug, "ARCHS", "$(NATIVE_ARCH)"); ADD_SETTING(scummvmOSX_Debug, "COMPRESS_PNG_FILES", "NO"); @@ -784,7 +811,7 @@ void XCodeProvider::setupBuildConfiguration() { scummvmOSX_Debug_Object->properties["buildSettings"] = scummvmOSX_Debug; // Release - Object *scummvmOSX_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-OSX_Release", _targets[1] /* ScummVM-OS X */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); + Object *scummvmOSX_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-OSX_Release", _targets[OSX_TARGET] /* ScummVM-OS X */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); Property scummvmOSX_Release(scummvmOSX_Debug); ADD_SETTING(scummvmOSX_Release, "COPY_PHASE_STRIP", "YES"); REMOVE_SETTING(scummvmOSX_Release, "GCC_DYNAMIC_NO_PIC"); @@ -796,13 +823,13 @@ void XCodeProvider::setupBuildConfiguration() { _buildConfiguration.add(scummvmOSX_Debug_Object); _buildConfiguration.add(scummvmOSX_Release_Object); - +#ifdef ENABLE_IOS /**************************************** * ScummVM-Simulator ****************************************/ // Debug - Object *scummvmSimulator_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-Simulator_Debug", _targets[2] /* ScummVM-Simulator */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); + Object *scummvmSimulator_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-Simulator_Debug", _targets[SIM_TARGET] /* ScummVM-Simulator */, "XCBuildConfiguration", "PBXNativeTarget", "Debug"); Property scummvmSimulator_Debug(iPhone_Debug); ADD_SETTING_QUOTE(scummvmSimulator_Debug, "FRAMEWORK_SEARCH_PATHS", "$(inherited)"); ADD_SETTING_LIST(scummvmSimulator_Debug, "GCC_PREPROCESSOR_DEFINITIONS", scummvm_defines, SettingsNoQuote|SettingsAsList, 5); @@ -814,7 +841,7 @@ void XCodeProvider::setupBuildConfiguration() { scummvmSimulator_Debug_Object->properties["buildSettings"] = scummvmSimulator_Debug; // Release - Object *scummvmSimulator_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-Simulator_Release", _targets[2] /* ScummVM-Simulator */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); + Object *scummvmSimulator_Release_Object = new Object(this, "XCBuildConfiguration_" PROJECT_DESCRIPTION "-Simulator_Release", _targets[SIM_TARGET] /* ScummVM-Simulator */, "XCBuildConfiguration", "PBXNativeTarget", "Release"); Property scummvmSimulator_Release(scummvmSimulator_Debug); ADD_SETTING(scummvmSimulator_Release, "COPY_PHASE_STRIP", "YES"); ADD_SETTING(scummvmSimulator_Release, "GCC_OPTIMIZATION_LEVEL", "3"); @@ -831,7 +858,7 @@ void XCodeProvider::setupBuildConfiguration() { // Configuration List _configurationList.comment = "XCConfigurationList"; _configurationList.flags = SettingsAsList; - +#endif // Warning: This assumes we have all configurations with a Debug & Release pair for (std::vector::iterator config = _buildConfiguration.objects.begin(); config != _buildConfiguration.objects.end(); config++) { -- cgit v1.2.3 From 790f7dc0178b05a519b9e353e8e6d542ae6d9cf9 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:19:20 +0200 Subject: CREATE_PROJECT: Introduce a subclass of Object to manage group-creation. This rewrites the way groups are created, so that the root source folder has groups created for any subfolder that is used, which allows for merging in the engines/-subfolder automatically. --- devtools/create_project/xcode.cpp | 206 +++++++++++++++++++++++--------------- devtools/create_project/xcode.h | 35 ++++++- 2 files changed, 157 insertions(+), 84 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 20525af2d8..ab94bdc05f 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -80,15 +80,135 @@ namespace CreateProjectTool { _fileReference.flags = SettingsSingleItem; \ } +bool producesObjectFileOnOSX(const std::string &fileName) { + std::string n, ext; + splitFilename(fileName, n, ext); + + // Note that the difference between this and the general producesObjectFile is that + // this one adds Objective-C(++), and removes asm-support. + if (ext == "cpp" || ext == "c" || ext == "m" || ext == "mm") + return true; + else + return false; +} + +XCodeProvider::Group::Group(XCodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path) : Object(objectParent, uniqueName, groupName, "PBXGroup", "", groupName) { + addProperty("name", name, "", SettingsNoValue|SettingsQuoteVariable); + addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); + + if (path != "") { + addProperty("path", path, "", SettingsNoValue|SettingsQuoteVariable); + } + _childOrder = 0; + _treeName = uniqueName; +} + +void XCodeProvider::Group::ensureChildExists(const std::string &name) { + std::map::iterator it = _childGroups.find(name); + if (it == _childGroups.end()) { + Group *child = new Group(parent, name, this->_treeName + '/' + name, name); + _childGroups[name] = child; + addChildGroup(child); + parent->_groups.add(child); + } +} + +void XCodeProvider::Group::addChildInternal(const std::string &id, const std::string &comment) { + if (properties.find("children") == properties.end()) { + Property children; + children.hasOrder = true; + children.flags = SettingsAsList; + properties["children"] = children; + } + properties["children"].settings[id] = Setting("", comment + " in Sources", SettingsNoValue, 0, _childOrder++); + if (_childOrder == 1) { + // Force children to use () even when there is only 1 child. + // Also this enforces the use of "," after the single item, instead of ; (see writeProperty) + properties["children"].flags |= SettingsSingleItem; + } else { + properties["children"].flags ^= SettingsSingleItem; + } + +} + +void XCodeProvider::Group::addChildGroup(const Group* group) { + addChildInternal(parent->getHash(group->_treeName), group->_treeName); +} + +void XCodeProvider::Group::addChildFile(const std::string &name) { + std::string id = "FileReference_" + _treeName + "/" + name; + addChildInternal(parent->getHash(id), name); + FileProperty property = FileProperty(name, name, name, "\"\""); + + parent->addFileReference(id, name, property); + if (producesObjectFileOnOSX(name)) { + parent->addBuildFile(_treeName + "/" + name, name, parent->getHash(id), name + " in Sources"); + } +} + +void XCodeProvider::Group::addChildByHash(const std::string &hash, const std::string &name) { + addChildInternal(hash, name); +} + +XCodeProvider::Group *XCodeProvider::Group::getChildGroup(const std::string &name) { + std::map::iterator it = _childGroups.find(name); + assert(it != _childGroups.end()); + return it->second; +} + +XCodeProvider::Group *XCodeProvider::touchGroupsForPath(const std::string &path) { + if (_rootSourceGroup == nullptr) { + assert (path == _projectRoot); + _rootSourceGroup = new Group(this, "Sources", path, path); + _groups.add(_rootSourceGroup); + return _rootSourceGroup; + } else { + assert(path.find(_projectRoot) == 0); + std::string subPath = path.substr(_projectRoot.size() + 1); + Group *currentGroup = _rootSourceGroup; + size_t firstPathComponent = subPath.find_first_of('/'); + // We assume here that all paths have trailing '/', otherwise this breaks. + while (firstPathComponent != std::string::npos) { + currentGroup->ensureChildExists(subPath.substr(0, firstPathComponent)); + currentGroup = currentGroup->getChildGroup(subPath.substr(0, firstPathComponent)); + subPath = subPath.substr(firstPathComponent + 1); + firstPathComponent = subPath.find_first_of('/'); + } + return currentGroup; + } +} + +void XCodeProvider::addFileReference(const std::string &id, const std::string &name, FileProperty properties) { + Object *fileRef = new Object(this, id, name, "PBXFileReference", "PBXFileReference", name); + if (!properties.fileEncoding.empty()) fileRef->addProperty("fileEncoding", properties.fileEncoding, "", SettingsNoValue); + if (!properties.lastKnownFileType.empty()) fileRef->addProperty("lastKnownFileType", properties.lastKnownFileType, "", SettingsNoValue|SettingsQuoteVariable); + if (!properties.fileName.empty()) fileRef->addProperty("name", properties.fileName, "", SettingsNoValue|SettingsQuoteVariable); + if (!properties.filePath.empty()) fileRef->addProperty("path", properties.filePath, "", SettingsNoValue|SettingsQuoteVariable); + if (!properties.sourceTree.empty()) fileRef->addProperty("sourceTree", properties.sourceTree, "", SettingsNoValue); + _fileReference.add(fileRef); + _fileReference.flags = SettingsSingleItem; +} + +void XCodeProvider::addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment) { + + Object *buildFile = new Object(this, id, name, "PBXBuildFile", "PBXBuildFile", comment); + buildFile->addProperty("fileRef", fileRefId, name, SettingsNoValue); + _buildFile.add(buildFile); + _buildFile.flags = SettingsSingleItem; +} + XCodeProvider::XCodeProvider(StringList &global_warnings, std::map &project_warnings, const int version) : ProjectProvider(global_warnings, project_warnings, version) { + _rootSourceGroup = NULL; } void XCodeProvider::createWorkspace(const BuildSetup &setup) { // Create project folder std::string workspace = setup.outputDir + '/' + PROJECT_NAME ".xcodeproj"; createDirectory(workspace); - + _projectRoot = setup.srcDir; + touchGroupsForPath(_projectRoot); + // Setup global objects setupDefines(setup); #ifdef ENABLE_IOS @@ -178,84 +298,20 @@ void XCodeProvider::ouputMainProjectFile(const BuildSetup &setup) { void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix) { - // Add comments for shared lists - _buildFile.comment = "PBXBuildFile"; - _fileReference.comment = "PBXFileReference"; - - // Init root group - _groups.comment = "PBXGroup"; - - // We use only the last path component for paths, as every folder gets its own group, - // and subfolders then only need to specify their path relative to their parent folder. - std::string path = getLastPathComponent(dir.name); - std::string name = path; - // We need to use the prefix-name to make sure that the hashes become unique for folders - // that have the same name. - std::string prefixName = objPrefix; - std::string groupName; - // Special case handling for the root-node - if (indentation == 0) { // Indentation level 0 is the root - // Hard-code the name, so that we can use it as mainGroup - name = "CustomTemplate"; - // Should already be "", but lets make sure. - assert(prefixName == ""); - groupName = "PBXGroup_" + name; - } else { - groupName = "PBXGroup_" + prefixName; - } - // Create group - Object *group = new Object(this, groupName , "PBXGroup", "PBXGroup", "", name); - // List of children - Property children; - children.hasOrder = true; - children.flags = SettingsAsList; - - group->addProperty("name", name, "", SettingsNoValue|SettingsQuoteVariable); - group->addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); - // Sub-groups below the root need to have their relative path set (relative to their parent group) - if (indentation != 0) { - group->addProperty("path", path, "", SettingsNoValue|SettingsQuoteVariable); - } - int order = 0; + // Ensure that top-level groups are generated for i.e. engines/ + Group *group = touchGroupsForPath(filePrefix); for (FileNode::NodeList::const_iterator i = dir.children.begin(); i != dir.children.end(); ++i) { const FileNode *node = *i; - std::string id = "FileReference_" + node->name; - FileProperty property = FileProperty(node->name, node->name, node->name, "\"\""); - - // If it is a folder, create a group with a hash made from the concatenated name of the node and - // all its parents, this way, the various folders with the same name (i.e. sdl a bunch of places - // in backends) gets unique hashes, instead of the same hash becoming the child of multiple groups. - if (!node->children.empty()) { - ADD_SETTING_ORDER_NOVALUE(children, getHash("PBXGroup_" + prefixName + node->name + "_"), node->name, order++); - } else { - // Otherwise, simply hash the filename, and hope that we don't get conflicts on those. (Seems to work so far) - ADD_SETTING_ORDER_NOVALUE(children, getHash(node->name), node->name, order++); - } // Iff it is a file, then add (build) file references. Since we're using Groups and not File References // for folders, we shouldn't add folders as file references, obviously. if (node->children.empty()) { - ADD_BUILD_FILE(id, node->name, node->name + " in Sources"); - ADD_FILE_REFERENCE(node->name, property); + group->addChildFile(node->name); } // Process child nodes if (!node->children.empty()) writeFileListToProject(*node, projectFile, indentation + 1, duplicate, objPrefix + node->name + '_', filePrefix + node->name + '/'); } - if (order == 1) { - // Force children to use () even when there is only 1 child. - // Also this enforces the use of "," after the single item, instead of ; (see writeProperty) - children.flags |= SettingsSingleItem; - } - if (indentation == 0) { - // Add any root-groups to the very bottom (Frameworks-etc) - for (std::vector::iterator it = _rootGroups.objects.begin(); it != _rootGroups.objects.end(); ++it) { - ADD_SETTING_ORDER_NOVALUE(children, getHash((*it)->id), (*it)->id, order++); - } - } - group->properties["children"] = children; - - _groups.add(group); } ////////////////////////////////////////////////////////////////////////// @@ -487,7 +543,7 @@ void XCodeProvider::setupProject() { ADD_SETTING_ORDER_NOVALUE(regions, "German", "", 3); project->properties["knownRegions"] = regions; - project->addProperty("mainGroup", getHash("PBXGroup_CustomTemplate"), "CustomTemplate", SettingsNoValue); + project->addProperty("mainGroup", _rootSourceGroup->getHashRef(), "CustomTemplate", SettingsNoValue); project->addProperty("projectDirPath", "", "", SettingsNoValue|SettingsQuoteVariable); project->addProperty("projectRoot", "", "", SettingsNoValue|SettingsQuoteVariable); @@ -587,18 +643,6 @@ void XCodeProvider::setupResourcesBuildPhase() { } } -bool producesObjectFileOnOSX(const std::string &fileName) { - std::string n, ext; - splitFilename(fileName, n, ext); - - // Note that the difference between this and the general producesObjectFile is that - // this one adds Objective-C(++), and removes asm-support. - if (ext == "cpp" || ext == "c" || ext == "m" || ext == "mm") - return true; - else - return false; -} - void XCodeProvider::setupSourcesBuildPhase() { _sourcesBuildPhase.comment = "PBXSourcesBuildPhase"; diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index b02cb5b75c..792fa06d8b 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -46,7 +46,6 @@ protected: void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix); private: - std::string _projectRoot; enum { SettingsAsList = 0x01, SettingsSingleItem = 0x02, @@ -210,9 +209,10 @@ private: return output; } - private: + // Slight hack, to allow Group access to parent. + protected: XCodeProvider *parent; - + private: // Returns the type property (should always be the first in the properties map) std::string getType() { assert(!properties.empty()); @@ -258,6 +258,35 @@ private: } }; + // A class to maintain a folder-reference group-hierarchy, which together with the functionality below + // allows for breaking up sub-paths into a chain of groups. This helps with merging engines into the + // overall group-layout. + class Group : public Object { + int _childOrder; + std::map _childGroups; + std::string _treeName; + void addChildInternal(const std::string &id, const std::string &comment); + public: + Group(XCodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path); + void addChildFile(const std::string &name); + void addChildByHash(const std::string &hash, const std::string &name); + // Should be passed the hash for the entry + void addChildGroup(const Group* group); + void ensureChildExists(const std::string &name); + Group *getChildGroup(const std::string &name); + std::string getHashRef() const { return parent->getHash(id); } + }; + + // The path used by the root-source group + std::string _projectRoot; + // The base source group, currently also re-purposed for containing the various support-groups. + Group *_rootSourceGroup; + // Helper function to create the chain of groups for the various subfolders. Necessary as + // create_project likes to start in engines/ + Group *touchGroupsForPath(const std::string &path); + // Functionality for adding file-refs and build-files, as Group-objects need to be able to do this. + void addFileReference(const std::string &id, const std::string &name, FileProperty properties); + void addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment); // All objects std::map _hashDictionnary; ValueList _defines; -- cgit v1.2.3 From 1f13d42c6b4981e26df5342e2804f3bcdf70ad73 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:24:27 +0200 Subject: CREATE_PROJECT: Refactor the Framework and library adding for XCode, and add the relevant Frameworks to a group. --- devtools/create_project/xcode.cpp | 47 ++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 20 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index ab94bdc05f..4628cf9de9 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -62,15 +62,15 @@ namespace CreateProjectTool { #define REMOVE_SETTING(config, key) \ config.settings.erase(key); -#define ADD_BUILD_FILE(id, name, comment) { \ +#define ADD_BUILD_FILE(id, name, fileRefId, comment) { \ Object *buildFile = new Object(this, id, name, "PBXBuildFile", "PBXBuildFile", comment); \ - buildFile->addProperty("fileRef", getHash(name), name, SettingsNoValue); \ + buildFile->addProperty("fileRef", fileRefId, name, SettingsNoValue); \ _buildFile.add(buildFile); \ _buildFile.flags = SettingsSingleItem; \ } -#define ADD_FILE_REFERENCE(name, properties) { \ - Object *fileRef = new Object(this, name, name, "PBXFileReference", "PBXFileReference", name); \ +#define ADD_FILE_REFERENCE(id, name, properties) { \ + Object *fileRef = new Object(this, id, name, "PBXFileReference", "PBXFileReference", name); \ if (!properties.fileEncoding.empty()) fileRef->addProperty("fileEncoding", properties.fileEncoding, "", SettingsNoValue); \ if (!properties.lastKnownFileType.empty()) fileRef->addProperty("lastKnownFileType", properties.lastKnownFileType, "", SettingsNoValue|SettingsQuoteVariable); \ if (!properties.fileName.empty()) fileRef->addProperty("name", properties.fileName, "", SettingsNoValue|SettingsQuoteVariable); \ @@ -324,6 +324,9 @@ void XCodeProvider::setupCopyFilesBuildPhase() { #define DEF_SYSFRAMEWORK(framework) properties[framework".framework"] = FileProperty("wrapper.framework", framework".framework", "System/Library/Frameworks/" framework ".framework", "SDKROOT"); \ ADD_SETTING_ORDER_NOVALUE(children, getHash(framework".framework"), framework".framework", fwOrder++); +#define DEF_LOCALLIB_STATIC(lib) properties[lib".a"] = FileProperty("archive.ar", lib".a", "/opt/local/lib/" lib ".a", "\"\""); \ + ADD_SETTING_ORDER_NOVALUE(children, getHash(lib".a"), lib".a", fwOrder++); + /** * Sets up the frameworks build phase. * @@ -333,9 +336,7 @@ void XCodeProvider::setupFrameworksBuildPhase() { _frameworksBuildPhase.comment = "PBXFrameworksBuildPhase"; // Just use a hardcoded id for the Frameworks-group - Object *frameworksGroup = new Object(this, "PBXGroup_CustomTemplate_Frameworks_" , "PBXGroup", "PBXGroup", "", "CustomTemplate_Frameworks_"); - frameworksGroup->addProperty("name", "Frameworks", "", SettingsNoValue|SettingsQuoteVariable); - frameworksGroup->addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); + Group *frameworksGroup = new Group(this, "Frameworks", "PBXGroup_CustomTemplate_Frameworks_", ""); Property children; children.hasOrder = true; @@ -359,17 +360,21 @@ void XCodeProvider::setupFrameworksBuildPhase() { DEF_SYSFRAMEWORK("QuartzCore"); DEF_SYSFRAMEWORK("QuickTime"); DEF_SYSFRAMEWORK("UIKit"); + // Optionals: + DEF_SYSFRAMEWORK("OpenGL"); + + // Local libraries + DEF_LOCALLIB_STATIC("libFLAC"); + DEF_LOCALLIB_STATIC("libmad"); + DEF_LOCALLIB_STATIC("libvorbisidec"); + DEF_LOCALLIB_STATIC("libfreetype"); +// DEF_LOCALLIB_STATIC("libmpeg2"); frameworksGroup->properties["children"] = children; _groups.add(frameworksGroup); // Force this to be added as a sub-group in the root. - _rootGroups.add(frameworksGroup); + _rootSourceGroup->addChildGroup(frameworksGroup); - // Local libraries - properties["libFLAC.a"] = FileProperty("archive.ar", "libFLAC.a", "lib/libFLAC.a", "\"\""); - properties["libmad.a"] = FileProperty("archive.ar", "libmad.a", "lib/libmad.a", "\"\""); - //properties["libmpeg2.a"] = FileProperty("archive.ar", "libmpeg2.a", "lib/libmpeg2.a", "\"\""); - properties["libvorbisidec.a"] = FileProperty("archive.ar", "libvorbisidec.a", "lib/libvorbisidec.a", "\"\""); // Declare this here, as it's used across the three targets int order = 0; @@ -404,8 +409,8 @@ void XCodeProvider::setupFrameworksBuildPhase() { std::string comment = *framework + " in Frameworks"; ADD_SETTING_ORDER_NOVALUE(iPhone_files, getHash(id), comment, order++); - ADD_BUILD_FILE(id, *framework, comment); - ADD_FILE_REFERENCE(*framework, properties[*framework]); + ADD_BUILD_FILE(id, *framework, getHash(*framework), comment); + ADD_FILE_REFERENCE(*framework, *framework, properties[*framework]); } framework_iPhone->properties["files"] = iPhone_files; @@ -437,6 +442,8 @@ void XCodeProvider::setupFrameworksBuildPhase() { frameworks_osx.push_back("IOKit.framework"); frameworks_osx.push_back("Cocoa.framework"); frameworks_osx.push_back("AudioUnit.framework"); + // Optionals: + frameworks_osx.push_back("OpenGL.framework"); order = 0; for (ValueList::iterator framework = frameworks_osx.begin(); framework != frameworks_osx.end(); framework++) { @@ -444,8 +451,8 @@ void XCodeProvider::setupFrameworksBuildPhase() { std::string comment = *framework + " in Frameworks"; ADD_SETTING_ORDER_NOVALUE(osx_files, getHash(id), comment, order++); - ADD_BUILD_FILE(id, *framework, comment); - ADD_FILE_REFERENCE(*framework, properties[*framework]); + ADD_BUILD_FILE(id, *framework, getHash(*framework), comment); + ADD_FILE_REFERENCE(*framework, *framework, properties[*framework]); } framework_OSX->properties["files"] = osx_files; @@ -479,8 +486,8 @@ void XCodeProvider::setupFrameworksBuildPhase() { std::string comment = *framework + " in Frameworks"; ADD_SETTING_ORDER_NOVALUE(simulator_files, getHash(id), comment, order++); - ADD_BUILD_FILE(id, *framework, comment); - ADD_FILE_REFERENCE(*framework, properties[*framework]); + ADD_BUILD_FILE(id, *framework, getHash(*framework), comment); + ADD_FILE_REFERENCE(*framework, *framework, properties[*framework]); } framework_simulator->properties["files"] = simulator_files; @@ -623,7 +630,7 @@ void XCodeProvider::setupResourcesBuildPhase() { ADD_SETTING_ORDER_NOVALUE(files, getHash(id), comment, order++); // TODO Fix crash when adding build file for data //ADD_BUILD_FILE(id, *file, comment); - ADD_FILE_REFERENCE(*file, properties[*file]); + ADD_FILE_REFERENCE(*file, *file, properties[*file]); } // Add custom files depending on the target -- cgit v1.2.3 From f4a9f2035b3c67051772be76d6b16cbd2a5daea5 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:25:57 +0200 Subject: CREATE_PROJECT: Add the product files to a group in XCode aswell (makes things easier when configuring build-schemes) --- devtools/create_project/xcode.cpp | 16 ++++++++++++++++ devtools/create_project/xcode.h | 1 + 2 files changed, 17 insertions(+) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 4628cf9de9..ef156830e1 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -189,6 +189,16 @@ void XCodeProvider::addFileReference(const std::string &id, const std::string &n _fileReference.flags = SettingsSingleItem; } +void XCodeProvider::addProductFileReference(const std::string &id, const std::string &name) { + Object *fileRef = new Object(this, id, name, "PBXFileReference", "PBXFileReference", name); + fileRef->addProperty("explicitFileType", "compiled.mach-o.executable", "", SettingsNoValue|SettingsQuoteVariable); + fileRef->addProperty("includeInIndex", "0", "", SettingsNoValue); + fileRef->addProperty("path", name, "", SettingsNoValue|SettingsQuoteVariable); + fileRef->addProperty("sourceTree", "BUILT_PRODUCTS_DIR", "", SettingsNoValue); + _fileReference.add(fileRef); + _fileReference.flags = SettingsSingleItem; +} + void XCodeProvider::addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment) { Object *buildFile = new Object(this, id, name, "PBXBuildFile", "PBXBuildFile", comment); @@ -499,6 +509,8 @@ void XCodeProvider::setupFrameworksBuildPhase() { void XCodeProvider::setupNativeTarget() { _nativeTarget.comment = "PBXNativeTarget"; + // Just use a hardcoded id for the Products-group + Group *productsGroup = new Group(this, "Products", "PBXGroup_CustomTemplate_Products_" , ""); // Output native target section for (unsigned int i = 0; i < _targets.size(); i++) { #ifndef ENABLE_IOS @@ -524,11 +536,15 @@ void XCodeProvider::setupNativeTarget() { target->addProperty("name", _targets[i], "", SettingsNoValue|SettingsQuoteVariable); target->addProperty("productName", PROJECT_NAME, "", SettingsNoValue); + addProductFileReference("PBXFileReference_" PROJECT_DESCRIPTION ".app_" + _targets[i], PROJECT_DESCRIPTION ".app"); + productsGroup->addChildByHash(getHash("PBXFileReference_" PROJECT_DESCRIPTION ".app_" + _targets[i]), PROJECT_DESCRIPTION ".app"); target->addProperty("productReference", getHash("PBXFileReference_" PROJECT_DESCRIPTION ".app_" + _targets[i]), PROJECT_DESCRIPTION ".app", SettingsNoValue); target->addProperty("productType", "com.apple.product-type.application", "", SettingsNoValue|SettingsQuoteVariable); _nativeTarget.add(target); } + _rootSourceGroup->addChildGroup(productsGroup); + _groups.add(productsGroup); } void XCodeProvider::setupProject() { diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index 792fa06d8b..7b16bd2dd1 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -286,6 +286,7 @@ private: Group *touchGroupsForPath(const std::string &path); // Functionality for adding file-refs and build-files, as Group-objects need to be able to do this. void addFileReference(const std::string &id, const std::string &name, FileProperty properties); + void addProductFileReference(const std::string &id, const std::string &name); void addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment); // All objects std::map _hashDictionnary; -- cgit v1.2.3 From 0801a553bdf7df3c1c1c116b5c8917b8e3d63610 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:27:01 +0200 Subject: CREATE_PROJECT: Enable RTTI in XCode-projects. --- devtools/create_project/xcode.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index ef156830e1..082fefacde 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -779,7 +779,7 @@ void XCodeProvider::setupBuildConfiguration() { ADD_SETTING_QUOTE(scummvm_Debug, "FRAMEWORK_SEARCH_PATHS", ""); ADD_SETTING(scummvm_Debug, "GCC_C_LANGUAGE_STANDARD", "c99"); ADD_SETTING(scummvm_Debug, "GCC_ENABLE_CPP_EXCEPTIONS", "NO"); - ADD_SETTING(scummvm_Debug, "GCC_ENABLE_CPP_RTTI", "NO"); + ADD_SETTING(scummvm_Debug, "GCC_ENABLE_CPP_RTTI", "YES"); ADD_SETTING(scummvm_Debug, "GCC_INPUT_FILETYPE", "automatic"); ADD_SETTING(scummvm_Debug, "GCC_OPTIMIZATION_LEVEL", "0"); ValueList scummvm_defines(_defines); @@ -834,7 +834,7 @@ void XCodeProvider::setupBuildConfiguration() { ADD_SETTING_QUOTE(scummvmOSX_Debug, "FRAMEWORK_SEARCH_PATHS", ""); ADD_SETTING(scummvmOSX_Debug, "GCC_C_LANGUAGE_STANDARD", "c99"); ADD_SETTING(scummvmOSX_Debug, "GCC_ENABLE_CPP_EXCEPTIONS", "NO"); - ADD_SETTING(scummvmOSX_Debug, "GCC_ENABLE_CPP_RTTI", "NO"); + ADD_SETTING(scummvmOSX_Debug, "GCC_ENABLE_CPP_RTTI", "YES"); ADD_SETTING(scummvmOSX_Debug, "GCC_DYNAMIC_NO_PIC", "NO"); ADD_SETTING(scummvmOSX_Debug, "GCC_ENABLE_FIX_AND_CONTINUE", "NO"); ADD_SETTING(scummvmOSX_Debug, "GCC_OPTIMIZATION_LEVEL", "0"); -- cgit v1.2.3 From 24f9c95ee958724a4d59efc4a39c1dcdbe5560de Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:27:24 +0200 Subject: CREATE_PROJECT: Link against libpng and libfreetype in XCode-projects. --- devtools/create_project/xcode.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 082fefacde..c9f0448aea 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -864,6 +864,8 @@ void XCodeProvider::setupBuildConfiguration() { ValueList scummvmOSX_LdFlags; scummvmOSX_LdFlags.push_back("-lSDLmain"); scummvmOSX_LdFlags.push_back("-logg"); + scummvmOSX_LdFlags.push_back("-lpng"); + scummvmOSX_LdFlags.push_back("-lfreetype"); scummvmOSX_LdFlags.push_back("-lvorbisfile"); scummvmOSX_LdFlags.push_back("-lvorbis"); scummvmOSX_LdFlags.push_back("-lmad"); -- cgit v1.2.3 From ff802b8eae3c9c378279e8596ca25d59c586818a Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:45:47 +0200 Subject: CREATE_PROJECT: Add SRCROOT and SRCROOT/engines to USER_HEADER_SEARCH_PATHS for XCode. --- devtools/create_project/xcode.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index c9f0448aea..1406f2d766 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -773,6 +773,7 @@ void XCodeProvider::setupBuildConfiguration() { Object *scummvm_Debug_Object = new Object(this, "XCBuildConfiguration_" PROJECT_NAME "_Debug", PROJECT_NAME, "XCBuildConfiguration", "PBXProject", "Debug"); Property scummvm_Debug; ADD_SETTING(scummvm_Debug, "ALWAYS_SEARCH_USER_PATHS", "NO"); + ADD_SETTING_QUOTE(scummvm_Debug, "USER_HEADER_SEARCH_PATHS", "$(SRCROOT) $(SRCROOT)/engines"); ADD_SETTING_QUOTE(scummvm_Debug, "ARCHS", "$(ARCHS_STANDARD_32_BIT)"); ADD_SETTING_QUOTE(scummvm_Debug, "CODE_SIGN_IDENTITY", "Don't Code Sign"); ADD_SETTING_QUOTE_VAR(scummvm_Debug, "CODE_SIGN_IDENTITY[sdk=iphoneos*]", "Don't Code Sign"); -- cgit v1.2.3 From 7de2f25466b2aa227147a537c09588e37ec33c77 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:48:34 +0200 Subject: CREATE_PROJECT: Remove leftover _rootGroups. --- devtools/create_project/xcode.h | 1 - 1 file changed, 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index 7b16bd2dd1..d49be93de2 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -301,7 +301,6 @@ private: ObjectList _fileReference; ObjectList _frameworksBuildPhase; ObjectList _groups; - ObjectList _rootGroups; ObjectList _nativeTarget; ObjectList _project; ObjectList _resourcesBuildPhase; -- cgit v1.2.3 From e24737f142112776ede892c9ba4091b09dafe68c Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:51:01 +0200 Subject: CREATE_PROJECT: Modify producesObjectFile to take .m and .mm into account. This should be safe outside XCode, as only OSX/iOS-projects introduce such files to begin with. --- devtools/create_project/create_project.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 2f784529bd..42f4466b5e 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -1044,7 +1044,7 @@ bool producesObjectFile(const std::string &fileName) { std::string n, ext; splitFilename(fileName, n, ext); - if (ext == "cpp" || ext == "c" || ext == "asm") + if (ext == "cpp" || ext == "c" || ext == "asm" || ext == "m" || ext == "mm") return true; else return false; -- cgit v1.2.3 From 32b245475117abe37a9f5b1002a423dfffb8d87d Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 19:51:33 +0200 Subject: CREATE_PROJECT: Don't add -fno-rtti. --- devtools/create_project/create_project.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 42f4466b5e..2e4e53dc59 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -415,7 +415,6 @@ int main(int argc, char *argv[]) { globalWarnings.push_back("-Wwrite-strings"); // The following are not warnings at all... We should consider adding them to // a different list of parameters. - globalWarnings.push_back("-fno-rtti"); globalWarnings.push_back("-fno-exceptions"); globalWarnings.push_back("-fcheck-new"); -- cgit v1.2.3 From 21d0210758a5aac44a660f1fd017395c311eed90 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 20:27:21 +0200 Subject: CREATE_PROJECT: Set projectDirPath to the source-path in XCode. --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 1406f2d766..f8d7f15719 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -567,7 +567,7 @@ void XCodeProvider::setupProject() { project->properties["knownRegions"] = regions; project->addProperty("mainGroup", _rootSourceGroup->getHashRef(), "CustomTemplate", SettingsNoValue); - project->addProperty("projectDirPath", "", "", SettingsNoValue|SettingsQuoteVariable); + project->addProperty("projectDirPath", _projectRoot, "", SettingsNoValue|SettingsQuoteVariable); project->addProperty("projectRoot", "", "", SettingsNoValue|SettingsQuoteVariable); // List of targets -- cgit v1.2.3 From be35b8b12ba8424859b3381449186a3586ab62c8 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 20:35:54 +0200 Subject: CREATE_PROJECT: Use SRCROOT-relative include paths. --- devtools/create_project/xcode.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index f8d7f15719..4c9f1cf6f1 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -731,10 +731,10 @@ void XCodeProvider::setupBuildConfiguration() { ADD_SETTING(iPhone_Debug, "GCC_THUMB_SUPPORT", "NO"); ADD_SETTING(iPhone_Debug, "GCC_UNROLL_LOOPS", "YES"); ValueList iPhone_HeaderSearchPaths; - iPhone_HeaderSearchPaths.push_back("../../engines/"); - iPhone_HeaderSearchPaths.push_back("../../"); + iPhone_HeaderSearchPaths.push_back("$(SRCROOT)/engines/"); + iPhone_HeaderSearchPaths.push_back("$(SRCROOT)"); iPhone_HeaderSearchPaths.push_back("include/"); - ADD_SETTING_LIST(iPhone_Debug, "HEADER_SEARCH_PATHS", iPhone_HeaderSearchPaths, SettingsAsList|SettingsNoQuote, 5); + ADD_SETTING_LIST(iPhone_Debug, "HEADER_SEARCH_PATHS", iPhone_HeaderSearchPaths, SettingsAsList|SettingsQuoteVariable, 5); ADD_SETTING(iPhone_Debug, "INFOPLIST_FILE", "Info.plist"); ValueList iPhone_LibPaths; iPhone_LibPaths.push_back("$(inherited)"); @@ -794,9 +794,9 @@ void XCodeProvider::setupBuildConfiguration() { ADD_SETTING(scummvm_Debug, "GCC_WARN_UNUSED_VARIABLE", "YES"); ValueList scummvm_HeaderPaths; scummvm_HeaderPaths.push_back("include/"); - scummvm_HeaderPaths.push_back("../../engines/"); - scummvm_HeaderPaths.push_back("../../"); - ADD_SETTING_LIST(scummvm_Debug, "HEADER_SEARCH_PATHS", scummvm_HeaderPaths, SettingsNoQuote|SettingsAsList, 5); + scummvm_HeaderPaths.push_back("$(SRCROOT)/engines/"); + scummvm_HeaderPaths.push_back("$(SRCROOT)"); + ADD_SETTING_LIST(scummvm_Debug, "HEADER_SEARCH_PATHS", scummvm_HeaderPaths, SettingsQuoteVariable|SettingsAsList, 5); ADD_SETTING_QUOTE(scummvm_Debug, "LIBRARY_SEARCH_PATHS", ""); ADD_SETTING(scummvm_Debug, "ONLY_ACTIVE_ARCH", "YES"); ADD_SETTING_QUOTE(scummvm_Debug, "OTHER_CFLAGS", ""); @@ -851,9 +851,9 @@ void XCodeProvider::setupBuildConfiguration() { scummvmOSX_HeaderPaths.push_back("/opt/local/include"); scummvmOSX_HeaderPaths.push_back("/opt/local/include/freetype2"); scummvmOSX_HeaderPaths.push_back("include/"); - scummvmOSX_HeaderPaths.push_back("../../engines/"); - scummvmOSX_HeaderPaths.push_back("../../"); - ADD_SETTING_LIST(scummvmOSX_Debug, "HEADER_SEARCH_PATHS", scummvmOSX_HeaderPaths, SettingsNoQuote|SettingsAsList, 5); + scummvmOSX_HeaderPaths.push_back("$(SRCROOT)/engines/"); + scummvmOSX_HeaderPaths.push_back("$(SRCROOT)"); + ADD_SETTING_LIST(scummvmOSX_Debug, "HEADER_SEARCH_PATHS", scummvmOSX_HeaderPaths, SettingsQuoteVariable|SettingsAsList, 5); ADD_SETTING_QUOTE(scummvmOSX_Debug, "INFOPLIST_FILE", "$(SRCROOT)/dists/macosx/Info.plist"); ValueList scummvmOSX_LibPaths; scummvmOSX_LibPaths.push_back("/sw/lib"); -- cgit v1.2.3 From 680b10727839f6b4ec088d9219c0384aa1240589 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 20:39:11 +0200 Subject: CREATE_PROJECT: Link theora and jpeg in XCode-projects. --- devtools/create_project/xcode.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 4c9f1cf6f1..3f0fb9ae3e 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -866,6 +866,8 @@ void XCodeProvider::setupBuildConfiguration() { scummvmOSX_LdFlags.push_back("-lSDLmain"); scummvmOSX_LdFlags.push_back("-logg"); scummvmOSX_LdFlags.push_back("-lpng"); + scummvmOSX_LdFlags.push_back("-ljpeg"); + scummvmOSX_LdFlags.push_back("-ltheora"); scummvmOSX_LdFlags.push_back("-lfreetype"); scummvmOSX_LdFlags.push_back("-lvorbisfile"); scummvmOSX_LdFlags.push_back("-lvorbis"); -- cgit v1.2.3 From c49fd6afeb547a25f39494745cd2bd28fd4b6834 Mon Sep 17 00:00:00 2001 From: Einar Johan Trøan Sømåen Date: Thu, 9 Apr 2015 20:41:16 +0200 Subject: CREATE_PROJECT: Remove forced USE_TREMOR define on OS X. --- devtools/create_project/xcode.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 3f0fb9ae3e..5edbb2985a 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -970,7 +970,6 @@ void XCodeProvider::setupDefines(const BuildSetup &setup) { ADD_DEFINE(_defines, "SCUMM_LITTLE_ENDIAN"); ADD_DEFINE(_defines, "UNIX"); ADD_DEFINE(_defines, "SCUMMVM"); - ADD_DEFINE(_defines, "USE_TREMOR"); } ////////////////////////////////////////////////////////////////////////// -- cgit v1.2.3 From da19822e373bf134049b6b415f2f19bf2e1e343b Mon Sep 17 00:00:00 2001 From: Kirben Date: Thu, 16 Apr 2015 14:46:40 +1000 Subject: SCUMM: Add md5 checksums for Italian versions of several HE games. --- devtools/scumm-md5.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 62925e98fa..7a1a22b600 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -682,6 +682,7 @@ pajama2 Pajama Sam 2: Thunder and Lightning Aren't so Frightening pajama3 Pajama Sam 3: You Are What You Eat From Your Head to Your Feet f7711f9264d4d43c2a1518ec7c10a607 79382 us All - - - Kirben 2e8a1f76ea33bc5e04347646feee173d -1 de All - - - Joachim Eberhard + 83e7a9205567dceb456ee35eeaf26ffa -1 it All - - - Saleck aefa244ea034b7cd2041f0a44be7d9ba -1 en Mac - - - pix_climber 06c3cf4f31daad8b1cd93153491db9e6 79382 nl All - - - daniel9 7410a8ba9795020cd42f171c4320659e -1 fr Windows - - - gist974 @@ -724,6 +725,7 @@ socks Pajama Sam's Sock Works puttrace Putt-Putt Enters the Race 981e1e1891f2be7e25a01f50ae55a5af -1 us All HE 98 - - Kirben + 05d3143827ab4f5d2521a1a47dab8ff2 -1 it All HE 98 - - Saleck 1ed22f601f8b3695804a6583cc3083f1 -1 nl All HE 98.5 - - daniel9 33e989f85da700e2014d00f345cab3d7 -1 fr Windows HE 98.5 - - gist974 b47be81e39a9710f6f595f7b527b60f8 -1 gb Windows HE 99 - - Reckless @@ -887,6 +889,7 @@ spyfox2 SPY Fox 2: Some Assembly Required f79e60c17cca601e411f1f75e8ee9b5a 51286 All All - - - Kirben 90e2f0af4f779629695c6394a65bb702 -1 fr All - - - gist974, ThierryFR bc4700bc0e12879f6d25d14d6be6cfdd -1 de All - - - Joachim Eberhard + 3785fd25f7e02b5782bfc5072d8f77c8 -1 it All - - - Saleck cea91e3dd47f2518ea418e41611aa77f -1 ru All - - - sev 9fd66fb3b04703bd50da4356e4202558 51295 en Mac - - - pix_climber 71fe97c3108678cf604f14abe342341b 51286 nl All - - - adutchguy -- cgit v1.2.3 From 8b82090c91cf10d231d232a1a29ebb3936d61618 Mon Sep 17 00:00:00 2001 From: Kirben Date: Thu, 7 May 2015 10:23:11 +1000 Subject: SCUMM: Add UK version of Pajama Sam 2 for Windows. --- devtools/scumm-md5.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 7a1a22b600..47c1dd3cce 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -666,6 +666,7 @@ pajama2 Pajama Sam 2: Thunder and Lightning Aren't so Frightening d4e79c3d8645b8266cd78c325bc35154 60557 us All - - - Kirben 6a60d395b78b205c93a956100b1bf5ae -1 de All HE 98.5 - - EdDammer 513f91a9dbe8d5490b39e56a3ac5bbdf -1 nl All HE 98.5 - - daniel9 + 2328be0317008ef047eed7912a4b0850 -1 gb Windows HE 98.5 - - Saleck 55f4e9402bec2bded383843123f37c5c -1 de Windows HE 98.5 - - WindlePoons e5563c8358443c4352fcddf7402a5e0a -1 fr Windows HE 98.5 - - gist974 c6907d44f1166941d982864cd42cdc89 -1 de All HE 99 - - nachbarnebenan -- cgit v1.2.3 From 2456163f5dd08a72e88c4af9e76f646406ae7d36 Mon Sep 17 00:00:00 2001 From: Kirben Date: Thu, 7 May 2015 11:04:08 +1000 Subject: SCUMM: SCUMM: Add English 1.4 version of Indiana Jones and the Last Crusade for DOS. --- devtools/scumm-md5.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 47c1dd3cce..5bb3b79cad 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -127,6 +127,7 @@ indy3 Indiana Jones and the Last Crusade 66236cd1aec24e1d4aff4c4cc93b7e18 -1 fr DOS EGA EGA ?? v1.3, 25 Aug 89 Andrea Petrucci, Peter Eckerlein 89cfc425566003ff74b7dc7b3e6fd469 -1 fr DOS EGA EGA ?? v1.3, 25 Aug 89 Jorpho 69d70269fafc4445adbb0d223e4f9a3f 5361 en DOS EGA EGA v1.4, 11/07/89 (5.25\") Petr Maruska + 56e8c37a0a08c3a7076f82417461a877 -1 en DOS EGA EGA v1.4, 7 Nov 89 (3.5\") Paulo Vicente 6f6ef668c608c7f534fea6e6d3878dde -1 de DOS EGA EGA v1.4 from 19 Oct 89 dhewg, Peter Eckerlein eb700bb73ca1cc44a1ad5e4b1a4bdeaf 5361 de DOS EGA EGA PC-Spiele a.borque d62d248c3df6ec177405e2cb23d923b2 -1 it DOS EGA EGA v1.4 from 25 Nov 89 Andrea Petrucci, Peter Eckerlein -- cgit v1.2.3 From 3f3ad61927874f5565242211acad12fcdf83b136 Mon Sep 17 00:00:00 2001 From: Kirben Date: Thu, 7 May 2015 11:12:59 +1000 Subject: SCUMM: SCUMM: Add English 1.6 disk version of Day of the Tentacle for DOS. --- devtools/scumm-md5.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 5bb3b79cad..d8ace64c62 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -300,6 +300,7 @@ atlantis Indiana Jones and the Fate of Atlantis tentacle Day of the Tentacle acad97ab1c6fc2a5b2d98abf6db4a190 -1 en All? Floppy Floppy Version A ? 2723fea3dae0cb47768c424b145ae0e7 7932 en DOS Floppy Floppy Version B ? Andrej Sinicyn, Andrea Petrucci, Fingolfin + f0ccc12a8704bf57706b42a37f877128 -1 en DOS Floppy Floppy 1.6 Paulo Vicente 92b078d9d6d9d751da9c26b8b3075779 -1 fr DOS Floppy Floppy - Nicolas Sauzède, Andrea Petrucci 94aaedbb8f26d71ed3ad6dd34490e29e -1 fr DOS Floppy Floppy alt? Nicolas Joly 57b0d89af79befe1cabce3bece869e7f -1 de DOS Floppy Floppy - Andrej Sinicyn, Andrea Petrucci -- cgit v1.2.3 From 04931d040085d77d031290fda57ca2c5dc486f54 Mon Sep 17 00:00:00 2001 From: Thierry Crozat Date: Thu, 7 May 2015 21:30:25 +0100 Subject: SCUMM: Add DOS en demo for Indiana Jones and the Fate of Atlantis This was reported by Paulo Vicente in bug #6862. --- devtools/scumm-md5.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index d8ace64c62..e56f1a6a99 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -294,6 +294,7 @@ atlantis Indiana Jones and the Fate of Atlantis 035deab53b47bc43abc763560d0f8d4b -1 en DOS Floppy Demo - 98744fe66ff730e8c2b3b1f58803ab0b -1 en DOS Floppy Demo - Simon Krumrein, sev + 12cdc256eae5a461bcc9a49975999841 -1 en DOS Floppy Demo - Paulo Vicente 99b6f822b0b2612415407865438697d6 -1 en DOS - Demo non-interactive 28d24a33448fab6795850bc9f159a4a2 11170 jp FM-TOWNS FM-TOWNS Demo non-interactive khalek, Fingolfin -- cgit v1.2.3 From aee23fd7046622e18456d5e777bdf1c33b0f9b7d Mon Sep 17 00:00:00 2001 From: Thierry Crozat Date: Sun, 10 May 2015 15:28:18 +0100 Subject: SCUMM: Add detection for Full Throttle French Mac Also add file size for Sam & Max and DOTT French Mac versions. --- devtools/scumm-md5.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index e56f1a6a99..305c1724ed 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -314,7 +314,7 @@ tentacle Day of the Tentacle 4fbbe9f64b8bc547503a379a301183ce -1 it All? - CD - Andrea Petrucci 883af4b0af4f77a92f1dcf1d0a283140 -1 es All? - CD - Andrea Petrucci cc04a076779379524ed4d9c5ee3c6fb1 282467632 en Mac - CD Mac bundle Fingolfin, Joachim Eberhard - ede149fda3edfc1dbd7347e0737cb583 -1 fr Mac - CD Mac bundle ThierryFR + ede149fda3edfc1dbd7347e0737cb583 282830409 fr Mac - CD Mac bundle ThierryFR, Thierry Crozat f73883f13b5a302749a5bad31d909780 -1 de Mac - CD Mac bundle morrissey c83079157ec765a28de445aec9768d60 7477 en All - Demo - Fingolfin @@ -337,7 +337,7 @@ samnmax Sam & Max Hit the Road 4ba7fb331296c283e73d8f5b2096e551 -1 es All? - CD - Andrea Petrucci d43352a805d78b5f4936c6d7779bf575 -1 ru DOS - CD - 166553538ff320c69edafeee29525419 199195304 en Mac - CD Mac bundle Joachim Eberhard - 3a5d13675e9a23aedac0bac7730f0ac1 -1 fr Mac - CD Mac bundle ThierryFR + 3a5d13675e9a23aedac0bac7730f0ac1 228446581 fr Mac - CD Mac bundle ThierryFR, Thierry Crozat c3196c5349e53e387aaff1533d95e53a -1 en DOS Floppy Demo - 0e4c5d54a0ad4b26132e78b5ea76642a 6485 en DOS Floppy Demo WIP Fingolfin @@ -358,6 +358,7 @@ ft Full Throttle e72bb4c2b613db2cf50f89ff6350e70a -1 es All? - - - fe381e45117878b1e942cb876b050fd6 513243679 en Mac - - Mac bundle Fingolfin 04401d747f1a2c1c4b388daff71ed378 535405461 de Mac - - Mac bundle Fingolfin + 403d2ec4d60d3cdae925e6cbf67716d6 489436643 fr Mac - - Mac bundle Thierry Crozat 32a433dea56b86a55b59e4ff7d755711 -1 en DOS Demo Demo - 9d7b67be003fea60be4dcbd193611936 11164 en Mac Demo Demo - Fingolfin -- cgit v1.2.3 From 343d0c41dbc7e4473787b2ae0275ba7e80b27480 Mon Sep 17 00:00:00 2001 From: Kirben Date: Sun, 28 Jun 2015 13:22:20 +1000 Subject: SCUMM: Fix bug #6873 FARM: Crash at the end of trivia minigame on easy. --- devtools/scumm-md5.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 305c1724ed..ffde276a3d 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -627,12 +627,12 @@ airport Let's Explore the Airport with Buzzy 86c9902b7bec1a17926d4dae85beaa45 -1 en Windows HE 71 Demo - khalek farm Let's Explore the Farm with Buzzy - fbbbb38a81fc9d6a61d509278390a290 -1 en Mac - - - khalek a5c5388da9bf0e6662fdca8813a79d13 86962 en Windows - - - George Kormendi - a85856675429fe88051744f755b72f93 -1 en Windows - - - Kirben - a2386da005672cbd5136f4f27a626c5f 87061 nl Windows - - - George Kormendi - eeb606c2d2ec877a712a9f20c10bcdda 87034 nl Mac - - - Ben Castricum - 5dda73606533d66a4c3f4f9ea6e842af 87061 ru Windows - - - sev + fbbbb38a81fc9d6a61d509278390a290 -1 en Mac HE 73 - - khalek + a85856675429fe88051744f755b72f93 -1 en Windows HE 73 - - Kirben + a2386da005672cbd5136f4f27a626c5f 87061 nl Windows HE 73 - - George Kormendi + eeb606c2d2ec877a712a9f20c10bcdda 87034 nl Mac HE 73 - - Ben Castricum + 5dda73606533d66a4c3f4f9ea6e842af 87061 ru Windows HE 73 - - sev 39fd6db10d0222d817025c4d3346e3b4 -1 en Mac - Demo - Joachim Eberhard 6c375c2236d99f56e6c2cf540e74e474 34333 nl Windows - Demo - Kirben -- cgit v1.2.3 From fd8ac7ea79441b5c4a85234e2e875444d47f3f79 Mon Sep 17 00:00:00 2001 From: David Russo Date: Sat, 16 May 2015 19:24:31 +0100 Subject: ZVISION: Change mentions of ZVision to Z-Vision To match official documentation (e.g. game manual, credits). --- devtools/credits.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'devtools') diff --git a/devtools/credits.pl b/devtools/credits.pl index f82d0d4212..2360576e88 100755 --- a/devtools/credits.pl +++ b/devtools/credits.pl @@ -789,7 +789,7 @@ begin_credits("Credits"); add_person("Tobia Tesan", "t0by", ""); end_section(); - begin_section("ZVision"); + begin_section("Z-Vision"); add_person("Adrian Astley", "RichieSams", ""); add_person("Filippos Karapetis", "[md5]", ""); add_person("Anton Yarcev", "Zidane", ""); @@ -1224,7 +1224,7 @@ begin_credits("Credits"); add_person("Jimmi Thøgersen", "", "For ScummRev, and much obscure code/documentation"); add_person("", "Tristan", "For additional work on the original MT-32 emulator"); add_person("James Woodcock", "", "Soundtrack enhancements"); - add_person("Anton Yartsev", "Zidane", "For the original re-implementation of the ZVision engine"); + add_person("Anton Yartsev", "Zidane", "For the original re-implementation of the Z-Vision engine"); end_persons(); add_paragraph( -- cgit v1.2.3 From 9b357309256a5e437115e29669eb309c1b47aeb1 Mon Sep 17 00:00:00 2001 From: Lothar Serra Mari Date: Mon, 29 Jun 2015 12:49:50 +0200 Subject: CREDITS: Removed rootfather's "retired" tag Removed my "retired" tag in credits.pl --- devtools/credits.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/credits.pl b/devtools/credits.pl index 2360576e88..41c2d4f162 100755 --- a/devtools/credits.pl +++ b/devtools/credits.pl @@ -1053,7 +1053,7 @@ begin_credits("Credits"); end_section(); begin_section("German"); add_person("Simon Sawatzki", "SimSaw", ""); - add_person("Lothar Serra Mari", "Lothar93", "(retired)"); + add_person("Lothar Serra Mari", "rootfather", ""); end_section(); begin_section("Hungarian"); add_person("Alex Bevilacqua", "", ""); -- cgit v1.2.3 From bf065764985cc05f6e7c098e274aea08b92fee8f Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Mon, 20 Jul 2015 00:53:10 +0300 Subject: CREATE_PROJECT: Rename XCodeProvider -> XcodeProvider --- devtools/create_project/create_project.cpp | 2 +- devtools/create_project/xcode.cpp | 60 +++++++++++++++--------------- devtools/create_project/xcode.h | 10 ++--- 3 files changed, 36 insertions(+), 36 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 2e4e53dc59..e4cb67134a 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -576,7 +576,7 @@ int main(int argc, char *argv[]) { globalWarnings.push_back("-fno-exceptions"); globalWarnings.push_back("-fcheck-new"); - provider = new CreateProjectTool::XCodeProvider(globalWarnings, projectWarnings); + provider = new CreateProjectTool::XcodeProvider(globalWarnings, projectWarnings); break; } diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 5edbb2985a..49c47c54ca 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -92,7 +92,7 @@ bool producesObjectFileOnOSX(const std::string &fileName) { return false; } -XCodeProvider::Group::Group(XCodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path) : Object(objectParent, uniqueName, groupName, "PBXGroup", "", groupName) { +XcodeProvider::Group::Group(XcodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path) : Object(objectParent, uniqueName, groupName, "PBXGroup", "", groupName) { addProperty("name", name, "", SettingsNoValue|SettingsQuoteVariable); addProperty("sourceTree", "", "", SettingsNoValue|SettingsQuoteVariable); @@ -103,7 +103,7 @@ XCodeProvider::Group::Group(XCodeProvider *objectParent, const std::string &grou _treeName = uniqueName; } -void XCodeProvider::Group::ensureChildExists(const std::string &name) { +void XcodeProvider::Group::ensureChildExists(const std::string &name) { std::map::iterator it = _childGroups.find(name); if (it == _childGroups.end()) { Group *child = new Group(parent, name, this->_treeName + '/' + name, name); @@ -113,7 +113,7 @@ void XCodeProvider::Group::ensureChildExists(const std::string &name) { } } -void XCodeProvider::Group::addChildInternal(const std::string &id, const std::string &comment) { +void XcodeProvider::Group::addChildInternal(const std::string &id, const std::string &comment) { if (properties.find("children") == properties.end()) { Property children; children.hasOrder = true; @@ -131,11 +131,11 @@ void XCodeProvider::Group::addChildInternal(const std::string &id, const std::st } -void XCodeProvider::Group::addChildGroup(const Group* group) { +void XcodeProvider::Group::addChildGroup(const Group* group) { addChildInternal(parent->getHash(group->_treeName), group->_treeName); } -void XCodeProvider::Group::addChildFile(const std::string &name) { +void XcodeProvider::Group::addChildFile(const std::string &name) { std::string id = "FileReference_" + _treeName + "/" + name; addChildInternal(parent->getHash(id), name); FileProperty property = FileProperty(name, name, name, "\"\""); @@ -146,17 +146,17 @@ void XCodeProvider::Group::addChildFile(const std::string &name) { } } -void XCodeProvider::Group::addChildByHash(const std::string &hash, const std::string &name) { +void XcodeProvider::Group::addChildByHash(const std::string &hash, const std::string &name) { addChildInternal(hash, name); } -XCodeProvider::Group *XCodeProvider::Group::getChildGroup(const std::string &name) { +XcodeProvider::Group *XcodeProvider::Group::getChildGroup(const std::string &name) { std::map::iterator it = _childGroups.find(name); assert(it != _childGroups.end()); return it->second; } -XCodeProvider::Group *XCodeProvider::touchGroupsForPath(const std::string &path) { +XcodeProvider::Group *XcodeProvider::touchGroupsForPath(const std::string &path) { if (_rootSourceGroup == nullptr) { assert (path == _projectRoot); _rootSourceGroup = new Group(this, "Sources", path, path); @@ -178,7 +178,7 @@ XCodeProvider::Group *XCodeProvider::touchGroupsForPath(const std::string &path) } } -void XCodeProvider::addFileReference(const std::string &id, const std::string &name, FileProperty properties) { +void XcodeProvider::addFileReference(const std::string &id, const std::string &name, FileProperty properties) { Object *fileRef = new Object(this, id, name, "PBXFileReference", "PBXFileReference", name); if (!properties.fileEncoding.empty()) fileRef->addProperty("fileEncoding", properties.fileEncoding, "", SettingsNoValue); if (!properties.lastKnownFileType.empty()) fileRef->addProperty("lastKnownFileType", properties.lastKnownFileType, "", SettingsNoValue|SettingsQuoteVariable); @@ -189,7 +189,7 @@ void XCodeProvider::addFileReference(const std::string &id, const std::string &n _fileReference.flags = SettingsSingleItem; } -void XCodeProvider::addProductFileReference(const std::string &id, const std::string &name) { +void XcodeProvider::addProductFileReference(const std::string &id, const std::string &name) { Object *fileRef = new Object(this, id, name, "PBXFileReference", "PBXFileReference", name); fileRef->addProperty("explicitFileType", "compiled.mach-o.executable", "", SettingsNoValue|SettingsQuoteVariable); fileRef->addProperty("includeInIndex", "0", "", SettingsNoValue); @@ -199,7 +199,7 @@ void XCodeProvider::addProductFileReference(const std::string &id, const std::st _fileReference.flags = SettingsSingleItem; } -void XCodeProvider::addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment) { +void XcodeProvider::addBuildFile(const std::string &id, const std::string &name, const std::string &fileRefId, const std::string &comment) { Object *buildFile = new Object(this, id, name, "PBXBuildFile", "PBXBuildFile", comment); buildFile->addProperty("fileRef", fileRefId, name, SettingsNoValue); @@ -207,12 +207,12 @@ void XCodeProvider::addBuildFile(const std::string &id, const std::string &name, _buildFile.flags = SettingsSingleItem; } -XCodeProvider::XCodeProvider(StringList &global_warnings, std::map &project_warnings, const int version) +XcodeProvider::XcodeProvider(StringList &global_warnings, std::map &project_warnings, const int version) : ProjectProvider(global_warnings, project_warnings, version) { _rootSourceGroup = NULL; } -void XCodeProvider::createWorkspace(const BuildSetup &setup) { +void XcodeProvider::createWorkspace(const BuildSetup &setup) { // Create project folder std::string workspace = setup.outputDir + '/' + PROJECT_NAME ".xcodeproj"; createDirectory(workspace); @@ -238,7 +238,7 @@ void XCodeProvider::createWorkspace(const BuildSetup &setup) { // We are done with constructing all the object graph and we got through every project, output the main project file // (this is kind of a hack since other providers use separate project files) -void XCodeProvider::createOtherBuildFiles(const BuildSetup &setup) { +void XcodeProvider::createOtherBuildFiles(const BuildSetup &setup) { // This needs to be done at the end when all build files have been accounted for setupSourcesBuildPhase(); @@ -246,7 +246,7 @@ void XCodeProvider::createOtherBuildFiles(const BuildSetup &setup) { } // Store information about a project here, for use at the end -void XCodeProvider::createProjectFile(const std::string &, const std::string &, const BuildSetup &setup, const std::string &moduleDir, +void XcodeProvider::createProjectFile(const std::string &, const std::string &, const BuildSetup &setup, const std::string &moduleDir, const StringList &includeList, const StringList &excludeList) { std::string modulePath; if (!moduleDir.compare(0, setup.srcDir.size(), setup.srcDir)) { @@ -265,7 +265,7 @@ void XCodeProvider::createProjectFile(const std::string &, const std::string &, ////////////////////////////////////////////////////////////////////////// // Main Project file ////////////////////////////////////////////////////////////////////////// -void XCodeProvider::ouputMainProjectFile(const BuildSetup &setup) { +void XcodeProvider::ouputMainProjectFile(const BuildSetup &setup) { std::ofstream project((setup.outputDir + '/' + PROJECT_NAME ".xcodeproj" + '/' + "project.pbxproj").c_str()); if (!project) error("Could not open \"" + setup.outputDir + '/' + PROJECT_NAME ".xcodeproj" + '/' + "project.pbxproj\" for writing"); @@ -305,7 +305,7 @@ void XCodeProvider::ouputMainProjectFile(const BuildSetup &setup) { ////////////////////////////////////////////////////////////////////////// // Files ////////////////////////////////////////////////////////////////////////// -void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, +void XcodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation, const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix) { // Ensure that top-level groups are generated for i.e. engines/ @@ -327,7 +327,7 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p ////////////////////////////////////////////////////////////////////////// // Setup functions ////////////////////////////////////////////////////////////////////////// -void XCodeProvider::setupCopyFilesBuildPhase() { +void XcodeProvider::setupCopyFilesBuildPhase() { // Nothing to do here } @@ -342,7 +342,7 @@ void XCodeProvider::setupCopyFilesBuildPhase() { * * (each native target has different build rules) */ -void XCodeProvider::setupFrameworksBuildPhase() { +void XcodeProvider::setupFrameworksBuildPhase() { _frameworksBuildPhase.comment = "PBXFrameworksBuildPhase"; // Just use a hardcoded id for the Frameworks-group @@ -506,7 +506,7 @@ void XCodeProvider::setupFrameworksBuildPhase() { #endif } -void XCodeProvider::setupNativeTarget() { +void XcodeProvider::setupNativeTarget() { _nativeTarget.comment = "PBXNativeTarget"; // Just use a hardcoded id for the Products-group @@ -547,7 +547,7 @@ void XCodeProvider::setupNativeTarget() { _groups.add(productsGroup); } -void XCodeProvider::setupProject() { +void XcodeProvider::setupProject() { _project.comment = "PBXProject"; Object *project = new Object(this, "PBXProject", "PBXProject", "PBXProject", "", "Project object"); @@ -589,7 +589,7 @@ void XCodeProvider::setupProject() { _project.add(project); } -void XCodeProvider::setupResourcesBuildPhase() { +void XcodeProvider::setupResourcesBuildPhase() { _resourcesBuildPhase.comment = "PBXResourcesBuildPhase"; // Setup resource file properties @@ -666,7 +666,7 @@ void XCodeProvider::setupResourcesBuildPhase() { } } -void XCodeProvider::setupSourcesBuildPhase() { +void XcodeProvider::setupSourcesBuildPhase() { _sourcesBuildPhase.comment = "PBXSourcesBuildPhase"; // Setup source file properties @@ -700,7 +700,7 @@ void XCodeProvider::setupSourcesBuildPhase() { } // Setup all build configurations -void XCodeProvider::setupBuildConfiguration() { +void XcodeProvider::setupBuildConfiguration() { _buildConfiguration.comment = "XCBuildConfiguration"; _buildConfiguration.flags = SettingsAsList; @@ -956,7 +956,7 @@ void XCodeProvider::setupBuildConfiguration() { ////////////////////////////////////////////////////////////////////////// // Setup global defines -void XCodeProvider::setupDefines(const BuildSetup &setup) { +void XcodeProvider::setupDefines(const BuildSetup &setup) { for (StringList::const_iterator i = setup.defines.begin(); i != setup.defines.end(); ++i) { if (*i == "HAVE_NASM") // Not supported on Mac (TODO: change how it's handled in main class or add it only in MSVC/CodeBlocks providers?) @@ -977,7 +977,7 @@ void XCodeProvider::setupDefines(const BuildSetup &setup) { ////////////////////////////////////////////////////////////////////////// // TODO use md5 to compute a file hash (and fall back to standard key generation if not passed a file) -std::string XCodeProvider::getHash(std::string key) { +std::string XcodeProvider::getHash(std::string key) { #if DEBUG_XCODE_HASH return key; @@ -997,7 +997,7 @@ std::string XCodeProvider::getHash(std::string key) { bool isSeparator (char s) { return (s == '-'); } -std::string XCodeProvider::newHash() const { +std::string XcodeProvider::newHash() const { std::string hash = createUUID(); // Remove { and - from UUID and resize to 96-bits uppercase hex string @@ -1029,7 +1029,7 @@ std::string replace(std::string input, const std::string find, std::string repla return input; } -std::string XCodeProvider::writeProperty(const std::string &variable, Property &prop, int flags) const { +std::string XcodeProvider::writeProperty(const std::string &variable, Property &prop, int flags) const { std::string output; output += (flags & SettingsSingleItem ? "" : "\t\t\t") + variable + " = "; @@ -1060,13 +1060,13 @@ std::string XCodeProvider::writeProperty(const std::string &variable, Property & return output; } -std::string XCodeProvider::writeSetting(const std::string &variable, std::string value, std::string comment, int flags, int indent) const { +std::string XcodeProvider::writeSetting(const std::string &variable, std::string value, std::string comment, int flags, int indent) const { return writeSetting(variable, Setting(value, comment, flags, indent)); } // Heavily modified (not in a good way) function, imported from the QMake // XCode project generator pbuilder_pbx.cpp, writeSettings() (under LGPL 2.1) -std::string XCodeProvider::writeSetting(const std::string &variable, const Setting &setting) const { +std::string XcodeProvider::writeSetting(const std::string &variable, const Setting &setting) const { std::string output; const std::string quote = (setting.flags & SettingsNoQuote) ? "" : "\""; const std::string escape_quote = quote.empty() ? "" : "\\" + quote; diff --git a/devtools/create_project/xcode.h b/devtools/create_project/xcode.h index d49be93de2..2686d14986 100644 --- a/devtools/create_project/xcode.h +++ b/devtools/create_project/xcode.h @@ -30,9 +30,9 @@ namespace CreateProjectTool { -class XCodeProvider : public ProjectProvider { +class XcodeProvider : public ProjectProvider { public: - XCodeProvider(StringList &global_warnings, std::map &project_warnings, const int version = 0); + XcodeProvider(StringList &global_warnings, std::map &project_warnings, const int version = 0); protected: @@ -168,7 +168,7 @@ private: PropertyList properties; // List of object properties, including output configuration // Constructs an object and add a default type property - Object(XCodeProvider *objectParent, std::string objectId, std::string objectName, std::string objectType, std::string objectRefType = "", std::string objectComment = "") + Object(XcodeProvider *objectParent, std::string objectId, std::string objectName, std::string objectType, std::string objectRefType = "", std::string objectComment = "") : id(objectId), name(objectName), refType(objectRefType), comment(objectComment), parent(objectParent) { assert(objectParent); assert(!objectId.empty()); @@ -211,7 +211,7 @@ private: // Slight hack, to allow Group access to parent. protected: - XCodeProvider *parent; + XcodeProvider *parent; private: // Returns the type property (should always be the first in the properties map) std::string getType() { @@ -267,7 +267,7 @@ private: std::string _treeName; void addChildInternal(const std::string &id, const std::string &comment); public: - Group(XCodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path); + Group(XcodeProvider *objectParent, const std::string &groupName, const std::string &uniqueName, const std::string &path); void addChildFile(const std::string &name); void addChildByHash(const std::string &hash, const std::string &name); // Should be passed the hash for the entry -- cgit v1.2.3 From 23471eeb5306548878aedf75524ffba0af94cd61 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Mon, 20 Jul 2015 00:55:11 +0300 Subject: CREATE_PROJECT: Use NULL instead of nullptr This allows create_project to be built with the C99 standard, instead of C11 --- devtools/create_project/xcode.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'devtools') diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 49c47c54ca..babd530ad7 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -157,7 +157,7 @@ XcodeProvider::Group *XcodeProvider::Group::getChildGroup(const std::string &nam } XcodeProvider::Group *XcodeProvider::touchGroupsForPath(const std::string &path) { - if (_rootSourceGroup == nullptr) { + if (_rootSourceGroup == NULL) { assert (path == _projectRoot); _rootSourceGroup = new Group(this, "Sources", path, path); _groups.add(_rootSourceGroup); -- cgit v1.2.3 From d21054f0b774d0b20ddb11dd46365dd1c9db2951 Mon Sep 17 00:00:00 2001 From: Thierry Crozat Date: Mon, 7 Sep 2015 23:49:58 +0100 Subject: DEVTOOLS: Include french menu in mort.dat --- devtools/create_mortdat/create_mortdat.cpp | 1 + devtools/create_mortdat/menudata.h | 50 ++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) (limited to 'devtools') diff --git a/devtools/create_mortdat/create_mortdat.cpp b/devtools/create_mortdat/create_mortdat.cpp index f6b2884005..2d7c9ad3b9 100644 --- a/devtools/create_mortdat/create_mortdat.cpp +++ b/devtools/create_mortdat/create_mortdat.cpp @@ -227,6 +227,7 @@ void writeMenuData(const char *menuData, int languageId) { void writeMenuBlock() { writeMenuData(menuDataEn, 1); + writeMenuData(menuDataFr, 0); writeMenuData(menuDataDe, 2); } diff --git a/devtools/create_mortdat/menudata.h b/devtools/create_mortdat/menudata.h index 2290666ffe..0d46f93329 100644 --- a/devtools/create_mortdat/menudata.h +++ b/devtools/create_mortdat/menudata.h @@ -76,6 +76,56 @@ const char *menuDataEn = "@@@ @@@ @@@ @@@ " " "; +const char *menuDataFr = + " @@@ " + " @ " + " @ @ @@ @@@ @@@ " + " @ @ @ @ @ " + " @ @ @ @ @ " + " @ @ @ @ @ " + "@@@ @@@ @@ @@ " + " " + " @@@@@ @@ " + " @ @ @ " + " @ @ @@@ @ @@@ " + " @ @ @ @ @ @ " + " @ @ @@@@ @ @ " + " @ @ @ @@@@ " + "@@@@@ @@@ @ " + " @@@ " + " @ @ " + " @@ @ " + " @ @ @@@@ @@@@ " + " @ @ @ @ @ " + " @@@@@ @ @ " + " @ @ @ @ @ " + "@@@ @@@ @@@ @@ " + " " + " @@@@@ @@@ @@@" + " @ @ @ @ @" + " @ @@@ @ @ " + " @@@@ @ @ @ @@@ " + " @ @@@@@ @ @ " + " @ @ @ @ @ " + "@@@@@@ @@@ @@@ @@@ " + " " + " @@@@@ @ " + " @ @ " + " @ @ @@ @@@@ " + " @ @ @ @ " + " @ @ @ @@@ " + " @ @ @ @ " + "@@@@@ @@@ @@@@@ " + " " + " @@@@@@@ @ " + " @ @ " + " @ @ @@ @@@@ " + " @@@@ @ @ @ " + " @ @ @ @ " + " @ @ @ @ " + "@@@ @@@ @@@ " + " "; + const char *menuDataDe = " @@@ @@ " " @ @ " -- cgit v1.2.3 From 91829bc0afbe378785ba9ecf95a6adb4435a2de4 Mon Sep 17 00:00:00 2001 From: Ben Castricum Date: Sun, 11 Jan 2015 13:16:17 +0100 Subject: SCUMM: Distinguish US/GB language for Freddi Fish games There is no GB version of Freddi Fish 1 and 2, so use EN as language --- devtools/scumm-md5.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index ffde276a3d..5b3e8b58af 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -493,7 +493,7 @@ freddi Freddi Fish 1: The Case of the Missing Kelp Seeds cf8ef3a1fb483c5c4b1c584d1167b2c4 -1 de Windows HE 73 - - Oncer 1f2e62b5a9c50589fc342285a6bb3a27 -1 he Windows HE 73 - - e_orz 507bb360688dc4180fdf0d7597352a69 26402 se Windows HE 73 - - Sven Arvidsson - df047cc4792150f601290357566d36a6 -1 us All HE 90 Updated - khalek + df047cc4792150f601290357566d36a6 -1 en All HE 90 Updated - khalek e44ea295a3f8fe4f41983080dab1e9ce -1 fr Mac HE 90 Updated - ThierryFR 746e88c172a5b7a1ae89ac0ee3ee681a -1 ru Windows HE 90 Updated - sev a197a87ae77f3b3333f09a7a2c448fe2 -1 en Windows HE 99 Updated - Jonathan @@ -522,9 +522,9 @@ freddi2 Freddi Fish 2: The Case of the Haunted Schoolhouse 5057fb0e99e5aa29df1836329232f101 -1 All Windows HE 80 - - sev ac62d50e39492ee3738b4e83a5ac780f -1 nl Windows HE 80 - - joostp 151071053a1d0021198216713939521d -1 en Windows HE 80 - - vampir_raziel - 51305e929e330e24a75a0351c8f9975e -1 us All HE 99 Updated - Kirben + 51305e929e330e24a75a0351c8f9975e -1 en All HE 99 Updated - Kirben 9c0ee9c252785e9fca0143e42ac4b256 -1 de Windows HE 99 Updated - George Kormendi - 8ee63cafb1fe9d62aa0d5a23117e70e7 -1 us All HE 100 Updated - Kirben + 8ee63cafb1fe9d62aa0d5a23117e70e7 -1 en All HE 100 Updated - Kirben e41de1c2a15abbcdbf9977e2d7e8a340 -1 ru Windows HE 100 Updated - sev c20848f53c2d48bfacdc840993843765 -1 nl All HE 80 Demo - DarthBo @@ -532,7 +532,7 @@ freddi2 Freddi Fish 2: The Case of the Haunted Schoolhouse d37c55388294b66e53e7ced3af88fa68 -1 en All HE 100 Updated Demo - khalek freddi3 Freddi Fish 3: The Case of the Stolen Conch Shell - 8368f552b1e3eba559f8d559bcc4cadb -1 All All - - - Kirben, sev + 8368f552b1e3eba559f8d559bcc4cadb 55959 All All - - - Kirben, sev (US and ???) 0cccfa5223099a60e76cfcca57a1a141 -1 nl All - - - adutchguy, daniel9 008e76ec3ae58d0add637ea7aa299a2c -1 fr Mac - - - ThierryFR 898ce8eb1234a955ef75e87141902bb3 -1 ru Windows - - - sev @@ -550,7 +550,7 @@ freddi3 Freddi Fish 3: The Case of the Stolen Conch Shell d73c851b942af44deb9b6d5f416a0972 -1 he Windows HE 99 Demo - Ori Avtalion freddi4 Freddi Fish 4: The Case of the Hogfish Rustlers of Briny Gulch - 4f580a021eee026f3b4589e17d130d78 -1 All All - - - Kirben, sev + 4f580a021eee026f3b4589e17d130d78 44190 All All - - - Kirben, sev (US and ???) 14d48c95b43ddeb983254cf6c43851f1 -1 nl All - - - adutchguy, daniel9 3b832f4a90740bf22e9b8ed42ca0128c -1 gb All HE 99 - - Reckless d74122362a77ec24525fdd50297dfd82 -1 fr Mac - - - ThierryFR @@ -580,7 +580,7 @@ freddi4 Freddi Fish 4: The Case of the Hogfish Rustlers of Briny Gulch 47e041521d35c7a801bb1c010d84da9d -1 it Windows HE 99 Demo - Kirben freddicove Freddi Fish 5: The Case of the Creature of Coral Cove - 590e6546aacd0d374b7f3a4f53013ab1 -1 All All - - - cyx + 590e6546aacd0d374b7f3a4f53013ab1 41165 All All - - - cyx (US and ???) 21abe302e1b1e2b66d6f5c12e241ebfd -1 ru Windows unenc Unencrypted - sev b8955d7d23b4972229060d1592489fef -1 nl All HE 100 - - adutchguy, daniel9 8f345db2f3f5a25ed6305001957e6f72 41182 nl All HE 100 - - Ben Castricum -- cgit v1.2.3 From 8d8d68d95647350834e04d6b918ceaf3dbe63ba5 Mon Sep 17 00:00:00 2001 From: Ben Castricum Date: Sun, 11 Jan 2015 13:32:23 +0100 Subject: SCUMM: Distinguish US/GB language for Putt-Putt games There is no GB version of Putt-Putt 1, so use EN as language --- devtools/scumm-md5.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 5b3e8b58af..d819face5e 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -765,14 +765,14 @@ puttmoon Putt-Putt Goes to the Moon puttcircus Putt-Putt Joins the Circus ecc4340c2b801f5af8da4e00c0e432d9 -1 nl All - - - daniel9 - ab0693e9324cfcf498fdcbb12acf8bb4 -1 en All - - - sev + ab0693e9324cfcf498fdcbb12acf8bb4 36655 us All - - - sev 7bad72e332a59f9fcc1d437f4edad32a -1 ru All - - - sev db74136c20557eca6ed3411bff39f7a1 -1 gb Windows - - - Reckless d0ad929def3e9cfe39dea55bd12098d4 -1 fr Windows - - - gist974 febf4a983ea5faea1c9dd6c710ebb09c -1 de Windows - - - andy482 c8253da0f4626d2236b5291b99e33408 -1 he Windows HE 99 - - Matan Bareket - a7cacad9c40c4dc9e1812abf6c8af9d5 -1 en All - Demo - Kirben, sev + a7cacad9c40c4dc9e1812abf6c8af9d5 -1 us All - Demo - Kirben, sev 1387d16aa620dc1c2d1fd87f8a9e7a09 -1 fr Windows - Demo - Mevi 3af61c5edf8e15b43dbafd285b2e9777 -1 he Windows - Demo - Ori Avtalion @@ -799,7 +799,7 @@ puttzoo Putt-Putt Saves the Zoo 9781422e4288dbc090720e4563168ba7 -1 fr Windows - - - gist974 0f9d3317910ac7a9f449243118884ada 42070 de Windows - - - George Kormendi 92e7727e67f5cd979d8a1070e4eb8cb3 -1 en All HE 98.5 Updated - cyx - 3a3e592b074f595489f7f11e150c398d -1 us Windows HE 99 Updated - Adrian + 3a3e592b074f595489f7f11e150c398d -1 en Windows HE 99 Updated - Adrian c5cc7cba02a2fbd539c4439e775b0536 43470 de Windows HE 99 Updated - Lightkey 5c9cecbd2952ccec14c9ecebf5822a34 -1 en iOS HE 100 - - clone2727 7b4ee071eecadc2d8cd0c3509110825c -1 en Windows HE 100 Remastered - Kirben @@ -815,7 +815,7 @@ puttzoo Putt-Putt Saves the Zoo PuttTime Putt-Putt Travels Through Time fcb78ebecab2757264c590890c319cc5 -1 nl All HE 85 - - adutchguy, daniel9 - 63fdcdc95cdeea00060883aed38e5504 -1 en All HE 85 - - iziku + 63fdcdc95cdeea00060883aed38e5504 62582 us All HE 85 - - iziku db21a6e338fe3b70c2723b6530865bf2 -1 fr All HE 85 - - gist974, ThierryFR 84e3c23a49ded8a6f9197735c8eb3de7 -1 de Windows HE 85 - - oncer 2108d83dcf09f8adb4bc524669c8cf51 -1 us All HE 99 Updated - Kirben -- cgit v1.2.3 From 60a1eec871f3da83c2dd978592e8449e15d4654b Mon Sep 17 00:00:00 2001 From: Ben Castricum Date: Sun, 11 Jan 2015 18:22:16 +0100 Subject: SCUMM: Distinguish US/GB language for SPYfox games --- devtools/scumm-md5.txt | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index d819face5e..d369782bab 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -869,40 +869,40 @@ PuttsFunShop Putt-Putt's One-Stop Fun Shop 5262a27afcaee04e5c4900220bd463e7 -1 us All - - - Kirben spyfox SPY Fox 1: Dry Cereal - 6bf70eee5de3d24d2403e0dd3d267e8a 49221 All Windows - - - khalek + 6bf70eee5de3d24d2403e0dd3d267e8a 49221 All Windows - - - khalek (US and ???) 100b4c8403ad6a83d4bf7dbf83e44dc4 -1 fr Windows - - - gist974 9bda5fee51d2fda5253d02c642016bf4 -1 nl All HE 98.5 - - daniel9, joostp - 58436e634f4fae1d9973591c2ffa1fcb -1 en All HE 99 Updated - Joachim Eberhard + 58436e634f4fae1d9973591c2ffa1fcb -1 en All HE 99 Updated - Joachim Eberhard (GB or US?) a28135a7ade38cc0208b04507c46efd1 -1 de All HE 99 - - nachbarnebenan ee785fe2569bc9965526e774f7ab86f1 -1 fr Mac HE 99 - - ThierryFR 76b66b43e593ad4d2f1dfb5cc8f19700 -1 nl Windows HE 99 - - sugarcube 72ac6bc980d5101c2142189d746bd62f -1 ru Windows HE 99 - - sev 3de99ef0523f8ca7958faa3afccd035a -1 us All HE 100 Updated - Kirben - 23394c8d29cc63c61313959431a12476 -1 en Windows HE 100 Updated - Jonathan - 50b831f11b8c4b83784cf81f4dcc69ea -1 en Wii HE 101 - - sanguinehearts - 15878e3bee2e1e759184abee98589eaa -1 en iOS HE 100 - - clone2727 + 23394c8d29cc63c61313959431a12476 -1 en Windows HE 100 Updated - Jonathan (GB or US?) + 50b831f11b8c4b83784cf81f4dcc69ea -1 en Wii HE 101 - - sanguinehearts (GB or US?) + 15878e3bee2e1e759184abee98589eaa -1 en iOS HE 100 - - clone2727 (GB or US?) - 53e94115b55dd51d4b8ff0871aa1df1e 20103 en All - Demo - khalek, sev - fbdd947d21e8f5bac6d6f7a316af1c5a 15693 en All - Demo - sev + 53e94115b55dd51d4b8ff0871aa1df1e 20103 us All - Demo - khalek, sev + fbdd947d21e8f5bac6d6f7a316af1c5a 15693 us All - Demo - sev ba888e6831517597859e91aa173f945c -1 fr All - Demo - Kirben 73b8197e236da4bf49adc99fe8f5fa1b -1 de All - Demo - Joachim Eberhard 4edbf9d03550f7ba01e7f34d69b678dd -1 nl All HE 98.5 Demo - Kirben f2ec78e50bdc63b70044e9758be10914 -1 nl Mac HE 98.5 Demo - Ben Castricum - 9d4ab3e0e1d1ebc6ba8a6a4c470ed184 -1 en All HE 100 Demo - khalek + 9d4ab3e0e1d1ebc6ba8a6a4c470ed184 15943 us All HE 100 Demo - khalek spyfox2 SPY Fox 2: Some Assembly Required - f79e60c17cca601e411f1f75e8ee9b5a 51286 All All - - - Kirben + f79e60c17cca601e411f1f75e8ee9b5a 51286 All All - - - Kirben (US and ???) 90e2f0af4f779629695c6394a65bb702 -1 fr All - - - gist974, ThierryFR bc4700bc0e12879f6d25d14d6be6cfdd -1 de All - - - Joachim Eberhard 3785fd25f7e02b5782bfc5072d8f77c8 -1 it All - - - Saleck cea91e3dd47f2518ea418e41611aa77f -1 ru All - - - sev - 9fd66fb3b04703bd50da4356e4202558 51295 en Mac - - - pix_climber + 9fd66fb3b04703bd50da4356e4202558 51295 en Mac - - - pix_climber (GB or US?) 71fe97c3108678cf604f14abe342341b 51286 nl All - - - adutchguy 1c792d28376d45e145cb916bca0400a2 -1 nl All - Demo - joostp 7222f260253f325c21fcfa68b5bfab67 -1 us All - Demo - Kirben 732845548b1d6c2da572cb6a1bf81b07 -1 de All - Demo - Joachim Eberhard - e62056ba675ad65d8854ab3c5ad4b3c0 14689 en Windows - Mini Game - Trekky + e62056ba675ad65d8854ab3c5ad4b3c0 14689 gb Windows - Mini Game - Trekky 22c7432dc97a821fcfccd480e93e3911 14689 nl Windows - Mini Game - Ben Castricum 6b10c9977cad9de503642059359792b1 14689 fr Windows - Mini Game - Ben Castricum 9684c161258d68e0d464d6cab7024b9c 14689 it Windows - Mini Game - Ben Castricum @@ -919,7 +919,7 @@ spyozon SPY Fox 3: Operation Ozone 7015b059ab72cff3a0ef9fb4d5e9889d -1 de Windows - - - andy482 be39a5d4db60e8aa736b9086778cb45c -1 gb Windows - - - - ebd0b2c8a387f18887282afe6cad894a 15317 en All - Demo - Kirben + ebd0b2c8a387f18887282afe6cad894a 15317 us All - Demo - Kirben a99c39ba65b6086be28aef576da69595 -1 fr Windows - Demo - Mevi 65563295c3a06493351870f20a1630cf 5235008 All All HE CUP Preview - sev -- cgit v1.2.3 From 0b487df96eb645fa81d53caa9c69d79f79a3b2fb Mon Sep 17 00:00:00 2001 From: Ben Castricum Date: Tue, 13 Jan 2015 20:06:49 +0100 Subject: SCUMM: Distinguish US/GB language for Pajama Sam games There is no GB version of Pajama Sam 1, so use EN as language --- devtools/scumm-md5.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index d369782bab..1744e649cd 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -650,12 +650,12 @@ moonbase Moonbase Commander ef71a322b6530ac45b1a070f7c0795f7 -1 en Windows Demo Demo - Kirben pajama Pajama Sam 1: No Need to Hide When It's Dark Outside - 672dec94b82f7f0877ebb5b5cf7f4bc1 -1 us All - - - khalek + 672dec94b82f7f0877ebb5b5cf7f4bc1 -1 en All - - - khalek 1d7a2e1ddcade791e2de0cfceac86725 -1 fr All - - - gist974, ThierryFR 4fa6870d9bc8c313b65d54b1da5a1891 -1 nl All - - - joostp a095e33061606d231ff37dca4c64c8ac -1 de All HE 99 - - Joachim Eberhard 898eaa21f79cf8d4f08db856244689ff 66505 en Windows HE 99 Updated - Joachim Eberhard - 37aed3f91c1ef959e0bd265f9b13781f -1 us All HE 100 Updated - Kirben + 37aed3f91c1ef959e0bd265f9b13781f 66599 en All HE 100 Updated - Kirben 4aa93cb30e485b728504ba3a693f12bf -1 ru Windows HE 100 - - sev 782393c5934ecd0b536eaf5fd541bd26 -1 en Windows HE 101 Updated - Jonathan c225bec1b6c0798a2b8c89ac226dc793 -1 en Wii HE 101 - - sanguinehearts -- cgit v1.2.3 From 9bb438c69c98911f1caba5e06d1a52dfeafb4d4c Mon Sep 17 00:00:00 2001 From: Ben Castricum Date: Tue, 13 Jan 2015 20:32:38 +0100 Subject: SCUMM: Add some missing file sizes in md5 table --- devtools/scumm-md5.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index 1744e649cd..187fb78e71 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -840,9 +840,9 @@ balloon Putt-Putt and Pep's Balloon-O-Rama bab0fb81dcb12b8930c5d850b8f2a7de 12800 de Windows HE 80 - - George Kormendi 145bd3373574feb668cc2eea2ec6cf86 -1 ru Windows HE 80 - - sev 27b2ef1653089fe5b897d9cc89ce784f -1 ru Windows HE 80 - - George Kormendi - 2232b0b9411575b1f9961713ebc9de61 -1 nl Windows HE 80 - - Ben Castricum - a22af0ad0e3126d19d22707b0267a37d -1 nl Windows HE 80 - - Ben Castricum - a56a05c6b865b9956639f8c51269e5ab -1 nl Mac HE 80 - - Ben Castricum + 2232b0b9411575b1f9961713ebc9de61 12800 nl Windows HE 80 - - Ben Castricum + a22af0ad0e3126d19d22707b0267a37d 12800 nl Windows HE 80 - - Ben Castricum + a56a05c6b865b9956639f8c51269e5ab 12800 nl Mac HE 80 - - Ben Castricum d7b247c26bf1f01f8f7daf142be84de3 -1 en Windows HE 99 Updated - iziku 8e3241ddd6c8dadf64305e8740d45e13 -1 en All HE 100 Updated - Kirben @@ -887,7 +887,7 @@ spyfox SPY Fox 1: Dry Cereal ba888e6831517597859e91aa173f945c -1 fr All - Demo - Kirben 73b8197e236da4bf49adc99fe8f5fa1b -1 de All - Demo - Joachim Eberhard 4edbf9d03550f7ba01e7f34d69b678dd -1 nl All HE 98.5 Demo - Kirben - f2ec78e50bdc63b70044e9758be10914 -1 nl Mac HE 98.5 Demo - Ben Castricum + f2ec78e50bdc63b70044e9758be10914 20141 nl Mac HE 98.5 Demo - Ben Castricum 9d4ab3e0e1d1ebc6ba8a6a4c470ed184 15943 us All HE 100 Demo - khalek spyfox2 SPY Fox 2: Some Assembly Required -- cgit v1.2.3 From 89dfd36b60f5ea2cc96aa0a0381b148e75e4a0c9 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 28 Sep 2015 19:23:58 -0400 Subject: CREATE_PROJECT: Add support for Visual Studio 2015 --- devtools/README | 4 +- devtools/create_project/create_project.cpp | 19 +- devtools/create_project/msbuild.cpp | 27 ++- devtools/create_project/msbuild.h | 1 + devtools/create_project/msvc.cpp | 10 +- devtools/create_project/msvc.h | 5 + devtools/create_project/msvc14/create_project.sln | 28 +++ .../create_project/msvc14/create_project.vcxproj | 223 +++++++++++++++++++++ .../msvc14/create_project.vcxproj.filters | 76 +++++++ devtools/create_project/visualstudio.cpp | 2 +- 10 files changed, 379 insertions(+), 16 deletions(-) create mode 100644 devtools/create_project/msvc14/create_project.sln create mode 100644 devtools/create_project/msvc14/create_project.vcxproj create mode 100644 devtools/create_project/msvc14/create_project.vcxproj.filters (limited to 'devtools') diff --git a/devtools/README b/devtools/README index 509048bfe0..e7ff94dc05 100644 --- a/devtools/README +++ b/devtools/README @@ -72,8 +72,8 @@ create_mort (Strangerke) create_project (LordHoto, Littleboy) -------------- - Creates project files for Visual Studio 2008, 2010, 2012, 2013, Xcode and - Code::Blocks out of the configure / Makefile based build system. + Creates project files for Visual Studio 2008, 2010, 2012, 2013, 2015, + Xcode and Code::Blocks out of the configure / Makefile based build system. It also offers a way to enable or disable certain engines and the use of external libraries similar to configure. Run the tool without any arguments for further help. diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index e4cb67134a..0611646eab 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -124,7 +124,7 @@ int main(int argc, char *argv[]) { setup.features = getAllFeatures(); ProjectType projectType = kProjectNone; - int msvcVersion = 9; + int msvcVersion = 12; bool useSDL2 = false; // Parse command line arguments @@ -176,7 +176,7 @@ int main(int argc, char *argv[]) { msvcVersion = atoi(argv[++i]); - if (msvcVersion != 9 && msvcVersion != 10 && msvcVersion != 11 && msvcVersion != 12) { + if (msvcVersion != 9 && msvcVersion != 10 && msvcVersion != 11 && msvcVersion != 12 && msvcVersion != 14) { std::cerr << "ERROR: Unsupported version: \"" << msvcVersion << "\" passed to \"--msvc-version\"!\n"; return -1; } @@ -453,6 +453,9 @@ int main(int argc, char *argv[]) { // 4250 ('class1' : inherits 'class2::member' via dominance) // two or more members have the same name. Should be harmless // + // 4267 ('var' : conversion from 'size_t' to 'type', possible loss of data) + // throws tons and tons of warnings (no immediate plan to fix all usages) + // // 4310 (cast truncates constant value) // used in some engines // @@ -510,6 +513,7 @@ int main(int argc, char *argv[]) { globalWarnings.push_back("4127"); globalWarnings.push_back("4244"); globalWarnings.push_back("4250"); + globalWarnings.push_back("4267"); globalWarnings.push_back("4310"); globalWarnings.push_back("4345"); globalWarnings.push_back("4351"); @@ -636,6 +640,7 @@ void displayHelp(const char *exe) { " 10 stands for \"Visual Studio 2010\"\n" " 11 stands for \"Visual Studio 2012\"\n" " 12 stands for \"Visual Studio 2013\"\n" + " 14 stands for \"Visual Studio 2015\"\n" " The default is \"9\", thus \"Visual Studio 2008\"\n" " --build-events Run custom build events as part of the build\n" " (default: false)\n" @@ -658,9 +663,9 @@ void displayHelp(const char *exe) { "Optional features settings:\n" " --enable- enable inclusion of the feature \"name\"\n" " --disable- disable inclusion of the feature \"name\"\n" - "\n" - "SDL settings:\n" - " --sdl2 link to SDL 2.0, instead of SDL 1.2\n" + "\n" + "SDL settings:\n" + " --sdl2 link to SDL 2.0, instead of SDL 1.2\n" "\n" " There are the following features available:\n" "\n"; @@ -921,7 +926,7 @@ const Feature s_features[] = { { "libz", "USE_ZLIB", "zlib", true, "zlib (compression) support" }, { "mad", "USE_MAD", "libmad", true, "libmad (MP3) support" }, { "vorbis", "USE_VORBIS", "libvorbisfile_static libvorbis_static libogg_static", true, "Ogg Vorbis support" }, - { "flac", "USE_FLAC", "libFLAC_static", true, "FLAC support" }, + { "flac", "USE_FLAC", "libFLAC_static win_utf8_io_static", true, "FLAC support" }, { "png", "USE_PNG", "libpng", true, "libpng support" }, { "faad", "USE_FAAD", "libfaad", false, "AAC support" }, { "mpeg2", "USE_MPEG2", "libmpeg2", false, "MPEG-2 support" }, @@ -1050,7 +1055,7 @@ bool producesObjectFile(const std::string &fileName) { } std::string toString(int num) { - return static_cast(&(std::ostringstream() << num))->str(); + return static_cast(&(std::ostringstream() << num))->str(); } /** diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp index 87c9066199..4698ebd303 100644 --- a/devtools/create_project/msbuild.cpp +++ b/devtools/create_project/msbuild.cpp @@ -55,9 +55,16 @@ int MSBuildProvider::getVisualStudioVersion() { if (_version == 12) return 2013; + if (_version == 14) + return 14; + error("Unsupported version passed to getVisualStudioVersion"); } +int MSBuildProvider::getSolutionVersion() { + return (_version < 14) ? _version + 1 : _version; +} + namespace { inline void outputConfiguration(std::ostream &project, const std::string &config, const std::string &platform) { @@ -116,7 +123,7 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri // Shared configuration project << "\t\n"; - std::string version = "v" + toString(_version) + "0"; + std::string version = "v" + toString(_version) + "0"; std::string llvm = "LLVM-vs" + toString(getVisualStudioVersion()); outputConfigurationType(setup, project, name, "Release|Win32", version); @@ -177,6 +184,13 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri project << "\t\n"; } + // Visual Studio 2015 automatically imports natvis files that are part of the project + if (name == PROJECT_NAME && _version == 14) { + project << "\t\n"; + project << "\t\t\n"; + project << "\t\n"; + } + project << "\t\n" "\t\n" "\t\n"; @@ -185,7 +199,7 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri // We override the normal target to ignore the exit code (this allows us to have a clean output and not message about the command exit code) project << "\t\t\n" << "\t\t\t\n" - << "\t\t\t\n" + << "\t\t\t\n" << "\t\t\n"; } @@ -305,6 +319,13 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i) libraries += *i + ".lib;"; + if (_version == 14) + { + std::string debug = isRelease ? "" : "d"; + libraries += "libvcruntime" + debug + ".lib;"; + libraries += "libucrt" + debug + ".lib;"; + } + project << "\t\t\n" "\t\t\t$(OutDir)" << ((setup.devTools || setup.tests) ? name : setup.projectName) << ".exe\n" "\t\t\t" << libraries << "%(AdditionalDependencies)\n" @@ -362,7 +383,7 @@ void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstrea "\t\t\t" << warnings << ";%(DisableSpecificWarnings)\n" "\t\t\t$(" << LIBS_DEFINE << ")\\include;.;" << prefix << ";" << prefix << "\\engines;" << (setup.tests ? prefix + "\\test\\cxxtest;" : "") << "$(TargetDir);%(AdditionalIncludeDirectories)\n" "\t\t\t" << definesList << "%(PreprocessorDefinitions)\n" - "\t\t\t" << ((setup.devTools || setup.tests) ? "Sync" : "") << "\n"; + "\t\t\t" << ((setup.devTools || setup.tests || _version == 14) ? "Sync" : "") << "\n"; #if NEEDS_RTTI properties << "\t\t\ttrue\n"; diff --git a/devtools/create_project/msbuild.h b/devtools/create_project/msbuild.h index 829657beff..f92e68ede8 100644 --- a/devtools/create_project/msbuild.h +++ b/devtools/create_project/msbuild.h @@ -49,6 +49,7 @@ protected: const char *getProjectExtension(); const char *getPropertiesExtension(); int getVisualStudioVersion(); + int getSolutionVersion(); private: struct FileEntry { diff --git a/devtools/create_project/msvc.cpp b/devtools/create_project/msvc.cpp index cdd2d8a7c1..dbfbcc128d 100644 --- a/devtools/create_project/msvc.cpp +++ b/devtools/create_project/msvc.cpp @@ -52,7 +52,7 @@ void MSVCProvider::createWorkspace(const BuildSetup &setup) { if (!solution) error("Could not open \"" + setup.outputDir + '/' + setup.projectName + ".sln\" for writing"); - solution << "Microsoft Visual Studio Solution File, Format Version " << _version + 1 << ".00\n"; + solution << "Microsoft Visual Studio Solution File, Format Version " << getSolutionVersion() << ".00\n"; solution << "# Visual Studio " << getVisualStudioVersion() << "\n"; // Write main project @@ -157,13 +157,17 @@ void MSVCProvider::createGlobalProp(const BuildSetup &setup) { outputGlobalPropFile(setup, properties, 64, x64Defines, convertPathToWin(setup.filePrefix), setup.runBuildEvents); } +int MSVCProvider::getSolutionVersion() { + return _version + 1; +} + std::string MSVCProvider::getPreBuildEvent() const { std::string cmdLine = ""; cmdLine = "@echo off\n" "echo Executing Pre-Build script...\n" - "echo.\n" - "@call "$(SolutionDir)../../devtools/create_project/scripts/prebuild.cmd" "$(SolutionDir)/../.." "$(TargetDir)"\n" + "echo.\n" + "@call "$(SolutionDir)../../devtools/create_project/scripts/prebuild.cmd" "$(SolutionDir)/../.." "$(TargetDir)"\n" "EXIT /B0"; return cmdLine; diff --git a/devtools/create_project/msvc.h b/devtools/create_project/msvc.h index 3a3eb98034..e75e131bd1 100644 --- a/devtools/create_project/msvc.h +++ b/devtools/create_project/msvc.h @@ -82,6 +82,11 @@ protected: */ virtual int getVisualStudioVersion() = 0; + /** + * Get the Solution version (used in the sln file header) + */ + virtual int getSolutionVersion(); + /** * Get the command line for the revision tool (shared between all Visual Studio based providers) */ diff --git a/devtools/create_project/msvc14/create_project.sln b/devtools/create_project/msvc14/create_project.sln new file mode 100644 index 0000000000..73f0b3569e --- /dev/null +++ b/devtools/create_project/msvc14/create_project.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.22609.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_project", "create_project.vcxproj", "{CF177559-077D-4A08-AABE-BE0FD35F6C63}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Debug|Win32.ActiveCfg = Debug|Win32 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Debug|Win32.Build.0 = Debug|Win32 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Debug|x64.ActiveCfg = Debug|x64 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Debug|x64.Build.0 = Debug|x64 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Release|Win32.ActiveCfg = Release|Win32 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Release|Win32.Build.0 = Release|Win32 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Release|x64.ActiveCfg = Release|x64 + {CF177559-077D-4A08-AABE-BE0FD35F6C63}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/devtools/create_project/msvc14/create_project.vcxproj b/devtools/create_project/msvc14/create_project.vcxproj new file mode 100644 index 0000000000..3c0345f49c --- /dev/null +++ b/devtools/create_project/msvc14/create_project.vcxproj @@ -0,0 +1,223 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {CF177559-077D-4A08-AABE-BE0FD35F6C63} + create_project + + + + Application + MultiByte + true + v140 + + + Application + MultiByte + true + v140 + + + Application + MultiByte + v140 + + + Application + MultiByte + v140 + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\ + $(Configuration)\ + $(SolutionDir)$(Configuration)\ + $(Configuration)\ + + + + Disabled + true + EnableFastChecks + MultiThreadedDebugDLL + Level4 + EditAndContinue + false + 4003;4512;4127 + Sync + + + Rpcrt4.lib;%(AdditionalDependencies) + true + MachineX86 + false + + + @echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc14\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc12\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\codeblocks\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\iphone\" + + + + + Disabled + EnableFastChecks + MultiThreadedDebugDLL + Level4 + ProgramDatabase + false + 4003;4512;4127 + + + Rpcrt4.lib;%(AdditionalDependencies) + true + false + + + @echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc14\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc12\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\codeblocks\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\iphone\" + + + + + MaxSpeed + true + MultiThreadedDLL + true + Level3 + ProgramDatabase + 4003;4512;4127 + true + + + Rpcrt4.lib;%(AdditionalDependencies) + true + true + true + MachineX86 + + + @echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc14\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc12\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\codeblocks\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\iphone\" + + + + + + + + + MaxSpeed + true + MultiThreadedDLL + true + Level3 + ProgramDatabase + 4003;4512;4127 + true + + + Rpcrt4.lib;%(AdditionalDependencies) + true + true + true + + + @echo off +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc14\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc12\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc11\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc10\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc9\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\msvc8\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\codeblocks\" +xcopy /Y "$(TargetPath)" "$(SolutionDir)\..\..\..\dists\iphone\" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/devtools/create_project/msvc14/create_project.vcxproj.filters b/devtools/create_project/msvc14/create_project.vcxproj.filters new file mode 100644 index 0000000000..16c6df081d --- /dev/null +++ b/devtools/create_project/msvc14/create_project.vcxproj.filters @@ -0,0 +1,76 @@ + + + + + {2e3580c8-ec3a-4c81-8351-b668c668db2a} + + + {31aaf58c-d3cb-4ed6-8eca-163b4a9b31a6} + + + {f980f6fb-41b6-4161-b035-58b200c85cad} + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + scripts + + + scripts + + + scripts + + + scripts + + + + + scripts + + + \ No newline at end of file diff --git a/devtools/create_project/visualstudio.cpp b/devtools/create_project/visualstudio.cpp index 9b928bf520..96fdbdf27a 100644 --- a/devtools/create_project/visualstudio.cpp +++ b/devtools/create_project/visualstudio.cpp @@ -230,7 +230,7 @@ void VisualStudioProvider::outputGlobalPropFile(const BuildSetup &setup, std::of "\t\tDisableSpecificWarnings=\"" << warnings << "\"\n" "\t\tAdditionalIncludeDirectories=\".\\;" << prefix << ";" << prefix << "\\engines;$(" << LIBS_DEFINE << ")\\include;$(" << LIBS_DEFINE << ")\\include\\SDL;" << (setup.tests ? prefix + "\\test\\cxxtest;" : "") << "$(TargetDir)\"\n" "\t\tPreprocessorDefinitions=\"" << definesList << "\"\n" - "\t\tExceptionHandling=\"" << ((setup.devTools || setup.tests) ? "1" : "0") << "\"\n"; + "\t\tExceptionHandling=\"" << ((setup.devTools || setup.tests || _version == 14) ? "1" : "0") << "\"\n"; #if NEEDS_RTTI properties << "\t\tRuntimeTypeInfo=\"true\"\n"; -- cgit v1.2.3 From fbcf667b6a57593a2b85622ad1e1380c8aef7210 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 12 Oct 2015 14:39:28 -0400 Subject: CREATE_PROJECT: Cleanup and turn off exception handling again --- devtools/create_project/create_project.cpp | 8 +++++++- devtools/create_project/msbuild.cpp | 5 ++--- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'devtools') diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 0611646eab..0aba511491 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -471,6 +471,8 @@ int main(int argc, char *argv[]) { // 4512 ('class' : assignment operator could not be generated) // some classes use const items and the default assignment operator cannot be generated // + // 4577 ('noexcept' used with no exception handling mode specified) + // // 4702 (unreachable code) // mostly thrown after error() calls (marked as NORETURN) // @@ -513,7 +515,6 @@ int main(int argc, char *argv[]) { globalWarnings.push_back("4127"); globalWarnings.push_back("4244"); globalWarnings.push_back("4250"); - globalWarnings.push_back("4267"); globalWarnings.push_back("4310"); globalWarnings.push_back("4345"); globalWarnings.push_back("4351"); @@ -527,6 +528,11 @@ int main(int argc, char *argv[]) { globalWarnings.push_back("6385"); globalWarnings.push_back("6386"); + if (msvcVersion == 14) { + globalWarnings.push_back("4267"); + globalWarnings.push_back("4577"); + } + projectWarnings["agi"].push_back("4510"); projectWarnings["agi"].push_back("4610"); diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp index 4698ebd303..a326bd721a 100644 --- a/devtools/create_project/msbuild.cpp +++ b/devtools/create_project/msbuild.cpp @@ -319,8 +319,7 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i) libraries += *i + ".lib;"; - if (_version == 14) - { + if (_version == 14) { std::string debug = isRelease ? "" : "d"; libraries += "libvcruntime" + debug + ".lib;"; libraries += "libucrt" + debug + ".lib;"; @@ -383,7 +382,7 @@ void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstrea "\t\t\t" << warnings << ";%(DisableSpecificWarnings)\n" "\t\t\t$(" << LIBS_DEFINE << ")\\include;.;" << prefix << ";" << prefix << "\\engines;" << (setup.tests ? prefix + "\\test\\cxxtest;" : "") << "$(TargetDir);%(AdditionalIncludeDirectories)\n" "\t\t\t" << definesList << "%(PreprocessorDefinitions)\n" - "\t\t\t" << ((setup.devTools || setup.tests || _version == 14) ? "Sync" : "") << "\n"; + "\t\t\t" << ((setup.devTools || setup.tests) ? "Sync" : "") << "\n"; #if NEEDS_RTTI properties << "\t\t\ttrue\n"; -- cgit v1.2.3 From 70c42f26b252307a4721e67321dec958272b8752 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Fri, 28 Aug 2015 01:45:02 +0200 Subject: SCUMM: Add Japanese Windows Freddi md5 --- devtools/scumm-md5.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'devtools') diff --git a/devtools/scumm-md5.txt b/devtools/scumm-md5.txt index ffde276a3d..d758111ff1 100644 --- a/devtools/scumm-md5.txt +++ b/devtools/scumm-md5.txt @@ -492,6 +492,7 @@ freddi Freddi Fish 1: The Case of the Missing Kelp Seeds 5ebb57234b2fe5c5dff641e00184ad81 -1 fr Windows HE 73 - - gist974 cf8ef3a1fb483c5c4b1c584d1167b2c4 -1 de Windows HE 73 - - Oncer 1f2e62b5a9c50589fc342285a6bb3a27 -1 he Windows HE 73 - - e_orz + 64a22be96d679018696e5c8d3ca8b71d 26375 jp Windows HE 73 - - sev 507bb360688dc4180fdf0d7597352a69 26402 se Windows HE 73 - - Sven Arvidsson df047cc4792150f601290357566d36a6 -1 us All HE 90 Updated - khalek e44ea295a3f8fe4f41983080dab1e9ce -1 fr Mac HE 90 Updated - ThierryFR -- cgit v1.2.3 From 13f30fb46bbd634de22034389561c93bc15d9d14 Mon Sep 17 00:00:00 2001 From: athrxx Date: Tue, 10 Nov 2015 18:38:33 +0100 Subject: KYRA: (LOK/PC-98) - add missing string resource --- devtools/create_kyradat/create_kyradat.cpp | 2 +- devtools/create_kyradat/resources/lok_pc98_japanese.h | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'devtools') diff --git a/devtools/create_kyradat/create_kyradat.cpp b/devtools/create_kyradat/create_kyradat.cpp index 441f315c8d..e064e899de 100644 --- a/devtools/create_kyradat/create_kyradat.cpp +++ b/devtools/create_kyradat/create_kyradat.cpp @@ -45,7 +45,7 @@ enum { - kKyraDatVersion = 86 + kKyraDatVersion = 87 }; const ExtractFilename extractFilenames[] = { diff --git a/devtools/create_kyradat/resources/lok_pc98_japanese.h b/devtools/create_kyradat/resources/lok_pc98_japanese.h index 0cbc96aeb9..0a70ab945e 100644 --- a/devtools/create_kyradat/resources/lok_pc98_japanese.h +++ b/devtools/create_kyradat/resources/lok_pc98_japanese.h @@ -222,10 +222,11 @@ static const char *const k1PoisonGoneStringPC98Japanese[2] = { static const StringListProvider k1PoisonGoneStringPC98JapaneseProvider = { ARRAYSIZE(k1PoisonGoneStringPC98Japanese), k1PoisonGoneStringPC98Japanese }; -static const char *const k1ThePoisonStringsPC98Japanese[3] = { +static const char *const k1ThePoisonStringsPC98Japanese[4] = { "\x93\xC5\x82\xBE\x81""E""\x81""E""\x81""E", "\x8C\xC4\x8B""z""\x82\xAA\x8F""o""\x97\x88\x82\xC8\x82\xA2\x81""E""\x81""E""\x81""E", - "\x8B""C""\x95\xAA\x82\xAA\x88\xAB\x82\xA2\x81""E""\x81""E""\x81""E" + "\x8B""C""\x95\xAA\x82\xAA\x88\xAB\x82\xA2\x81""E""\x81""E""\x81""E", + "\x82\xA0\x82\xCC\x8E\xD6\x82\xCD""\r""\x93\xC5\x8E\xD6\x82\xC9\x82\xBF\x82\xAA\x82\xA2\x82\xC8\x82\xA2\x81""I" }; static const StringListProvider k1ThePoisonStringsPC98JapaneseProvider = { ARRAYSIZE(k1ThePoisonStringsPC98Japanese), k1ThePoisonStringsPC98Japanese }; -- cgit v1.2.3