Open john-peterson opened 11 years ago
The pre-build .travis.yml command is
brew install cmake
because
cmake isn't in the environment
These packages are excluded because
git lzo
is already in the environment
pkg-config gettext libao ffmpeg
aren't found by cmake
portaudio sound-touch wxmac sdl glew
the repo versions are used instead
-- Could NOT find ALSA (missing: ALSA_LIBRARY ALSA_INCLUDE_DIR)
ALSA NOT found, disabling ALSA sound backend
ao NOT found, disabling ao sound backend
libav not found, disabling AVI frame dumps
bluez NOT found, disabling bluetooth support
Using static lzo from Externals
-- Found OpenAL: /System/Library/Frameworks/OpenAL.framework
OpenAL found, enabling OpenAL sound backend
OpenMP parallelization disabled
PulseAudio NOT found, disabling PulseAudio sound backend
pkg-config is required to check for libav
-- Performing Test PORTAUDIO
-- Performing Test PORTAUDIO - Failed
PortAudio not found, disabling mic support
Using static SDL from Externals
Using static SFML 1.5 from Externals
Using static SOIL from Externals
Using static soundtouch from Externals
Using static GLEW from Externals
-- Could NOT find Gettext (missing: GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE)
-- Could NOT find wxWidgets (missing: wxWidgets_FOUND)
-- Could NOT find wxWidgets (missing: wxWidgets_FOUND)
Using static wxWidgets from Externals
Xrandr not found
-- Found ZLIB: /usr/lib/libz.dylib (found version "1.2.5")
Using shared zlib
The install command is
sudo add-apt-repository -y ppa:fransschreuder1/usbpicprog-stable
sudo apt-get -qq update
sudo apt-get -qq install git cmake gettext libwayland-dev wx2.9-headers libwxbase2.9-dev libwxgtk2.9-dev libgtk-3-dev libsdl1.2-dev nvidia-cg-toolkit libxrandr-dev libxext-dev libglew-dev libavcodec-dev libavformat-dev libsoil-dev libsfml-dev libopenal-dev libao-dev libasound2-dev libpulse-dev libportaudio-dev libsoundtouch-dev libbluetooth-dev libreadline-dev libswscale-dev liblzo2-dev
OpenMP parallelization enabled
-- Found ALSA: /usr/lib/x86_64-linux-gnu/libasound.so
ALSA found, enabling ALSA sound backend
ao found, enabling ao sound backend
bluez found, enabling bluetooth support
PulseAudio found, enabling PulseAudio sound backend
-- Found OpenAL: /usr/lib/x86_64-linux-gnu/libopenal.so
OpenAL found, enabling OpenAL sound backend
-- checking for modules 'wayland-egl;wayland-client;wayland-cursor'
-- package 'wayland-egl' not found
-- package 'wayland-cursor' not found
Wayland support disabled
X11 support enabled
Xrandr found
-- checking for modules 'libavcodec>=53.35.0;libavformat>=53.21.0;libswscale>=2.1.0;libavutil>=51.22.1'
-- found libavcodec, version 53.35.0
-- found libavformat, version 53.21.1
-- found libswscale, version 2.1.0
-- found libavutil, version 51.22.1
libav found, enabling AVI frame dumps
-- Performing Test PORTAUDIO
-- Performing Test PORTAUDIO - Failed
PortAudio not found, disabling mic support
Using shared lzo
Using shared soundtouch
-- Looking for include files CMAKE_HAVE_PTHREAD_H
-- Looking for include files CMAKE_HAVE_PTHREAD_H - found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Could NOT find SDL2 (missing: SDL2_LIBRARY SDL2_INCLUDE_DIR)
Using shared SDL
Found SFML: /usr/include
Using static SOIL from Externals
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.3.4")
Using shared zlib
GLEW found
-- Found wxWidgets: TRUE
Found wxWidgets version 2.9.3
Found wxWidgets version 2.9.3
gthread-2.0 found
pangocairo found
-- Found Gettext: /usr/bin/msgmerge
[21:47] @Sonicadvance1 and why does it have nvidia-cg-toolkit in it? :/
It runs apt-get -qq install nvidia-cg-toolkit
because it's in the build instruction in
buildbot
Sometimes this message is displayed for 20 min (perhaps indefinitely)
uname -a
CYGWIN_NT-6.1-WOW64 pc 1.7.18(0.263/5/3) 2013-04-19 10:39 i686 Cygwin
Tools/buildbot-try.sh
Branch name: input
Change author: john_peterson
Short rev: 3.5-1430
using 'pb' connect method
Changing buildbot
to buildbot --verbose
print
Tools/buildbot-try.sh
Branch name: input
Change author: john_peterson
Short rev: 3.5-1430+
2013-06-17 01:06:24+0200 [-] Log opened.
2013-06-17 01:06:24+0200 [-] using 'pb' connect method
On another system the command appear to complete
cat /etc/issue
Ubuntu 13.04 \n \l
Tools/buildbot-try.sh
Branch name: input
Change author: john_peterson
Short rev: 3.5-1430+
2013-06-17 01:08:29+0200 [-] Log opened.
2013-06-17 01:08:29+0200 [-] using 'pb' connect method
2013-06-17 01:08:35+0200 [-] job created
2013-06-17 01:08:35+0200 [-] Starting factory <twisted.spread.pb.PBClientFactory instance at 0x29073b0>
2013-06-17 01:08:35+0200 [Broker,client] Delivering job; comment= None
2013-06-17 01:08:35+0200 [Broker,client] job has been delivered
2013-06-17 01:08:35+0200 [Broker,client] not waiting for builds to finish
2013-06-17 01:08:35+0200 [Broker,client] Stopping factory <twisted.spread.pb.PBClientFactory instance at 0x29073b0>
2013-06-17 01:08:35+0200 [-] Main loop terminated.
What's the solution?
buildbot
twisted.cred.error.UnauthorizedLoginSometimes this message is displayed
Tools/buildbot-try.sh
Branch name: input
Change author: john_peterson
Short rev: 3.5-1430
using 'pb' connect method
job created
Unhandled Error
Traceback from remote host -- Traceback (most recent call last):
Failure: twisted.cred.error.UnauthorizedLogin:
twisted.cred.error.UnauthorizedLogin:
What's the solution?
Travis CI
Patch
https://github.com/john-peterson/dolphin-emu/compare/build4
Problem
A commit should be build tested because
There's no easily accessible build test because Travis CI compared to
Tools/buildbot-try.sh
git diff
rather thangit log master..HEAD
git push
Tools/buildbot-try.sh
require registrationgit commit --amend -C HEAD -a
for this build bot is opposedpushing to Google Code origin
git commit --amend -C HEAD -a; git push -f
to this repo is opposed.travis.yml
should be in origin rather than being pushed by the GitHub user together with the test commit because.travis.yml
is missing from a Travis CI enabled repo the repo owner receive a build fail notification when pushing, f.e.Solution
Adding a Travis CI script
.travis.yml
because.travis.yml
is ignored by code.google.comPlatform
Information
The output from
No multi-platform build
The build is on either Linux or OS X rather than both
The reason to build in Linux is
The reason to build in OS X is
OS X
OS X runs less efficiently (compared to Linux) in a virtual machine
regarding
file access because
vmhgfs
doesn't close a file handle toCMakeFiles/CMakeTmp/CMakeCache.txt
duringcmake
so that read and write access is denied (untilvmware-vmx
is terminated) and the build can't continuemount volume smb://
is unreliable because around 1/1000 file access during build result in "file not found"mount -t smbfs
mount with permission that prevent read and write access for all users and preventstat
resulting inls
printing?
instead ofstat
informationmount -t nfs
is unreliable because even the best Windows NFS server [Allegro NFS]((https://github.com/franzinc/nfs) is unreliable because its free build has a memory limitdebugging because
gdb
lack-ex
Linux
Simultaneous make jobs
The make command is
make -j $((
nproc/ 2))
rather thanmake -j
nproc`` becausemake -j
nproc`` return "Killed (program cc1plus)" because memory is inadequateBuild time
IRC
The setting
isn't used because
Discussion
Billiard
Sonicadvance1
The travis ci script is described in https://github.com/mirror/dolphin-emu/issues/39#issuecomment-19506030
Why is
.travis.yml
removed in https://github.com/mirror/dolphin-emu/commit/448e0900d11fa1fece832e2f6034710528637d9a ?Why don't you want to describe the reason that
.travis.yml
shouldn't be in the repo?You should describe the reason because
[03:55] @Sonicadvance1 I'm an unreasonable person
I request that you describe the reason for removing
.travis.yml
delroth
@delroth
The reply is in the topic "Problem" and "Solution"
The reply is in the topic "Platform"
Approval was
It's not clear if the reply agree with the arguments for the patch in the topics "Problem" and "Solution" because it doesn't reply directly to them
The reply is in the topic GitHub benefit
There's no benefit in fetching from GitHub compared to Google code because
No it only builds in Linux
No, however it can be changed to run any bash command
Even when considering
buildbot-try.sh
a Travis CI script has value because it doesn't requiregit push
to runComplement is a better description than replacement because
If the reason for a change to buildbot is logical it should be implemented
I don't agree that http://buildbot.dolphin-emu.org should be disabled because
Matt_P
There exist arguments n the topic "Problem" and "Solution" that a Travis CI script has value despite the presence of
Tools/buildbot-try.sh
¨What's your argument that .travis.yml shouldn't be in the repo?
[03:15] @Matt_P That is an invalid argument, first provide a reason it should exist to begin with.
The reason is in the topic "Problem" and "Solution" in this post
There's a reply to this in the topic "Problem" after the text
[04:03] @Matt_P include it int he test branch
[04:04] @Matt_P We currnetly have a build platform.
[04:04] @Matt_P If you don't want to use it, then don't. But don't add your random files to the repo.
no you haven't described the cost of having it in the repo that makes the net utility negative
describe the cost of having
.travis.yml
in the repo that's larger than its utility so that the net utility is negativeJasper
The arguments from Jasper are paraphrased because the author
RachelB
[03:57] @RachelB JPeterson: i think in the time we've spent discussing this, you could have just added it to your clone on github and left it out of the main repo
It's described in the topic "Problem" and the "Solution" that it's inefficient