Commit graph

604 commits

Author SHA1 Message Date
sluicebox
52d2fb69b1 CREATE_PROJECT: Fix crash when all engines disabled 2024-01-02 00:34:56 -08:00
Eugene Sandulenko
38ed0c7b77
DISTS: Rename cloud_connection.zip to helpdialog.zip and add it to the dist lists 2023-12-16 21:12:56 +01:00
Martin Gerhardy
e024882f8b
CREATE_PROJECT: use windows subsystem setting for cmake, too
see 335f90b136
2023-12-14 18:01:21 +01:00
Martin Gerhardy
515e587255
CREATE_PROJECT: pass-by-reference 2023-12-14 18:01:11 +01:00
Thierry Crozat
95a060e4fe AUDIO: Add a basic soundfont for fluidsynth
The soundfont was already included in the Libretro port. It is
now included in all platforms.
2023-12-03 16:17:32 +00:00
Eugene Sandulenko
90bd56e409
BUILD: Added fonts-cjk.dat to selected platforms
So far, it was added to all modern desktops, Android, iOS and Switch
2023-11-20 20:59:17 +01:00
Eugene Sandulenko
de9287759b
Revert "IOS7: Disable SCUMMVM_NEON in iOS builds"
This reverts commit f6585ae5f5.

Since the NEON codepath was fixed by fracturehill
2023-11-20 15:25:52 +01:00
sluicebox
335f90b136 CREATE_PROJECT: Set MSVC default subsystem to CONSOLE
MSVC builds now use the CONSOLE subsystem by default,
just like all our other Windows builds.

--use-windows-subsystem is now available to generate
projects with the WINDOWS subsystem.
2023-11-15 14:32:27 -08:00
Einar Johan Trøan Sømåen
f7e7d6e3f5 CREATE_PROJECT: Explicitly add /opt/local/lib to support MacPorts
This should hopefully be fairly harmless for other platforms,
as well as for Homebrew-users. But it doesn't seem like CMake
adds /opt/local/lib to it's linking setup by default.
2023-11-05 22:12:55 +01:00
Einar Johan Trøan Sømåen
37fde9109c CREATE_PROJECT: Explcitly add C++11 support globally
We have C++11 features in use outside engines as well now.
2023-11-05 22:12:55 +01:00
Lars Sundström
94d859f790 DISTS: IOS7: Add ios-help.zip
Add zip file containing images for the help section for the iOS
port.
2023-10-11 23:14:37 +02:00
Thierry Crozat
04a7fa9d4b CREATE_PROJECT: Add missing classicmacfonts.dat in Xcode solution 2023-10-10 22:59:12 +01:00
Lars Sundström
f6585ae5f5 IOS7: Disable SCUMMVM_NEON in iOS builds
Due to the current graphic problems when enabling the NEON
optimisations, disable it for the iOS port until the problems
have been fixed.
2023-10-10 20:55:48 +02:00
elasota
667cb63823 DEVTOOLS: Add precompiled header support to MSBuild/MSVC. 2023-09-29 21:37:10 +01:00
Walter Agazzi
d117a48aaf DISTS: Keep Catharon license original naming 2023-09-03 22:27:43 +02:00
Walter Agazzi
ab6b7b0360 DISTS: Add Catharon license and include in builds 2023-09-03 22:27:43 +02:00
Lars Sundström
76af53dc7f CREATE_PROJECT: Define SCUMMVM_NEON for iphoneos and tvos
Add the definition of SCUMMVM_NEON in create_project for the iOS
and tvOS targets. Do not add the same definition to corresponding
simulators since they can run on x86_64 hosts, which for obvious
reasons lacks support for NEON.
2023-09-03 22:26:37 +02:00
Cameron Cawley
a7c8056d73 ULTIMA: Split Ultima 8 resources into a separate archive 2023-08-28 21:51:17 +02:00
elasota
bf3e902864 CREATE_PROJECT: Quiet VS "structure was padded due to alignment specifier" warning 2023-08-04 18:35:21 +02:00
sluicebox
e62200161b CREATE_PROJECT: Fix msvc warning 2023-07-22 13:08:48 -07:00
Lars Sundström
6078586aec CREATE_PROJECT: Correct spelling of definition and shader file name
The GRIM define was incorrectly spelled GRIME which cause no shader
files to be included to the project preventing the game to start.

The freescape shader file freescape_triange.vertex also contained
a spelling error preventing the game to start.
2023-07-03 21:50:32 +02:00
Lars Sundström
fb4f7d6de2 IOS7: Remove old IOS7 graphic handling
Delete the old graphic handling in the IOS7 backend which is not
used anymore after implementing iOSGraphicsManager.

The Accelerate framework is not used anymore. The OpenGLGraphics
manager handles the different color formats.
2023-07-03 21:50:32 +02:00
Lars Sundström
e6232547d5 IOS7: Add iOSGraphicsManager class
The ios7 backend implements the graphic handling in the backend code.
iOS supports OpenGL through the OpenGL Framework since iOS 2.0. It's
marked as deprecated but is still shipped with the SDKs for iPhoneOS
and tvOS and will hopefully be so for some time.
The ios7 backend can therefore utilize the OpenGLGraphicsManager to
handle all graphics.

Implement an iOSGraphicsManager class that can be used in the ios7
backend. The iOSGraphicsManager will require some callback functions
in the ios7 backend. createOpenGLContext() will be called to ask the
backend to create an OpenGL context in which the graphic manager can
draw. The function returns the ID of the renderbuffer which shall be
used when creating the framebuffer object this differ iOS from other
platforms). A custom RenderBufferTarget class is added to address
this.

destroyOpenGLContext() will be called to make sure that the old GLES
context is not reused. notifyContextDestroy() does call the function
OpenGLContext.reset() but that will not destroy the context.

refreshScreen() will be called to ask the backend to present the
drawn graphics on the screen. getSystemHiDPIScreenFactor() is called
to get the screen scaling factor. getScreenWidth() and
getScreenHeight() are called to get the width and height of the
surface to draw on.

This commit adds the class but the ios7 backend doesn't make use of
it quite yet. To use it require the ios7 to be a child class of the
ModularGraphicsBackend. That change requires a lot of changes which
will be targeted in separate commits.

Update docportal and github ci worker to only disable the feature
opengl_classic_game since opengl and opengl_shaders are required to
compile the OpenGLGraphicsManager.
2023-07-03 21:50:32 +02:00
Thierry Crozat
0eca37a262 BACKENDS: Remove old iPhone backend
This backend was no longer maintained and have had no release
and no daily builds for several years.
2023-05-31 19:31:19 +01:00
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
Lars Sundström
d66538a133 CREATE_PROJECT: Set bitcode as disabled as default in Xcode
Apple never required bitcode to be enabled and with Xcode 14
bitcode is deprecated.

Set bitcode to disabled for iOS and tvOS projects. Else it will
be default on and give a build error due to the libraries in
scummvm-ios7-libs-v3 doesn't include bitcode.
2023-05-02 08:02:12 +02: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
Einar Johan Trøan Sømåen
0c4190679f BUILD: Add support for flagging opengl_game_classic as an engine dep. 2023-04-29 13:01:08 +02:00
elasota
36be0befad CREATE_PROJECT: Exclude MT32Emu source files if the feature is disabled. 2023-04-29 12:15:50 +02:00
Thierry Crozat
a0e32ee370 IOS7: Remove support for non-sandboxed mode 2023-04-26 22:31:31 +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
Donovan Watteau
db9f13d475 CREATE_PROJECT: Add libmikmod support 2023-04-10 20:14:22 +02:00
neuromancer
4f29dd4299 FREESCAPE: renamed shaders filenames and added them into shader.dat 2023-04-02 15:56:10 +02:00
Eugene Sandulenko
741be7bab5
CREATE_PROJECT: Fix warnings 2023-03-30 16:59:49 +02:00
Eugene Sandulenko
3a8312c072
DISTS: Added missing engine-data files to various lists 2023-03-17 13:37:26 +01:00
Eugene Sandulenko
db16979e52
DEVTOOLS: Add missing freescape.dat to Xcode project 2023-03-17 11:32:31 +01:00
Orgad Shaneh
5214c04718 CREATE_PROJECT: Add required libraries for enet on Windows/CMake 2023-03-16 15:08:08 +01:00
Orgad Shaneh
6fb159f3f3 CREATE_PROJECT: Support Windows specific libraries for features
Use it for tts instead of the current hack.
2023-03-16 15:08:08 +01:00
Orgad Shaneh
45dde26fc5 CREATE_PROJECT: Simplify feature libraries initialization 2023-03-16 15:08:08 +01:00
Donovan Watteau
18ab6803d6 JANITORIAL: Fix various "an" typos in comments 2023-03-16 14:47:28 +01:00
Eugene Sandulenko
43d7792d4e
DEVTOOLS: Add USE_SDL2 to Xcode project 2023-03-09 01:32:54 +01:00
Donovan Watteau
5c2a6c17f2 CONFIGURE: Define USE_SDL2 in the preprocessor when found 2023-03-09 01:30:34 +01:00
Donovan Watteau
eec598892a CREATE_PROJECT: Add libvpx support for MSVC 2023-03-09 01:29:55 +01:00
Donovan Watteau
37e3146f49 JANITORIAL: CREATE_PROJECT: Fix a small typo 2023-03-07 13:52:18 +01:00
Little Cat
bd1872c2ab BACKENDS: ENET: Now compiles on Windows. 2023-03-06 00:07:13 +01:00
Little Cat
c16244a23a BACKENDS: ENET: Compile stable 1.3.17 source. 2023-03-06 00:07:13 +01:00
Little Cat
1a50e10a83 BACKENDS: ENET: Now compiles and works on MSVC. 2023-03-06 00:07:13 +01:00
Eugene Sandulenko
10dda78ecc
DISTS: Include MKV license in distribution packages 2023-03-05 21:47:13 +01:00
Eugene Sandulenko
53163f427a DEVTOOLS: Added libvpx support to create_project 2023-03-05 21:29:03 +01:00