Commit Graph
56 Commits
Author SHA1 Message Date
elasota b24d281748 CREATE_PROJECT: Add --libs-path command line parameter that can be used in place of setting the SCUMMVM_LIBS environment var 2023-05-14 23:04:04 +03:00
SupSuper e396d34320 CREATE_PROJECT: Remove deprecated --use-canonical-lib-names
It's always the default
2023-04-29 13:16:08 +02:00
SupSuper d71a717b87 CREATE_PROJECT: Add --vcpkg option to MSVC generation 2023-04-29 13:16:08 +02: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
Donovan Watteau 18ab6803d6 JANITORIAL: Fix various "an" typos in comments 2023-03-16 14:47:28 +01: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
Orgad Shaneh 7998025b98 CREATE_PROJECT: Centralize toUpper 2022-01-18 09:24:29 +02:00
Orgad Shaneh aa24872dc6 CREATE_PROJECT: Accept std::ostream in writeFileListToProject 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
sluicebox 16bf767de3 CREATE_PROJECT: Add --include-dir and --library-dir
Additional include and library directories can now be added.

This is most useful to Xcode Mac projects where a vanilla Homebrew setup
requires manually adding five directories through the Xcode UI and then
repeating that every time the project needs to be regenerated.

Now create_project can be scripted to regenerate a working Mac project
without any extra Xcode steps.
2021-11-06 19:08:06 -05:00
sluicebox 2bca5da803 WIN32: Make UNICODE the default build configuration 2021-07-14 18:41:02 -05:00
sluicebox 1f253b805c CREATE_PROJECT: Add --use-windows-unicode 2021-06-29 12:38:01 -05:00
Donovan Watteau 5a78e1350b CREATE-PROJECT: Provide a stub for "override" to older compilers
msbuild.h makes uses of the "override" keyword, so borrow the compat
macro from c++11-compat.h to make this work on older compilers,
such as the ones found on Mac OS X Leopard.
2021-02-09 13:33:56 -08:00
Henrik "Henke37" Andersson ad09e09af5 CREATE-PROJECT: easy access to named features 2020-11-12 00:54:06 +00:00
SupSuper b0bc795999 CREATE_PROJECT: Don't include files with the same name but different paths 2020-11-11 10:24:59 +00:00
SupSuper e9b3974ff8 CREATE_PROJECT: Replace duplicate filename check with unique object files 2020-11-11 04:12:36 +00:00
Martin Gerhardy 7be30d492b CREATE_PROJECT: fixed cmake generator
* Support for pkg-config was added
* Shortened the CMakeLists.txt by more than 4000 lines
* Added macro for feature detection
* Configure stage is reporting missing libs as error now (they were reported as compile errors during the build before)
* Link the scummvm-detection lib (this was missing before)
* Added missing defines like DETECTION_STATIC and USE_SDL2
* Group impl and header files in src file list to shorten the cmake script
* Unified indention for generated script
2020-11-08 11:30:25 +01:00
Henrik "Henke37" Andersson 803d8f1ba5 CREATE_PROJECT: Put detection in a separate project
Keeps the main project clean and is a prerequisite for loading detection as a plugin
2020-11-03 07:10:13 +00:00
aryanrawlani28 58a9de8092 DEVTOOLS: CREATE_PROJECT: Use map instead of unordered_map
- No C11 support yet, revert to use map to fix build
2020-10-03 14:56:36 +02:00
aryanrawlani28 de56694f53 DEVTOOLS: CREATE_PROJECT: Support static detection features
- This allows apps that use create_project to build with statically linked detection features.
- Also add support to write an addtional file - detection_tables.h inside engines/.
2020-10-03 14:56:36 +02:00
SupSuper 59d9975912 CREATE_PROJECT: Remove obsolete BuildSetup libraries property
Every generator manages their libraries, so this is no longer used
2020-08-20 23:54:32 +02:00
Michał Janiszewski bb9dddcd04 CREATE_PROJECT: JANITORIAL: Apply code formatting 2020-07-15 15:30:55 +02:00
SupSuper 7a5c4e6121 CREATE_PROJECT: Remove C++11 2020-07-15 15:30:55 +02:00
Michał Janiszewski c763e56d57 CREATE_PROJECT: Address review comments 2020-07-15 15:30:55 +02:00
Michał Janiszewski 3d3b0124ad CREATE_PROJECT: Make MSVC project understand more architectures 2020-07-15 15:30:55 +02:00
Michał Janiszewski a23b1789db CREATE_PROJECT: Add ability to remove feature from setup 2020-07-15 15:30:55 +02:00
Michał Janiszewski 0de86d6fbf CREATE_PROJECT: Add option to use canonical library names
This allows for easier plugging in of alternative providers of libraries
2020-07-15 15:30:55 +02:00
SupSuper 558b07584e CREATE_PROJECT: Use name-based UUIDs for MSVC projects
This keeps the project UUIDs consistent between regenerations,
avoiding excessive workspace reloads.
2019-06-19 00:15:48 +03:00
SupSuper fd0d65496e CREATE_PROJECT: Auto-detect Visual Studio version if not specified
This removes the need for separate scripts for every version
2019-04-20 07:47:25 -04:00
SupSuper 5c0529abc2 CREATE_PROJECT: Refactor Visual Studio version differences
Moved most generation differences to a MSVCVersion class, makes it
easier to support new versions without tracking down if-checks everywhere.
2019-04-20 07:47:25 -04:00
SupSuper 3091345af3 MSVC: Update post-build installer for Inno Setup 2018-12-23 18:39:06 +02:00
Cameron Cawley 8fa2f90a26 CREATE_PROJECT: Support building with Tremor instead of Vorbis 2018-11-27 22:58:02 +00:00
Adrian Frühwirth cee4d6b853 JANITORIAL: Fix trailing whitespace 2018-05-24 15:30:55 +02:00
Thierry Crozat 2f4d14aba5 CREATE_PROJECT: Disable engines for which required features are not available 2017-02-06 23:18:02 +00:00
Filippos Karapetis c69eb82527 CREATE_PROJECT: Switch SDL backend to SDL2 by default
This adapts create_project with the changes in de04a68c06
2016-08-22 13:09:49 +03:00
Johannes Schickel dfaf97dda7 DEVTOOLS: Improve SDL2 support in create_project.
This adapts MSBuild and XCode project generators to output project files which
can be used to build the SDL backend with SDL2 easily.
2016-03-24 01:26:05 +01:00
Johannes Schickel 567a6b4712 DEVTOOLS: Slight formatting fix. 2016-03-24 01:26:05 +01:00
Vincent Bénony 64f50761ec IOS: Merge master 2016-01-06 16:19:03 +01:00
Vincent Bénony a8d65195ce IOS: Adds an helper function 2016-01-06 15:35:35 +01:00
Vincent Bénony 283eac7e5f IOS: Create a separate for adding resources 2016-01-06 15:35:32 +01:00
Johannes Schickel 84ac8fa735 DEVTOOLS: A few formatting fixes. 2015-12-12 06:54:58 +01:00
Johannes Schickel c00ab00f25 DEVTOOLS: Factor out function to create directories in create_project. 2013-11-24 00:48:01 +00:00
Johannes Schickel 6e29e1abee DEVTOOLS: Adapt create_project for new configure.engine files.
I could not try any generated project files since I do not have access to
the IDEs.
2013-11-24 00:48:01 +00:00
Eugene Sandulenko ca5804a253 DEVTOOLS: Make Coverity happy.
This is mainly due to unhandled clang __has_featrure() buit-in.
I do not like this hack, but Coverity proved to be a very good tool for us.
2013-09-27 12:28:25 +03:00
Littleboy 8b56d0792c CREATE_PROJECT: Remove usage of std::to_string() 2013-09-11 21:22:06 -04:00
Littleboy a949a88220 CREATE_PROJECT: Add support for tests
- Added --tests command line switch
 - Parse test/module.mk to extract the list of test folders
 - Automatically run tests after a successful build
2013-07-07 12:10:31 -04:00
Littleboy 9821f30224 CREATE_PROJECT: Add config option to disable language extensions and edit and continue (per-project) 2012-09-05 20:18:24 -04:00
Littleboy 67751f77c8 CREATE_PROJECT: Output Groups and File references in XCode provider 2012-07-14 16:33:41 -04:00
Christoph Mallon a78b2d777d JANITORIAL: Remove extra semicolons. 2011-11-27 12:54:22 +01:00
Littleboy 7cfed737d7 CREATE_PROJECT: Add support for creating Visual Studio projects for the dev tools
- Move project name and description to BuildSetup structure
 - Add list of tools to generate project for (similar to the list of features)
2011-09-06 19:17:39 -04:00