37 Commits

Author SHA1 Message Date
Michael b054ef0ecc CREATE_PROJECT: use C++11-style for each loops instead of iterators 2026-02-11 01:28:21 +02:00
Le Philousophe 3dc77757fa CREATE_PROJECT: Fix memory leaks and uninitialized variable 2025-11-20 20:25:37 +01:00
Le Philousophe 96be501f58 CREATE_PROJECT: Remove useless attribute from ProjectProvider
Move it to MSVC where it's really needed.
2025-11-20 20:25:37 +01:00
elasota 667cb63823 DEVTOOLS: Add precompiled header support to MSBuild/MSVC. 2023-09-29 21:37:10 +01:00
Walter Agazzi a6fa65e87a CREATE_PROJECT: Add option to use XCFramework in iOS, tvOS and macOS
The introduction of Apple M1 processor, which is based on the arm64
architecture, makes it impossible to use fat static libraries for iOS
and tvOS since building libraries for the simulators targeting the
arm64 architecture conflicts with the iOS and tvOS native arm64
libraries. It's not possible to have two arm64 libraries targeting
different platforms in the same fat library.

Apple resolves this problem with XCFrameworks. Each XCFramework
contain an Info.plist specifying which platforms and architectures it
targets.

The new iOS and tvOS library package, scummvm-ios7-libs-v3, utilize
the XCFramework format and includes pre-compiled libraries for both
iOS and tvOS with corresponding simulator.

Add the option to use XCFramework in create_project by passing the
switch '--use-xcframework'

Implement support to use XCFrameworks for iOS, tvOS and macOS. If not
passing '--use-xcframework' to create_project, legacy behaviour is
applied.

This commit also add support for mikmod for tvOS.
2023-04-24 22:34:55 +02:00
elasota 843776dd85 DEVTOOLS: Promote numerous VS warnings to errors.
Changes the following warnings to errors:
C4701: potential use of uninitialized local variable
C4703: potential use of uninitialized local pointer
C4456: declaration hides previous local declaration
C4003: not enough arguments for function-like macro invocation
C4840: use of non-trivial class as an argument to a variadic function
C4805: unsafe mix of bool and int in a numeric operation or comparison
C4305: truncation of double to float or int to bool
C4366: address taken of unaligned field and used as an aligned pointer
C4315: object constructed into an unaligned field with a constructor that expects it to be aligned
2022-12-25 16:31:57 +01:00
Paweł Kołodziejski 2ac26ade3e DEVTOOLS: Xcode project: Add shaders files only for specific enabled engines 2022-03-07 11:08:57 +01:00
Orgad Shaneh aa24872dc6 CREATE_PROJECT: Accept std::ostream in writeFileListToProject 2022-01-14 12:53:21 +02:00
Orgad Shaneh c20f81e430 CREATE_PROJECT: Sparkle override/final 2022-01-14 12:53:21 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
SupSuper e9b3974ff8 CREATE_PROJECT: Replace duplicate filename check with unique object files 2020-11-11 04:12:36 +00:00
D G Turner 48ece56baf DEVTOOLS: Fix Performance Issue Warning in create_project.
This is the last fix for bug Trac #10655.
2018-10-07 08:57:03 +01:00
Colin Snover 2f32eeab9d CREATE_PROJECT: Fix typo in Xcode generator interface 2017-09-10 22:17:12 -05:00
Vincent Bénony c7e65e60dd DEVTOOL: Formatting 2016-01-06 16:20:31 +01:00
Vincent Bénony 4687ff6d6d DEVTOOL: Cleanup 2016-01-06 16:19:11 +01:00
Vincent Bénony 64f50761ec IOS: Merge master 2016-01-06 16:19:03 +01:00
Vincent Bénony ee73bb428f IOS: Compute MD5 identifiers instead of random
To avoid recompiling the wole project each time we use the create_project tool.
2016-01-06 16:17:36 +01:00
Vincent Bénony 433808b7dc IOS: Properly adds the resource files to the targets 2016-01-06 15:35:35 +01:00
Vincent Bénony ef2903c509 IOS : Rename a function 2016-01-06 15:35:35 +01:00
Vincent Bénony 2bffce5e72 IOS: Adds the image asset catalog to the iOS targer 2016-01-06 15:35:34 +01:00
Vincent Bénony b58ec8f15a IOS: Fixes various iOS compilation flags, and missing frameworks 2016-01-06 15:35:33 +01:00
Vincent Bénony 283eac7e5f IOS: Create a separate for adding resources 2016-01-06 15:35:32 +01:00
Johannes Schickel 70a4047a78 DEVTOOLS: Adjust enum constant names to match our conventions. 2015-12-12 06:54:57 +01:00
Johannes Schickel d09c3e28a6 DEVTOOLS: Remove 'explicit' keyword from multi parameter constructors.
This does not make sense in C++98. For C++11 this only prevents Foo x = {...}
initialization, which we can't use anyway.
2015-12-12 06:54:57 +01:00
Johannes Schickel c9d7299e65 DEVTOOLS: Cleanup code. 2015-12-12 06:54:57 +01:00
Johannes Schickel 3ad5ad57e2 DEVTOOLS: Use default copy constructor.
The formerly user supplied copy constructor was not identical to the default
generated, but the output of create_project for xcode is unchanged.
2015-12-12 06:54:57 +01:00
Johannes Schickel 50807b3b01 DEVTOOLS: Run astyle over xcode.[cpp/h].
Manual fix up included.
2015-12-12 06:54:57 +01:00
Johannes Schickel 5d1df1c293 DEVTOOLS: Prefix varibles in structs/classes with '_' in xcode.[h/cpp].
This silences some variables and increases consistency with our code
formatting conventions.
2015-12-12 06:54:43 +01:00
Filippos Karapetis bf06576498 CREATE_PROJECT: Rename XCodeProvider -> XcodeProvider 2015-07-20 01:00:09 +03:00
Einar Johan Trøan Sømåen 7de2f25466 CREATE_PROJECT: Remove leftover _rootGroups. 2015-04-09 20:02:18 +02:00
Einar Johan Trøan Sømåen f4a9f2035b CREATE_PROJECT: Add the product files to a group in XCode aswell (makes things easier when configuring build-schemes) 2015-04-09 20:02:18 +02:00
Einar Johan Trøan Sømåen 790f7dc017 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.
2015-04-09 20:02:17 +02:00
Einar Johan Trøan Sømåen 219a43d745 CREATE_PROJECT: Revert idea about createOneProjectPerEngine. 2015-04-09 20:02:17 +02:00
Einar Johan Trøan Sømåen 8cd84a0152 CREATE_PROJECT: Define a group for the Frameworks, and add it to the mainGroup, so that the buildPhase can figure things out. 2015-04-09 20:02:17 +02:00
Einar Johan Trøan Sømåen 9ef6e59805 CREATE_PROJECT: Make ProjectProvider able to work properly with subclasses that want to create one single project. 2015-04-09 20:02:15 +02:00
Julien 9854f1b486 CREATE_PROJECT: Implement basic XCode provider
This only outputs a skeleton project with no files and targets yet
2011-06-02 17:29:36 -04:00
Julien 9717d5be6f CREATE_PROJECT: Add stubs for Xcode provider 2011-06-01 17:34:32 -04:00