#!/bin/sh # # Copyright (C) 2011-2015 Codethink Limited # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 2 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . ## Convert the hello-chunk project to something cmake-like, then ## build it. set -eu chunkrepo="$DATADIR/chunk-repo" cd "$chunkrepo" git checkout --quiet farrokh cat <<'EOF' >CMakeLists.txt cmake_minimum_required(VERSION 2.8) project(hello) set(hello_SOURCES hello.c) add_executable(hello ${hello_SOURCES}) install(TARGETS hello RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) EOF git add CMakeLists.txt cat < hello.morph name: hello kind: chunk build-system: cmake install-commands: - make DESTDIR="\$DESTDIR" install EOF git add hello.morph git commit --quiet -m "Convert hello to a cmake project" "$SRCDIR/scripts/test-morph" build-morphology \ test:morphs-repo master hello-system cd "$DATADIR" "$SRCDIR/scripts/test-morph" init workspace cd "$DATADIR/workspace" "$SRCDIR/scripts/test-morph" checkout test:morphs-repo master cd "$DATADIR/workspace/master/test/morphs-repo" refs=`"$SRCDIR/scripts/test-morph" query-cache hello-system.morph hello` for ref in $refs do ostree --repo="$DATADIR/cache/artifacts/repo" checkout --fsync=false \ "$ref" "$DATADIR/$ref" find $DATADIR/$ref/* | sed "s:^$DATADIR/$ref/::" done | LC_ALL=C sort -u | sed '/^\.\/./s:^\./::' | grep -Ee '^(usr/)?(bin|etc)'