Difference between revisions of "Buildbot"

Jump to navigation Jump to search
209 bytes added ,  15:16, 25 October 2018
m
Text replacement - "<source lang=" to "<syntaxhighlight lang="
(Wrap all the console commands inside source tags)
m (Text replacement - "<source lang=" to "<syntaxhighlight lang=")
(3 intermediate revisions by 3 users not shown)
Line 51: Line 51:
When the buildbot config files are changed, a user with shell access and sudo privileges needs to run the following commands. It's good practice to do this once buildbot is idle:
When the buildbot config files are changed, a user with shell access and sudo privileges needs to run the following commands. It's good practice to do this once buildbot is idle:


<source lang="bash">
<syntaxhighlight lang="bash">
sudo -s
sudo -s
/etc/init.d/buildslave stop
systemctl stop buildslave
/etc/init.d/buildbot stop
systemctl stop buildmaster
cd ~buildbot/buildbot
cd ~buildbot/scummvm-sites
git pull
sudo -u buildbot git pull --ff-only
/etc/init.d/buildbot start
systemctl start buildmaster
/etc/init.d/buildslave start
systemctl start buildslave
</source>
</syntaxhighlight>


If problems arise, check if all files in the master (~buildbot/master) and slave (~buildbot/slave) directories are owned by the correct user (buildbot:nogroup). If the daemons were incorrectly started, new files might have been created under another user account. In that case:
If problems arise, check if all files in the master (~buildbot/scummvm-master) and slave (~buildbot/scummvm-slave) directories are owned by the correct user (buildbot:buildbot). If the daemons were incorrectly started, new files might have been created under another user account. In that case:


* stop the daemons (see above)
* stop the daemons (see above)
* fix the permissions with
* fix the permissions with
<source lang="bash">
<syntaxhighlight lang="bash">
chown -R buildbot:nogroup ~buildbot/master/*
chown -R buildbot:buildbot ~buildbot/scummvm-master/*
chown -R buildbot:nogroup ~buildbot/slave/*
chown -R buildbot:buildbot ~buildbot/scummvm-slave/*
</source>
</syntaxhighlight>
* start the daemons
* start the daemons


Line 98: Line 98:
* Decompress the latest libSDL tarball to a temporary location i.e.
* Decompress the latest libSDL tarball to a temporary location i.e.


<source lang="bash">
<syntaxhighlight lang="bash">
tar -xvzf SDL-1.2.15.tar.gz -d /home/digitall
tar -xvzf SDL-1.2.15.tar.gz -d /home/digitall
</source>
</syntaxhighlight>


* Apply any required patches i.e. Currently libSDL-1.2.15 snapshot has a error in the Win32 version strings.. This may occur again on future releases :/
* Apply any required patches i.e. Currently libSDL-1.2.15 snapshot has a error in the Win32 version strings.. This may occur again on future releases :/


<source lang="bash">
<syntaxhighlight lang="bash">
patch -p0 < SDL-1.2.15-Fix-Windows-DLL-Version.patch
patch -p0 < SDL-1.2.15-Fix-Windows-DLL-Version.patch
</source>
</syntaxhighlight>


* Add toolchain binaries directory to path.
* Add toolchain binaries directory to path.


<source lang="bash">
<syntaxhighlight lang="bash">
PATH=/opt/toolchains/x86_64-w64-mingw32/bin:$PATH
PATH=/opt/toolchains/x86_64-w64-mingw32/bin:$PATH
export PATH
export PATH
</source>
</syntaxhighlight>


* Add out of tree build directory and configure the SDL codebase here with the host target and prefix to use the correct cross toolchain and target for make install.
* Add out of tree build directory and configure the SDL codebase here with the host target and prefix to use the correct cross toolchain and target for make install.


<source lang="bash">
<syntaxhighlight lang="bash">
mkdir SDL-1.2.15-x86_64-w64-mingw32
mkdir SDL-1.2.15-x86_64-w64-mingw32
cd SDL-1.2.15-x86_64-w64-mingw32
cd SDL-1.2.15-x86_64-w64-mingw32
../SDL-1.2.15/configure --host=x86_64-w64-mingw32 --prefix=/opt/toolchains/x86_64-w64-mingw32
../SDL-1.2.15/configure --host=x86_64-w64-mingw32 --prefix=/opt/toolchains/x86_64-w64-mingw32
</source>
</syntaxhighlight>


* Compile the codebase.
* Compile the codebase.


<source lang="bash">
<syntaxhighlight lang="bash">
make
make
</source>
</syntaxhighlight>


* Install the compiled files. As you become root, you need to make the same modification to the path to get the required cross toolchain tools such as ranlib.
* Install the compiled files. As you become root, you need to make the same modification to the path to get the required cross toolchain tools such as ranlib.


<source lang="bash">
<syntaxhighlight lang="bash">
sudo bash
sudo bash
PATH=/opt/toolchains/x86_64-w64-mingw32/bin:$PATH
PATH=/opt/toolchains/x86_64-w64-mingw32/bin:$PATH
export PATH
export PATH
make install
make install
</source>
</syntaxhighlight>
TrustedUser
2,147

edits

Navigation menu