commit
b8d5aa586e
5 changed files with 55 additions and 10 deletions
|
@ -1,4 +1,8 @@
|
||||||
language: objective-c
|
language: cpp
|
||||||
|
compiler: clang
|
||||||
|
os:
|
||||||
|
- linux
|
||||||
|
- osx
|
||||||
|
|
||||||
notifications:
|
notifications:
|
||||||
email:
|
email:
|
||||||
|
|
|
@ -20,7 +20,9 @@ def main():
|
||||||
args = parse_args()
|
args = parse_args()
|
||||||
for config in args.configuration:
|
for config in args.configuration:
|
||||||
build_path = os.path.join('out', config)
|
build_path = os.path.join('out', config)
|
||||||
subprocess.call([ninja, '-C', build_path, args.target])
|
ret = subprocess.call([ninja, '-C', build_path, args.target])
|
||||||
|
if ret != 0:
|
||||||
|
sys.exit(ret)
|
||||||
|
|
||||||
|
|
||||||
def parse_args():
|
def parse_args():
|
||||||
|
|
|
@ -4,15 +4,32 @@ import os
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
from lib.util import rm_rf
|
from lib.util import execute, rm_rf, scoped_env
|
||||||
|
|
||||||
|
|
||||||
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
||||||
|
|
||||||
|
LINUX_DEPS = [
|
||||||
|
'libgnome-keyring-dev',
|
||||||
|
'libgtk2.0-dev',
|
||||||
|
'libnotify-dev',
|
||||||
|
'gcc-multilib',
|
||||||
|
'g++-multilib',
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
os.environ['CI'] = '1'
|
os.environ['CI'] = '1'
|
||||||
|
|
||||||
|
is_travis = (os.getenv('TRAVIS') == 'true')
|
||||||
|
if is_travis and sys.platform == 'linux2':
|
||||||
|
print 'Setup travis CI'
|
||||||
|
execute(['sudo', 'apt-get', 'update'])
|
||||||
|
execute(['sudo', 'apt-get', 'install'] + LINUX_DEPS)
|
||||||
|
|
||||||
|
os.environ['DISPLAY'] = ':99.0'
|
||||||
|
execute(['sh', '-e', '/etc/init.d/xvfb', 'start'])
|
||||||
|
|
||||||
rm_rf(os.path.join(SOURCE_ROOT, 'out'))
|
rm_rf(os.path.join(SOURCE_ROOT, 'out'))
|
||||||
rm_rf(os.path.join(SOURCE_ROOT, 'node_modules'))
|
rm_rf(os.path.join(SOURCE_ROOT, 'node_modules'))
|
||||||
rm_rf(os.path.join(SOURCE_ROOT, 'frameworks'))
|
rm_rf(os.path.join(SOURCE_ROOT, 'frameworks'))
|
||||||
|
@ -21,7 +38,14 @@ def main():
|
||||||
rm_rf(os.path.join(SOURCE_ROOT, 'vendor', 'brightray', 'vendor', 'download',
|
rm_rf(os.path.join(SOURCE_ROOT, 'vendor', 'brightray', 'vendor', 'download',
|
||||||
'libchromiumcontent'))
|
'libchromiumcontent'))
|
||||||
|
|
||||||
run_script('bootstrap.py')
|
if is_travis and sys.platform == 'linux2':
|
||||||
|
with scoped_env('CXX', 'g++'):
|
||||||
|
with scoped_env('CC', 'gcc'):
|
||||||
|
run_script('bootstrap.py')
|
||||||
|
run_script('update.py')
|
||||||
|
else:
|
||||||
|
run_script('bootstrap.py')
|
||||||
|
|
||||||
run_script('cpplint.py')
|
run_script('cpplint.py')
|
||||||
if sys.platform != 'win32':
|
if sys.platform != 'win32':
|
||||||
run_script('pylint.py')
|
run_script('pylint.py')
|
||||||
|
|
|
@ -29,6 +29,18 @@ def scoped_cwd(path):
|
||||||
os.chdir(cwd)
|
os.chdir(cwd)
|
||||||
|
|
||||||
|
|
||||||
|
@contextlib.contextmanager
|
||||||
|
def scoped_env(key, value):
|
||||||
|
origin = ''
|
||||||
|
if key in os.environ:
|
||||||
|
origin = os.environ[key]
|
||||||
|
os.environ[key] = value
|
||||||
|
try:
|
||||||
|
yield
|
||||||
|
finally:
|
||||||
|
os.environ[key] = origin
|
||||||
|
|
||||||
|
|
||||||
def download(text, url, path):
|
def download(text, url, path):
|
||||||
safe_mkdir(os.path.dirname(path))
|
safe_mkdir(os.path.dirname(path))
|
||||||
with open(path, 'wb') as local_file:
|
with open(path, 'wb') as local_file:
|
||||||
|
|
|
@ -35,12 +35,15 @@ def update_gyp():
|
||||||
if sys.platform == 'cygwin':
|
if sys.platform == 'cygwin':
|
||||||
# Force using win32 python on cygwin.
|
# Force using win32 python on cygwin.
|
||||||
python = os.path.join('vendor', 'python_26', 'python.exe')
|
python = os.path.join('vendor', 'python_26', 'python.exe')
|
||||||
subprocess.call([python, gyp,
|
|
||||||
'-f', 'ninja', '--depth', '.', 'atom.gyp',
|
ret = subprocess.call([python, gyp,
|
||||||
'-Icommon.gypi', '-Ivendor/brightray/brightray.gypi',
|
'-f', 'ninja', '--depth', '.', 'atom.gyp',
|
||||||
'-Dlinux_clang=0', # Disable brightray's clang setting
|
'-Icommon.gypi', '-Ivendor/brightray/brightray.gypi',
|
||||||
'-Dtarget_arch={0}'.format(arch),
|
'-Dlinux_clang=0', # Disable brightray's clang setting
|
||||||
'-Dlibrary=static_library'])
|
'-Dtarget_arch={0}'.format(arch),
|
||||||
|
'-Dlibrary=static_library'])
|
||||||
|
if ret != 0:
|
||||||
|
sys.exit(ret)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue