diff options
Diffstat (limited to 'tests/show-dependencies.setup')
-rwxr-xr-x | tests/show-dependencies.setup | 250 |
1 files changed, 250 insertions, 0 deletions
diff --git a/tests/show-dependencies.setup b/tests/show-dependencies.setup new file mode 100755 index 00000000..74d10c2b --- /dev/null +++ b/tests/show-dependencies.setup @@ -0,0 +1,250 @@ +#!/bin/bash +# +# Copyright (C) 2012-2014 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, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +source "$SRCDIR/scripts/fix-committer-info" + +# Create a repository +repo="$DATADIR/test-repo" +mkdir "$repo" +cd "$repo" +git init --quiet + +# Add a single source file to simulate compiling +cat <<EOF > hello.c +#include <stdio.h> +int main(void) +{ + puts("hello, world"); + return 0; +} +EOF +git add hello.c + +# Define a couple of chunk morphologies for the GTK stack +gtkcomponents=(freetype fontconfig cairo pango glib gdk-pixbuf gtk + dbus-glib dbus) +for component in "${gtkcomponents[@]}" +do + cat <<EOF > $component.morph +name: $component +kind: chunk +build-commands: + - gcc -o hello hello.c +install-commands: + - install -d "\$DESTDIR"/etc + - install -d "\$DESTDIR"/bin + - install hello "\$DESTDIR"/bin/$component +EOF + git add $component.morph +done +git commit --quiet -m "add .c source file and GTK chunk morphologies" + +# Define a stratum for the GTK stack +cat <<EOF > gtk-stack.morph +name: gtk-stack +kind: stratum +build-depends: [] +chunks: + - name: freetype + repo: test:test-repo + ref: master + build-depends: [] + build-mode: bootstrap + - name: fontconfig + repo: test:test-repo + ref: master + build-depends: [] + build-mode: bootstrap + - name: cairo + repo: test:test-repo + ref: master + build-depends: [] + build-mode: bootstrap + - name: pango + repo: test:test-repo + ref: master + build-depends: + - freetype + - fontconfig + - name: glib + repo: test:test-repo + ref: master + build-depends: [] + build-mode: bootstrap + - name: gdk-pixbuf + repo: test:test-repo + ref: master + build-depends: + - glib + - name: gtk + repo: test:test-repo + ref: master + build-depends: + - cairo + - gdk-pixbuf + - glib + - pango + - name: dbus + repo: test:test-repo + ref: master + build-depends: [] + build-mode: bootstrap + - name: dbus-glib + repo: test:test-repo + ref: master + build-depends: + - dbus + - glib +EOF +git add gtk-stack.morph +git commit --quiet -m "add gtk-stack.morph stratum" + +# Add a single source file to simulate compiling +cat <<EOF > hello.c +#include <stdio.h> +int main(void) +{ + puts("hello, world"); + return 0; +} +EOF +git add hello.c + +# Define a couple of chunk morphologies for the GTK stack +xfcecomponents=(xfce4-dev-tools libxfce4util libxfce4ui exo xfconf garcon + thunar tumbler xfce4-panel xfce4-settings xfce4-session + xfwm4 xfdesktop xfce4-appfinder gtk-xfce-engine) +for component in "${xfcecomponents[@]}" +do + cat <<EOF > $component.morph +name: $component +kind: chunk +build-commands: + - gcc -o hello hello.c +install-commands: + - install -d "\$DESTDIR"/etc + - install -d "\$DESTDIR"/bin + - install hello "\$DESTDIR"/bin/$component +EOF + git add $component.morph +done +git commit --quiet -m "add .c source file and GTK chunk morphologies" + +# Define a stratum for the Xfce core +cat <<EOF > xfce-core.morph +name: xfce-core +kind: stratum +build-depends: + - morph: gtk-stack +chunks: + - name: libxfce4util + repo: test:test-repo + ref: master + build-depends: [] + - name: xfconf + repo: test:test-repo + ref: master + build-depends: + - libxfce4util + - name: libxfce4ui + repo: test:test-repo + ref: master + build-depends: + - xfconf + - name: exo + repo: test:test-repo + ref: master + build-depends: + - libxfce4util + - name: garcon + repo: test:test-repo + ref: master + build-depends: + - libxfce4util + - name: thunar + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - exo + - name: tumbler + repo: test:test-repo + ref: master + build-depends: [] + - name: xfce4-panel + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - exo + - garcon + - name: xfce4-settings + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - exo + - xfconf + - name: xfce4-session + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - exo + - xfconf + - name: xfwm4 + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - xfconf + - name: xfdesktop + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - xfconf + - name: xfce4-appfinder + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - garcon + - xfconf + - name: gtk-xfce-engine + repo: test:test-repo + ref: master + build-depends: + - libxfce4ui + - garcon + - xfconf +EOF +git add xfce-core.morph +git commit --quiet -m "add xfce-core.morph stratum" + +cat <<EOF > xfce-system.morph +name: xfce-system +kind: system +arch: $("$SRCDIR/scripts/test-morph" print-architecture) +strata: + - morph: xfce-core + build-mode: bootstrap +EOF +git add xfce-system.morph +git commit --quiet -m "add xfce-system" |