1
0
forked from GitHub/gf-core

Merge pull request #7 from odanoburu/travis-ci

add travis ci
This commit is contained in:
John J. Camilleri
2018-08-13 08:46:09 +02:00
committed by GitHub
3 changed files with 14 additions and 55 deletions

View File

@@ -1,2 +1,14 @@
language: nix
script: rm -rf .git && nix-build gf.nix
sudo: required
language: c
services:
- docker
before_install:
- docker pull odanoburu/gf-src:3.9
script:
- |
docker run --mount src="$(pwd)",target=/home/gfer,type=bind odanoburu/gf-src:3.9 /bin/bash -c "cd /home/gfer/src/runtime/c &&
autoreconf -i && ./configure && make && make install ; cd /home/gfer ; cabal install -fserver -fc-runtime --extra-lib-dirs='/usr/local/lib'"

View File

@@ -1,34 +0,0 @@
{ mkDerivation, alex, array, base, bytestring, Cabal, cgi
, containers, directory, exceptions, filepath, happy, haskeline
, HTF, httpd-shed, HUnit, json, mtl, network, network-uri
, old-locale, parallel, pretty, process, random, stdenv, terminfo
, time, time-compat, unix, utf8-string
}:
mkDerivation {
pname = "gf";
version = "3.9";
src = ./.;
isLibrary = true;
isExecutable = true;
enableSeparateDataOutput = true;
libraryHaskellDepends = [
array base bytestring cgi containers directory exceptions filepath
haskeline httpd-shed json mtl network network-uri old-locale
parallel pretty process random terminfo time time-compat unix
utf8-string
];
libraryToolDepends = [ alex happy ];
executableHaskellDepends = [ base ];
testHaskellDepends = [
base Cabal directory filepath HTF HUnit process
];
doCheck = false;
postPatch = ''
sed -i "s|\"-s\"|\"\"|" ./Setup.hs
sed -i "s|numJobs (bf bi)++||" ./Setup.hs
'';
preBuild = ''export LD_LIBRARY_PATH=`pwd`/dist/build:$LD_LIBRARY_PATH'';
homepage = "http://www.grammaticalframework.org/";
description = "Grammatical Framework";
license = "unknown";
}

19
gf.nix
View File

@@ -1,19 +0,0 @@
let
# We import the package hierarchy from the NIX_PATH.
pkgs = import <nixpkgs> {};
#
# The `cgi` package has some out-of-date upper bounds.
# Instead of fixing that upstream, we can use the "jailbreak"
# function in Nix, which patches away the upper bounds.
#
# This isn't ideal, but it lets us build the dependency.
#
jailbreak = pkgs.haskell.lib.doJailbreak;
haskellPackages = pkgs.haskellPackages.extend (self: super: {
cgi = jailbreak super.cgi;
});
in {
gf = haskellPackages.callPackage (import ./default.nix) {};
}