From d85382e41efbe3f3f9012a08851f93bb4919de65 Mon Sep 17 00:00:00 2001 From: Tristan Van Berkom Date: Wed, 1 Feb 2017 20:37:29 +0900 Subject: Manual conversion of Baserock's build-essential stratum This huge commit is a manual conversion, notes on what was needed: o project.conf defines the arch specific stuff which was previously hardcoded into YBD, so the stage1 target and target etc are all defined by the build-essential project.conf o Direct and easy changes for git source representation o Added stage1.bst & stage2.bst "stacks", everything built in stage2 build-depends on stage1.bst, and the final build-essential products build-depend on stage2.bst (note build-depend means to depend _only_ for building, not propagated forward). o Instead of using host tools we build on the GNOME flatpak sdk/platform bundles o Some build-essential morph files use $(dirname $(pwd)) for a sysroot, which is weird, it means the morph files rely on building at one directory below the slash sysroot - in buildstream we build in /buildstream/build which is two - had to replace these with $(dirname $(dirname $(pwd))) instead o Remove the devices sections from the fhs-dirs elements, not allowed to create static device nodes in buildstream. --- project.conf | 62 +++++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 47 insertions(+), 15 deletions(-) (limited to 'project.conf') diff --git a/project.conf b/project.conf index 15069bb1..9ea4e31d 100644 --- a/project.conf +++ b/project.conf @@ -1,21 +1,53 @@ -# Gedit text editor flatpakish build demo +# Building baserock build-essential in BuildStream # -name: gedit +name: build-essential aliases: - gnome: git://git.gnome.org/ + upstream: ssh://git@git.baserock.org/delta/ + baserock: ssh://git@git.baserock.org/baserock/ + gnomesdk: https://sdk.gnome.org/ + -# We're gonna eventually try to build a flatpak, -# so lets start trying to override the environment -# in the appropriate ways. -# variables: - prefix: /app + cpu: "%{bst-arch}" + abi: gnu + target-stage1: "%{cpu}-bootstrap-linux-%{abi}" + target: "%{cpu}-baserock-linux-%{abi}" -environment: - CFLAGS: "-O2 -g" - CXXFLAGS: "-O2 -g" - PATH: /app/bin:/usr/bin:/bin:/usr/sbin:/sbin - PKG_CONFIG_PATH: /app/lib/pkgconfig:/usr/lib/pkgconfig - XDG_DATA_DIRS: /app/share:/usr/share - GI_TYPELIB_PATH: /app/lib/girepository-1.0:/usr/lib/girepository-1.0 +# Resolve the cpu and ABI portions of the host triple based +# on archetecture names. +arches: + x86_32: + variables: + cpu: i686 + armv5l: + variables: + abi: gnueabi + armv7b: + variables: + abi: gnueabi + armv7l: + variables: + abi: gnueabi + armv7lhf: + variables: + abi: gnueabi + armv8l64: + variables: + cpu: aarch64 + armv8b64: + variables: + cpu: aarch64_be + mips64b: + variables: + cpu: mips64 + abi: gnuabi64 + mips64l: + variables: + cpu: mips64el + mips32b: + variables: + cpu: mips + mips32l: + variables: + cpu: mipsel -- cgit v1.2.1