From bfdf734ac19932eecb284cf2d7f44399a1758430 Mon Sep 17 00:00:00 2001 From: Arkshine Date: Thu, 5 Jun 2014 19:45:03 +0200 Subject: [PATCH] Add Travis CI --- .travis.yml | 11 +++++++++++ support/Versioning | 16 ++++++++++------ 2 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..2d023c0e --- /dev/null +++ b/.travis.yml @@ -0,0 +1,11 @@ +language: cpp +compiler: + - clang +before_script: + - sudo apt-get update -qq + - sudo apt-get install -y g++-multilib libc6-dev-i386 lib32stdc++6 lib32z1-dev + - CHECKOUT_DIR=$PWD && cd .. && $CHECKOUT_DIR/support/checkout-deps.sh && cd $CHECKOUT_DIR +script: + - mkdir build && cd build + - python ../configure.py --enable-optimize + - ambuild diff --git a/support/Versioning b/support/Versioning index ea01a5df..26a7249b 100644 --- a/support/Versioning +++ b/support/Versioning @@ -1,5 +1,6 @@ # vim: set ts=8 sts=2 sw=2 tw=99 et ft=python: import os, sys +import re builder.SetBuildFolder('/') @@ -17,16 +18,19 @@ outputs = [ ] with open(os.path.join(builder.sourcePath, '.git', 'HEAD')) as fp: - git_state = fp.read().strip().split(':')[1].strip() - -git_head_path = os.path.join(builder.sourcePath, '.git', git_state) -if not os.path.exists(git_head_path): - git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD') + head_contents = fp.read().strip() + if re.search('^[a-fA-F0-9]{40}$', head_contents): + git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD') + else: + git_state = head_contents.split(':')[1].strip() + git_head_path = os.path.join(builder.sourcePath, '.git', git_state) + if not os.path.exists(git_head_path): + git_head_path = os.path.join(builder.sourcePath, '.git', 'HEAD') sources = [ os.path.join(builder.sourcePath, 'product.version'), - # This is a hack, but we need some way to only run this script when HG changes. + # This is a hack, but we need some way to only run this script when Git changes. git_head_path, # The script source is a dependency, of course...