mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-21 19:51:49 +00:00

The Apple TV OS requires a different type of storyboard than iOS. Also, the Info.plist file differ since the tvOS platform doesn't handle different orientations. The Apple TV OS also need a different set of icons with different resolutions more suitable for TV screens. The application icons are required to be of layered type, which means that a single PNG file is not accepted as an icon file. The icons must have at least two layers, hence the ScummVM icon is defined by a back image with just the background color and a front image with the ScummVM logo. The icons are then put together when archiving the application in Xcode to an Assets.car file. However the linux builds are not building the application using Xcode. Therefore a pre-compiled Assets.car file containing the image assets (icons, splash screen etc) is added to the tvos folder. This file is copied to the application bundle. If the icons are changed in the future a new Assets.car file has to be compiled. This can only be done on a computer with Xcode installed. To compile run the following command in the tvos folder: xcrun actool ./Images.xcassets --compile build --platform appletvos \ --minimum-deployment-target 9.0 --app-icon AppIcon \ --output-partial-info-plist build/partial.plist \ --launch-image LaunchImage The partial.plist file generated will show what to add to the Info.plist and if something must be changed in the ports.mk section for the tvosbundle.
79 lines
2.0 KiB
Perl
Executable File
79 lines
2.0 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
|
|
#
|
|
# This script is a hack to update the ScummVM version in all (?) files that
|
|
# contain it. Obviously, it should be used before a release.
|
|
|
|
use strict;
|
|
|
|
if ($#ARGV+1 < 3 or $#ARGV+1 > 4) {
|
|
# TODO: Allow the user to specify the version as "1.2.3svn"
|
|
# and automatically split that into 1, 2, 3, svn
|
|
print STDERR "Usage: $0 MAJOR MINOR PATCH [EXTRA]\n";
|
|
print STDERR " TODO\n";
|
|
exit 1;
|
|
}
|
|
|
|
# TODO: Verify that major/minor/patch are actually numbers
|
|
my $VER_MAJOR = $ARGV[0];
|
|
my $VER_MINOR = $ARGV[1];
|
|
my $VER_PATCH = $ARGV[2];
|
|
my $VER_EXTRA = $ARGV[3];
|
|
my $VERSION = "$VER_MAJOR.$VER_MINOR.$VER_PATCH$VER_EXTRA";
|
|
|
|
die "MAJOR must be a natural number\n" unless ($VER_MAJOR =~ /^\d+$/);
|
|
die "MINOR must be a natural number\n" unless ($VER_MINOR =~ /^\d+$/);
|
|
die "PATCH must be a natural number\n" unless ($VER_PATCH =~ /^\d+$/);
|
|
|
|
|
|
print "Setting version to '$VERSION'\n";
|
|
|
|
|
|
# List of the files in which we need to perform substitution.
|
|
my @subs_files = qw(
|
|
base/internal_version.h
|
|
dists/redhat/scummvm.spec
|
|
dists/redhat/scummvm-tools.spec
|
|
dists/slackware/scummvm.SlackBuild
|
|
dists/macosx/Info.plist
|
|
dists/macosx/dockplugin/Info.plist
|
|
dists/iphone/Info.plist
|
|
dists/ios7/Info.plist
|
|
dists/tvos/Info.plist
|
|
dists/irix/scummvm.spec
|
|
dists/wii/meta.xml
|
|
dists/openpandora/PXML.xml
|
|
dists/openpandora/README-OPENPANDORA
|
|
dists/openpandora/README-PND.txt
|
|
dists/openpandora/index.html
|
|
dists/gph/README-GPH
|
|
dists/gph/scummvm.ini
|
|
dists/riscos/!Boot,feb
|
|
dists/amigaos/md2ag.rexx
|
|
backends/platform/psp/README.PSP
|
|
);
|
|
|
|
my %subs = (
|
|
VER_MAJOR => $VER_MAJOR,
|
|
VER_MINOR => $VER_MINOR,
|
|
VER_PATCH => $VER_PATCH,
|
|
VER_EXTRA => $VER_EXTRA,
|
|
VERSION => $VERSION
|
|
);
|
|
|
|
foreach my $file (@subs_files) {
|
|
print "Processing $file...\n";
|
|
open(INPUT, "< $file.in") or die "Can't open '$file.in' for reading: $!\n";
|
|
open(OUTPUT, "> $file") or die "Can't open '$file' for writing: $!\n";
|
|
|
|
while (<INPUT>) {
|
|
while (my ($key, $value) = each(%subs)) {
|
|
s/\@$key\@/$value/;
|
|
}
|
|
print OUTPUT;
|
|
}
|
|
|
|
close(INPUT);
|
|
close(OUTPUT);
|
|
}
|