Added appveyor github release functionality. Master auto builds are now uploaded to a rolling interim-build pre-release. Release tag builds will upload official release builds from appveyor automatically.
This commit is contained in:
parent
897491b3f5
commit
99eb406b1a
36
appveyor.yml
36
appveyor.yml
|
@ -27,7 +27,7 @@ for:
|
||||||
- job_name: Windows 32
|
- job_name: Windows 32
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: pipelines/win32_build.bat
|
- cmd: perl pipelines/build.pl win32
|
||||||
|
|
||||||
-
|
-
|
||||||
matrix:
|
matrix:
|
||||||
|
@ -35,7 +35,7 @@ for:
|
||||||
- job_name: Windows 64
|
- job_name: Windows 64
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: pipelines/win64_build.bat
|
- cmd: perl pipelines/build.pl win64
|
||||||
|
|
||||||
-
|
-
|
||||||
matrix:
|
matrix:
|
||||||
|
@ -43,7 +43,7 @@ for:
|
||||||
- job_name: Win64 Qt
|
- job_name: Win64 Qt
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: pipelines/qwin64_build.bat
|
- cmd: perl pipelines/build.pl win64-QtSDL
|
||||||
|
|
||||||
-
|
-
|
||||||
matrix:
|
matrix:
|
||||||
|
@ -51,7 +51,7 @@ for:
|
||||||
- job_name: Ubuntu
|
- job_name: Ubuntu
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- sh: ./pipelines/linux_build.sh
|
- sh: perl pipelines/build.pl linux
|
||||||
|
|
||||||
-
|
-
|
||||||
matrix:
|
matrix:
|
||||||
|
@ -59,5 +59,31 @@ for:
|
||||||
- job_name: MacOS
|
- job_name: MacOS
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- sh: ./pipelines/macOS_build.sh
|
- sh: perl pipelines/build.pl macOS
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
|
||||||
|
- provider: GitHub
|
||||||
|
tag: interim-build
|
||||||
|
release: interim-build
|
||||||
|
description: 'Interim Builds - Latest auto builds off master branch - commit: $(APPVEYOR_REPO_COMMIT)\nDate: $(APPVEYOR_REPO_COMMIT_TIMESTAMP)'
|
||||||
|
auth_token:
|
||||||
|
secure: 5kNj/zZ1RD5gCBq0Q4my9dBgSTYL7JVvcjv93T9i6FjYA6SAds3/Dmlz8wrRMN8E
|
||||||
|
artifact: $(WIN32_ARTIFACT), $(WIN64_ARTIFACT), $(WIN64_QTSDL_ARTIFACT), $(MACOS_ARTIFACT), $(LINUX_ARTIFACT)
|
||||||
|
draft: false
|
||||||
|
prerelease: true
|
||||||
|
force_update: true
|
||||||
|
on:
|
||||||
|
branch: master # release from master branch only
|
||||||
|
APPVEYOR_REPO_TAG: false # never deploy on tag push
|
||||||
|
|
||||||
|
- provider: GitHub
|
||||||
|
description: 'Release Builds - commit: $(APPVEYOR_REPO_COMMIT)'
|
||||||
|
auth_token:
|
||||||
|
secure: 5kNj/zZ1RD5gCBq0Q4my9dBgSTYL7JVvcjv93T9i6FjYA6SAds3/Dmlz8wrRMN8E
|
||||||
|
artifact: $(WIN32_ARTIFACT), $(WIN64_ARTIFACT), $(WIN64_QTSDL_ARTIFACT), $(MACOS_ARTIFACT)
|
||||||
|
draft: false
|
||||||
|
prerelease: false
|
||||||
|
force_update: false
|
||||||
|
on:
|
||||||
|
APPVEYOR_REPO_TAG: true # deploy on tag push only
|
||||||
|
|
|
@ -0,0 +1,170 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use File::Basename;
|
||||||
|
#use File::Spec;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Global Variables
|
||||||
|
#
|
||||||
|
my $platform = "";
|
||||||
|
my $fceuVersionMajor = 1;
|
||||||
|
my $fceuVersionMinor = 0;
|
||||||
|
my $fceuVersionPatch = 0;
|
||||||
|
|
||||||
|
foreach my $arg (@ARGV)
|
||||||
|
{
|
||||||
|
#print $arg, "\n";
|
||||||
|
|
||||||
|
if ($platform eq "")
|
||||||
|
{
|
||||||
|
$platform = $arg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
my $dirname = dirname(__FILE__);
|
||||||
|
my $projRoot = "$dirname/..";
|
||||||
|
my $ReleaseBuild=0;
|
||||||
|
my $ReleaseVersion="";
|
||||||
|
|
||||||
|
#print "PATH: $ENV{PATH}\n";
|
||||||
|
#print "Dir $dirname\n";
|
||||||
|
#
|
||||||
|
($fceuVersionMajor, $fceuVersionMinor, $fceuVersionPatch) = getVersion();
|
||||||
|
|
||||||
|
($ReleaseBuild, $ReleaseVersion) = isReleaseBuild();
|
||||||
|
|
||||||
|
if ($ReleaseBuild)
|
||||||
|
{
|
||||||
|
$ENV{FCEU_RELEASE_VERSION} = $ReleaseVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($platform eq "win32")
|
||||||
|
{
|
||||||
|
build_win32();
|
||||||
|
}
|
||||||
|
elsif ($platform eq "win64")
|
||||||
|
{
|
||||||
|
build_win64();
|
||||||
|
}
|
||||||
|
elsif ($platform eq "win64-QtSDL")
|
||||||
|
{
|
||||||
|
build_win64_QtSDL();
|
||||||
|
}
|
||||||
|
elsif ($platform eq "linux")
|
||||||
|
{
|
||||||
|
build_ubuntu_linux();
|
||||||
|
}
|
||||||
|
elsif ($platform eq "macOS")
|
||||||
|
{
|
||||||
|
build_macOS();
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Build win32 version
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub build_win32
|
||||||
|
{
|
||||||
|
chdir("$projRoot");
|
||||||
|
|
||||||
|
my $ret = system("cmd.exe /c pipelines\\\\win32_build.bat");
|
||||||
|
|
||||||
|
if ($ret != 0){ die "Build Errors Detected\n";}
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Build win64 version
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub build_win64
|
||||||
|
{
|
||||||
|
chdir("$projRoot");
|
||||||
|
|
||||||
|
my $ret = system("cmd.exe /c pipelines\\\\win64_build.bat");
|
||||||
|
|
||||||
|
if ($ret != 0){ die "Build Errors Detected\n";}
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Build win64-Qt/SDL version
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub build_win64_QtSDL
|
||||||
|
{
|
||||||
|
chdir("$projRoot");
|
||||||
|
|
||||||
|
my $ret = system("cmd.exe /c pipelines\\\\qwin64_build.bat");
|
||||||
|
|
||||||
|
if ($ret != 0){ die "Build Errors Detected\n";}
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Build Ubuntu Linux version
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub build_ubuntu_linux
|
||||||
|
{
|
||||||
|
chdir("$projRoot");
|
||||||
|
|
||||||
|
my $ret = system("./pipelines/linux_build.sh");
|
||||||
|
|
||||||
|
if ($ret != 0){ die "Build Errors Detected\n";}
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Build MacOSX version
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub build_macOS
|
||||||
|
{
|
||||||
|
chdir("$projRoot");
|
||||||
|
|
||||||
|
my $ret = system("./pipelines/macOS_build.sh");
|
||||||
|
|
||||||
|
if ($ret != 0){ die "Build Errors Detected\n";}
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Search src/version.h and retrieve version numbers
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub getVersion
|
||||||
|
{
|
||||||
|
my $versionHeader = "$projRoot/src/version.h";
|
||||||
|
my $line;
|
||||||
|
my $major = 1;
|
||||||
|
my $minor = 0;
|
||||||
|
my $patch = 0;
|
||||||
|
open INFILE, "$versionHeader" or die "Error: Could not open file: $versionHeader\n";
|
||||||
|
while ($line = <INFILE>)
|
||||||
|
{
|
||||||
|
#print $line;
|
||||||
|
if ($line =~ m/\s*#define\s+FCEU_VERSION_MAJOR\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$major = $1;
|
||||||
|
}
|
||||||
|
elsif ($line =~ m/\s*#define\s+FCEU_VERSION_MINOR\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$minor = $1;
|
||||||
|
}
|
||||||
|
elsif ($line =~ m/\s*#define\s+FCEU_VERSION_PATCH\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$patch = $1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close(INFILE);
|
||||||
|
|
||||||
|
return ( $major, $minor, $patch );
|
||||||
|
}
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
# Returns whether this is a release build and returns the version if detected
|
||||||
|
#--------------------------------------------------------------------------------------------
|
||||||
|
sub isReleaseBuild
|
||||||
|
{
|
||||||
|
my $isRelease = 0;
|
||||||
|
my $tagVersion = "";
|
||||||
|
|
||||||
|
if (defined($ENV{APPVEYOR_REPO_TAG_NAME}))
|
||||||
|
{
|
||||||
|
if ($ENV{APPVEYOR_REPO_TAG_NAME} =~ m/fceux-(\d+\.\d+\.\d+)/)
|
||||||
|
{
|
||||||
|
$tagVersion = $1;
|
||||||
|
$isRelease = 1;
|
||||||
|
}
|
||||||
|
elsif ($ENV{APPVEYOR_REPO_TAG_NAME} =~ m/(\d+\.\d+\.\d+)/)
|
||||||
|
{
|
||||||
|
$tagVersion = $1;
|
||||||
|
$isRelease = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ($isRelease, $tagVersion);
|
||||||
|
}
|
|
@ -1,8 +1,11 @@
|
||||||
#!/usr/bin/perl
|
#!/usr/bin/perl
|
||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
|
use File::Basename;
|
||||||
|
|
||||||
my $VERSION="2.6.4";
|
my $dirname = dirname(__FILE__);
|
||||||
|
|
||||||
|
my $VERSION=`perl $dirname/../scripts/fceuVersion.pl`;
|
||||||
my $INSTALL_PREFIX="/tmp/fceux";
|
my $INSTALL_PREFIX="/tmp/fceux";
|
||||||
my $CTL_FILENAME="$INSTALL_PREFIX/DEBIAN/control";
|
my $CTL_FILENAME="$INSTALL_PREFIX/DEBIAN/control";
|
||||||
my $ARCH="amd64";
|
my $ARCH="amd64";
|
||||||
|
|
|
@ -4,6 +4,7 @@ id
|
||||||
pwd
|
pwd
|
||||||
uname -a
|
uname -a
|
||||||
cat /etc/os-release
|
cat /etc/os-release
|
||||||
|
env
|
||||||
|
|
||||||
SCRIPT_DIR=$( cd $(dirname $BASH_SOURCE[0]); pwd );
|
SCRIPT_DIR=$( cd $(dirname $BASH_SOURCE[0]); pwd );
|
||||||
|
|
||||||
|
@ -20,6 +21,10 @@ echo "APPVEYOR_SSH_KEY=$APPVEYOR_SSH_KEY";
|
||||||
echo "APPVEYOR_SSH_BLOCK=$APPVEYOR_SSH_BLOCK";
|
echo "APPVEYOR_SSH_BLOCK=$APPVEYOR_SSH_BLOCK";
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
|
|
||||||
|
if [ ! -z $FCEU_RELEASE_VERSION ]; then
|
||||||
|
APPVEYOR_CMAKE_FLAGS=" -DPUBLIC_RELEASE=1 ";
|
||||||
|
fi
|
||||||
|
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
echo '*** Installing Package Dependencies ***'
|
echo '*** Installing Package Dependencies ***'
|
||||||
|
@ -119,6 +124,7 @@ cmake \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
|
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
|
||||||
|
$APPVEYOR_CMAKE_FLAGS \
|
||||||
..
|
..
|
||||||
make -j `nproc`
|
make -j `nproc`
|
||||||
make install DESTDIR=$INSTALL_PREFIX
|
make install DESTDIR=$INSTALL_PREFIX
|
||||||
|
@ -191,5 +197,13 @@ echo 'Testing Install of Package'
|
||||||
echo '**************************************************************'
|
echo '**************************************************************'
|
||||||
sudo dpkg -i /tmp/fceux-*.deb
|
sudo dpkg -i /tmp/fceux-*.deb
|
||||||
|
|
||||||
echo 'Pushing Debian Package to Build Artifacts'
|
if [ ! -z $APPVEYOR ]; then
|
||||||
appveyor PushArtifact /tmp/fceux-*.deb
|
echo 'Pushing Debian Package to Build Artifacts'
|
||||||
|
if [ -z $FCEU_RELEASE_VERSION ]; then
|
||||||
|
cp /tmp/fceux-*.deb /tmp/fceux-ubuntu-x64.deb
|
||||||
|
appveyor PushArtifact /tmp/fceux-ubuntu-x64.deb
|
||||||
|
appveyor SetVariable -Name LINUX_ARTIFACT -Value fceux-ubuntu-x64.deb
|
||||||
|
else
|
||||||
|
appveyor PushArtifact /tmp/fceux-*.deb
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
|
@ -5,15 +5,19 @@ id
|
||||||
pwd
|
pwd
|
||||||
uname -a
|
uname -a
|
||||||
sw_vers
|
sw_vers
|
||||||
|
env
|
||||||
|
|
||||||
|
SCRIPT_DIR=$( cd $(dirname $BASH_SOURCE[0]); pwd );
|
||||||
|
|
||||||
QT_MAJOR=5;
|
QT_MAJOR=5;
|
||||||
QT_PKGNAME=qt$QT_MAJOR;
|
QT_PKGNAME=qt$QT_MAJOR;
|
||||||
FCEUX_VERSION_MAJOR=2
|
FCEUX_VERSION_MAJOR=`perl $SCRIPT_DIR/../scripts/fceuVersion.pl -major`;
|
||||||
FCEUX_VERSION_MINOR=6
|
FCEUX_VERSION_MINOR=`perl $SCRIPT_DIR/../scripts/fceuVersion.pl -minor`;
|
||||||
FCEUX_VERSION_PATCH=4
|
FCEUX_VERSION_PATCH=`perl $SCRIPT_DIR/../scripts/fceuVersion.pl -patch`;
|
||||||
|
FCEUX_VERSION="$FCEUX_VERSION_MAJOR.$FCEUX_VERSION_MINOR.$FCEUX_VERSION_PATCH";
|
||||||
SDL2_VERSION=2.0.20
|
SDL2_VERSION=2.0.20
|
||||||
|
|
||||||
SCRIPT_DIR=$( cd $(dirname $BASH_SOURCE[0]); pwd );
|
echo "Building Version: $FCEUX_VERSION";
|
||||||
|
|
||||||
NPROC=`getconf _NPROCESSORS_ONLN`;
|
NPROC=`getconf _NPROCESSORS_ONLN`;
|
||||||
echo "Number of Processors: $NPROC";
|
echo "Number of Processors: $NPROC";
|
||||||
|
@ -34,6 +38,10 @@ echo "APPVEYOR_SSH_KEY=$APPVEYOR_SSH_KEY";
|
||||||
echo "APPVEYOR_SSH_BLOCK=$APPVEYOR_SSH_BLOCK";
|
echo "APPVEYOR_SSH_BLOCK=$APPVEYOR_SSH_BLOCK";
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
|
|
||||||
|
if [ ! -z $FCEU_RELEASE_VERSION ]; then
|
||||||
|
APPVEYOR_CMAKE_FLAGS=" -DPUBLIC_RELEASE=1 ";
|
||||||
|
fi
|
||||||
|
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
echo 'Install Dependency sdl2'
|
echo 'Install Dependency sdl2'
|
||||||
echo '****************************************'
|
echo '****************************************'
|
||||||
|
@ -121,13 +129,23 @@ cmake \
|
||||||
-DCPACK_PACKAGE_VERSION_MINOR=$FCEUX_VERSION_MINOR \
|
-DCPACK_PACKAGE_VERSION_MINOR=$FCEUX_VERSION_MINOR \
|
||||||
-DCPACK_PACKAGE_VERSION_PATCH=$FCEUX_VERSION_PATCH \
|
-DCPACK_PACKAGE_VERSION_PATCH=$FCEUX_VERSION_PATCH \
|
||||||
-DQT6=$USE_QT6 \
|
-DQT6=$USE_QT6 \
|
||||||
|
$APPVEYOR_CMAKE_FLAGS \
|
||||||
.. || exit 1
|
.. || exit 1
|
||||||
make -j $NPROC || exit 1
|
make -j $NPROC || exit 1
|
||||||
#sudo make install || exit 1 # make install is already run by cpack
|
#sudo make install || exit 1 # make install is already run by cpack
|
||||||
sudo cpack -G DragNDrop || exit 1
|
sudo cpack -G DragNDrop || exit 1
|
||||||
|
|
||||||
echo 'Pushing DMG Package to Build Artifacts'
|
if [ ! -z $APPVEYOR ]; then
|
||||||
appveyor PushArtifact fceux-*.dmg
|
echo 'Pushing DMG Package to Build Artifacts'
|
||||||
|
if [ -z $FCEU_RELEASE_VERSION ]; then
|
||||||
|
cp fceux-*.dmg fceux-Darwin.dmg
|
||||||
|
appveyor PushArtifact fceux-Darwin.dmg
|
||||||
|
appveyor SetVariable -Name MACOS_ARTIFACT -Value fceux-Darwin.dmg
|
||||||
|
else
|
||||||
|
appveyor PushArtifact fceux-*.dmg
|
||||||
|
appveyor SetVariable -Name MACOS_ARTIFACT -Value `ls fceux-*.dmg`
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Debug via ssh if necessary
|
# Debug via ssh if necessary
|
||||||
if [ ! -z $APPVEYOR_SSH_BLOCK ]; then
|
if [ ! -z $APPVEYOR_SSH_BLOCK ]; then
|
||||||
|
|
|
@ -8,6 +8,7 @@ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary
|
||||||
|
|
||||||
cd /d %CWD%
|
cd /d %CWD%
|
||||||
|
|
||||||
|
set
|
||||||
where cmake
|
where cmake
|
||||||
where nmake
|
where nmake
|
||||||
where msbuild
|
where msbuild
|
||||||
|
@ -36,10 +37,12 @@ del ffmpeg-5.0-full_build-shared.zip
|
||||||
|
|
||||||
set SDL_INSTALL_PREFIX=%CD%
|
set SDL_INSTALL_PREFIX=%CD%
|
||||||
set FFMPEG_INSTALL_PREFIX=%CD%
|
set FFMPEG_INSTALL_PREFIX=%CD%
|
||||||
|
set PUBLIC_RELEASE=0
|
||||||
|
IF DEFINED FCEU_RELEASE_VERSION (set PUBLIC_RELEASE=1)
|
||||||
|
|
||||||
REM cmake -h
|
REM cmake -h
|
||||||
REM cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DSDL_INSTALL_PREFIX=%SDL_INSTALL_PREFIX% ..
|
REM cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DSDL_INSTALL_PREFIX=%SDL_INSTALL_PREFIX% ..
|
||||||
cmake -DQT6=0 -DSDL_INSTALL_PREFIX=%SDL_INSTALL_PREFIX% -DUSE_LIBAV=1 -DFFMPEG_INSTALL_PREFIX=%FFMPEG_INSTALL_PREFIX% -G"Visual Studio 16" -T"v142" ..
|
cmake -DQT6=0 -DPUBLIC_RELEASE=%PUBLIC_RELEASE% -DSDL_INSTALL_PREFIX=%SDL_INSTALL_PREFIX% -DUSE_LIBAV=1 -DFFMPEG_INSTALL_PREFIX=%FFMPEG_INSTALL_PREFIX% -G"Visual Studio 16" -T"v142" ..
|
||||||
|
|
||||||
REM nmake
|
REM nmake
|
||||||
msbuild /m fceux.sln /p:Configuration=Release
|
msbuild /m fceux.sln /p:Configuration=Release
|
||||||
|
@ -51,23 +54,30 @@ copy %FFMPEG_INSTALL_PREFIX%\ffmpeg\bin\*.dll bin\.
|
||||||
|
|
||||||
windeployqt --no-compiler-runtime bin\qfceux.exe
|
windeployqt --no-compiler-runtime bin\qfceux.exe
|
||||||
|
|
||||||
|
set ZIP_FILENAME=fceux-win64-QtSDL.zip
|
||||||
|
IF DEFINED FCEU_RELEASE_VERSION set ZIP_FILENAME=fceux-%FCEU_RELEASE_VERSION%-win64-QtSDL.zip
|
||||||
|
|
||||||
|
set DEPLOY_GROUP=master
|
||||||
|
IF DEFINED APPVEYOR_REPO_TAG_NAME set DEPLOY_GROUP=%APPVEYOR_REPO_TAG_NAME%
|
||||||
|
|
||||||
dir bin
|
dir bin
|
||||||
|
|
||||||
REM Create Zip Archive
|
REM Create Zip Archive
|
||||||
%PROJECT_ROOT%\vc\zip -X -9 -r %PROJECT_ROOT%\vc\qfceux64.zip bin
|
%PROJECT_ROOT%\vc\zip -X -9 -r %PROJECT_ROOT%\vc\%ZIP_FILENAME% bin
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%\output
|
cd %PROJECT_ROOT%\output
|
||||||
%PROJECT_ROOT%\vc\zip -X -9 -u -r %PROJECT_ROOT%\vc\qfceux64.zip palettes luaScripts tools
|
%PROJECT_ROOT%\vc\zip -X -9 -u -r %PROJECT_ROOT%\vc\%ZIP_FILENAME% palettes luaScripts tools
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
mkdir doc
|
mkdir doc
|
||||||
copy *.chm doc\.
|
copy *.chm doc\.
|
||||||
%PROJECT_ROOT%\vc\zip -X -9 -u -r %PROJECT_ROOT%\vc\qfceux64.zip doc
|
%PROJECT_ROOT%\vc\zip -X -9 -u -r %PROJECT_ROOT%\vc\%ZIP_FILENAME% doc
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%
|
cd %PROJECT_ROOT%
|
||||||
|
|
||||||
appveyor PushArtifact %PROJECT_ROOT%\vc\qfceux64.zip
|
IF DEFINED APPVEYOR appveyor SetVariable -Name WIN64_QTSDL_ARTIFACT -Value %ZIP_FILENAME%
|
||||||
|
IF DEFINED APPVEYOR appveyor PushArtifact %PROJECT_ROOT%\vc\%ZIP_FILENAME%
|
||||||
|
|
||||||
:end
|
:end
|
||||||
|
|
|
@ -1,18 +1,27 @@
|
||||||
|
|
||||||
set PROJECT_ROOT=%~dp0..
|
set PROJECT_ROOT=%~dp0..
|
||||||
|
set BUILD_CONFIG=Release
|
||||||
|
|
||||||
msbuild %PROJECT_ROOT%\vc\vc14_fceux.vcxproj /p:Configuration=Release /p:Platform="Win32"
|
set ZIP_FILENAME=fceux-win32.zip
|
||||||
|
if defined FCEU_RELEASE_VERSION set ZIP_FILENAME=fceux-%FCEU_RELEASE_VERSION%-win32.zip
|
||||||
|
if defined FCEU_RELEASE_VERSION set BUILD_CONFIG=PublicRelease
|
||||||
|
|
||||||
|
set DEPLOY_GROUP=master
|
||||||
|
IF DEFINED APPVEYOR_REPO_TAG_NAME set DEPLOY_GROUP=%APPVEYOR_REPO_TAG_NAME%
|
||||||
|
|
||||||
|
msbuild %PROJECT_ROOT%\vc\vc14_fceux.vcxproj /p:Configuration=%BUILD_CONFIG% /p:Platform="Win32"
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%\vc
|
cd %PROJECT_ROOT%\vc
|
||||||
|
|
||||||
REM Create Zip Archive
|
REM Create Zip Archive
|
||||||
cd %PROJECT_ROOT%\output
|
cd %PROJECT_ROOT%\output
|
||||||
..\vc\zip -X -9 -r ..\vc\fceux.zip fceux.exe fceux.chm taseditor.chm lua5.1.dll lua51.dll 7z.dll auxlib.lua palettes luaScripts tools
|
..\vc\zip -X -9 -r ..\vc\%ZIP_FILENAME% fceux.exe fceux.chm taseditor.chm lua5.1.dll lua51.dll 7z.dll auxlib.lua palettes luaScripts tools
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%
|
cd %PROJECT_ROOT%
|
||||||
|
|
||||||
appveyor PushArtifact %PROJECT_ROOT%\vc\fceux.zip
|
IF DEFINED APPVEYOR appveyor SetVariable -Name WIN32_ARTIFACT -Value %ZIP_FILENAME%
|
||||||
|
IF DEFINED APPVEYOR appveyor PushArtifact %PROJECT_ROOT%\vc\%ZIP_FILENAME%
|
||||||
|
|
||||||
:end
|
:end
|
||||||
|
|
|
@ -1,7 +1,15 @@
|
||||||
|
|
||||||
set PROJECT_ROOT=%~dp0..
|
set PROJECT_ROOT=%~dp0..
|
||||||
|
set BUILD_CONFIG=Release
|
||||||
|
|
||||||
msbuild %PROJECT_ROOT%\vc\vc14_fceux.vcxproj /p:Configuration=Release /p:Platform="x64"
|
set ZIP_FILENAME=fceux-win64.zip
|
||||||
|
if defined FCEU_RELEASE_VERSION set ZIP_FILENAME=fceux-%FCEU_RELEASE_VERSION%-win64.zip
|
||||||
|
if defined FCEU_RELEASE_VERSION set BUILD_CONFIG=PublicRelease
|
||||||
|
|
||||||
|
set DEPLOY_GROUP=master
|
||||||
|
IF DEFINED APPVEYOR_REPO_TAG_NAME set DEPLOY_GROUP=%APPVEYOR_REPO_TAG_NAME%
|
||||||
|
|
||||||
|
msbuild %PROJECT_ROOT%\vc\vc14_fceux.vcxproj /p:Configuration=%BUILD_CONFIG% /p:Platform="x64"
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%\vc
|
cd %PROJECT_ROOT%\vc
|
||||||
|
@ -9,13 +17,14 @@ cd %PROJECT_ROOT%\vc
|
||||||
REM Create Zip Archive
|
REM Create Zip Archive
|
||||||
|
|
||||||
cd %PROJECT_ROOT%\output
|
cd %PROJECT_ROOT%\output
|
||||||
..\vc\zip -X -9 -j ..\vc\fceux64.zip ..\vc\x64\Release\fceux64.exe ..\src\drivers\win\lua\x64\lua5.1.dll ..\src\drivers\win\lua\x64\lua51.dll ..\src\auxlib.lua ..\src\drivers\win\7z_64.dll
|
..\vc\zip -X -9 -j ..\vc\%ZIP_FILENAME% ..\vc\x64\%BUILD_CONFIG%\fceux64.exe ..\src\drivers\win\lua\x64\lua5.1.dll ..\src\drivers\win\lua\x64\lua51.dll ..\src\auxlib.lua ..\src\drivers\win\7z_64.dll
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
..\vc\zip -X -9 -u -r ..\vc\fceux64.zip fceux.chm taseditor.chm palettes luaScripts tools
|
..\vc\zip -X -9 -u -r ..\vc\%ZIP_FILENAME% fceux.chm taseditor.chm palettes luaScripts tools
|
||||||
@if ERRORLEVEL 1 goto end
|
@if ERRORLEVEL 1 goto end
|
||||||
|
|
||||||
cd %PROJECT_ROOT%
|
cd %PROJECT_ROOT%
|
||||||
|
|
||||||
appveyor PushArtifact %PROJECT_ROOT%\vc\fceux64.zip
|
IF DEFINED APPVEYOR appveyor SetVariable -Name WIN64_ARTIFACT -Value %ZIP_FILENAME%
|
||||||
|
IF DEFINED APPVEYOR appveyor PushArtifact %PROJECT_ROOT%\vc\%ZIP_FILENAME%
|
||||||
|
|
||||||
:end
|
:end
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use File::Basename;
|
||||||
|
#use File::Spec;
|
||||||
|
|
||||||
|
my $format = 0;
|
||||||
|
|
||||||
|
foreach my $arg (@ARGV)
|
||||||
|
{
|
||||||
|
#print $arg, "\n";
|
||||||
|
|
||||||
|
if ($arg eq "-major")
|
||||||
|
{
|
||||||
|
$format = 1;
|
||||||
|
}
|
||||||
|
elsif ($arg eq "-minor")
|
||||||
|
{
|
||||||
|
$format = 2;
|
||||||
|
}
|
||||||
|
elsif ($arg eq "-patch")
|
||||||
|
{
|
||||||
|
$format = 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#my $file = File::Spec->rel2abs( __FILE__ );
|
||||||
|
my $dirname = dirname(__FILE__);
|
||||||
|
my $projRoot = "$dirname/..";
|
||||||
|
my $versionHeader = "$projRoot/src/version.h";
|
||||||
|
my $major = 1;
|
||||||
|
my $minor = 0;
|
||||||
|
my $patch = 0;
|
||||||
|
|
||||||
|
#print "File: $file\n";
|
||||||
|
#print "Dir $dirname\n";
|
||||||
|
|
||||||
|
my $line;
|
||||||
|
|
||||||
|
open INFILE, "$versionHeader" or die "Error: Could not open file: $versionHeader\n";
|
||||||
|
while ($line = <INFILE>)
|
||||||
|
{
|
||||||
|
#print $line;
|
||||||
|
if ($line =~ m/\s*#define\s+FCEU_VERSION_MAJOR\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$major = $1;
|
||||||
|
}
|
||||||
|
elsif ($line =~ m/\s*#define\s+FCEU_VERSION_MINOR\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$minor = $1;
|
||||||
|
}
|
||||||
|
elsif ($line =~ m/\s*#define\s+FCEU_VERSION_PATCH\s+(\d+)/)
|
||||||
|
{
|
||||||
|
$patch = $1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close(INFILE);
|
||||||
|
|
||||||
|
if ($format == 1)
|
||||||
|
{
|
||||||
|
print "$major";
|
||||||
|
}
|
||||||
|
elsif ($format == 2)
|
||||||
|
{
|
||||||
|
print "$minor";
|
||||||
|
}
|
||||||
|
elsif ($format == 3)
|
||||||
|
{
|
||||||
|
print "$patch";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print "$major.$minor.$patch";
|
||||||
|
}
|
|
@ -5,6 +5,10 @@ set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_AUTORCC ON)
|
set(CMAKE_AUTORCC ON)
|
||||||
set(CMAKE_AUTOUIC ON)
|
set(CMAKE_AUTOUIC ON)
|
||||||
|
|
||||||
|
if (${PUBLIC_RELEASE})
|
||||||
|
add_definitions( -DPUBLIC_RELEASE=1 )
|
||||||
|
endif()
|
||||||
|
|
||||||
if ( ${QT6} )
|
if ( ${QT6} )
|
||||||
message( STATUS "GUI Frontend: Qt6")
|
message( STATUS "GUI Frontend: Qt6")
|
||||||
set( Qt Qt6 )
|
set( Qt Qt6 )
|
||||||
|
@ -28,6 +32,7 @@ else()
|
||||||
include_directories( ${Qt5Widgets_INCLUDE_DIRS} ${Qt5Help_INCLUDE_DIRS} )
|
include_directories( ${Qt5Widgets_INCLUDE_DIRS} ${Qt5Help_INCLUDE_DIRS} )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
find_package(OpenGL REQUIRED)
|
find_package(OpenGL REQUIRED)
|
||||||
#find_package(Qt5 COMPONENTS Widgets OpenGL REQUIRED)
|
#find_package(Qt5 COMPONENTS Widgets OpenGL REQUIRED)
|
||||||
|
|
|
@ -62,14 +62,14 @@
|
||||||
|
|
||||||
#define FCEU_VERSION_MAJOR 2
|
#define FCEU_VERSION_MAJOR 2
|
||||||
#define FCEU_VERSION_MINOR 6
|
#define FCEU_VERSION_MINOR 6
|
||||||
#define FCEU_VERSION_PATCH 4
|
#define FCEU_VERSION_PATCH 5
|
||||||
|
|
||||||
#define FCEU_VERSION_NUMERIC ( (FCEU_VERSION_MAJOR*10000) + (FCEU_VERSION_MINOR*100) + (FCEU_VERSION_PATCH) )
|
#define FCEU_VERSION_NUMERIC ( (FCEU_VERSION_MAJOR*10000) + (FCEU_VERSION_MINOR*100) + (FCEU_VERSION_PATCH) )
|
||||||
#define FCEU_VERSION_MAJOR_DECODE(x) ( (x / 10000) )
|
#define FCEU_VERSION_MAJOR_DECODE(x) ( (x / 10000) )
|
||||||
#define FCEU_VERSION_MINOR_DECODE(x) ( (x / 100) % 100 )
|
#define FCEU_VERSION_MINOR_DECODE(x) ( (x / 100) % 100 )
|
||||||
#define FCEU_VERSION_PATCH_DECODE(x) (x % 100)
|
#define FCEU_VERSION_PATCH_DECODE(x) (x % 100)
|
||||||
|
|
||||||
#define FCEU_VERSION_STRING "2.6.4" FCEU_SUBVERSION_STRING FCEU_FEATURE_STRING FCEU_COMPILER
|
#define FCEU_VERSION_STRING "2.6.5" FCEU_SUBVERSION_STRING FCEU_FEATURE_STRING FCEU_COMPILER
|
||||||
#define FCEU_NAME_AND_VERSION FCEU_NAME " " FCEU_VERSION_STRING
|
#define FCEU_NAME_AND_VERSION FCEU_NAME " " FCEU_VERSION_STRING
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -353,7 +353,7 @@ xcopy /y /d "$(ProjectDir)\..\src\drivers\win\7z_64.dll" "$(OutDir)"</Command>
|
||||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||||
<OmitFramePointers>true</OmitFramePointers>
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
<AdditionalIncludeDirectories>.;../src/drivers/win/zlib;../src/drivers/win/directx/x64;../src;../src/drivers/win/lua/include;userconfig;defaultconfig;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>.;../src/drivers/win/zlib;../src/drivers/win/directx/x64;../src;../src/drivers/win/lua/include;userconfig;defaultconfig;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<PreprocessorDefinitions>WIN32;WIN64;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>PUBLIC_RELEASE;WIN32;WIN64;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;FCEUDEF_DEBUGGER;_USE_SHARED_MEMORY_;NOMINMAX;HAS_vsnprintf;_S9XLUA_H;NDEBUG;MSVC;_CRT_SECURE_NO_DEPRECATE;_WIN32_WINDOWS=0x0410;WINVER=0x0410;NETWORK;LSB_FIRST;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
<PrecompiledHeader>
|
<PrecompiledHeader>
|
||||||
</PrecompiledHeader>
|
</PrecompiledHeader>
|
||||||
|
@ -1528,4 +1528,4 @@ xcopy /y /d "$(ProjectDir)\..\src\drivers\win\7z_64.dll" "$(OutDir)"</Command>
|
||||||
</VisualStudio>
|
</VisualStudio>
|
||||||
</ProjectExtensions>
|
</ProjectExtensions>
|
||||||
<!-- ================ UNDUPOBJ ================ -->
|
<!-- ================ UNDUPOBJ ================ -->
|
||||||
</Project>
|
</Project>
|
||||||
|
|
Loading…
Reference in New Issue