1. 26 Jul, 2018 1 commit
  2. 29 Jun, 2018 2 commits
  3. 28 Jun, 2018 2 commits
  4. 25 Jun, 2018 1 commit
  5. 04 Jun, 2018 1 commit
    • Francisco Redondo Marchena's avatar
      Update buildstream to 1.1.3 · 45bb922a
      Francisco Redondo Marchena authored
      Set up/Hard code STAGE2_SYSROOT to the root directory instead of
      calculating it depending on the current directory because buildstream
      has changed the default value of "build-root" directory and this was
      causing issues in the stage2 packages.
      See BuildStream/buildstream#414 for more information.
      
      Bump also the SHA of bst-external to fcd1fc365d0250bffe02937c89dcc31d11c299cf
      45bb922a
  6. 23 Feb, 2018 2 commits
    • Sam Thursfield's avatar
      Use new version of bst-external when testing · eea23f6a
      Sam Thursfield authored
      This doesn't fix anything we specifically need, but it's good to keep on
      top of upstream changes.
      eea23f6a
    • Sam Thursfield's avatar
      Update to build with BuildStream 1.0.1 · da19a12f
      Sam Thursfield authored
      We were previously building with an old 0.x version.
      
      This requires a fix to how we import the 'x86image' plugin from the
      bst-external plugins repo.
      
      It also requires a couple of fixes to elements which need to add things
      to the CMake configure commandline. These should use the new
      'cmake-local' variable rather than overriding the configure-commands
      as a whole; the builds of these elements were breaking because the
      default commands changed upstream to expect out-of-tree builds.
      da19a12f
  7. 09 Feb, 2018 1 commit
  8. 01 Feb, 2018 1 commit
  9. 12 Dec, 2017 4 commits
  10. 11 Dec, 2017 1 commit
  11. 06 Dec, 2017 4 commits
    • Sam Thursfield's avatar
      .gitlab-ci.yml: Add image deployment test for BuildStream · 8f8992a1
      Sam Thursfield authored
      Drumroll... we actually boot the VM in QEMU, run a command, and
      check its output is sane.
      8f8992a1
    • Sam Thursfield's avatar
      Add script to test that minimal-system boots in QEMU · 9537e9be
      Sam Thursfield authored
      This is the first thing I have ever written with asyncio and it
      spits out lots of warnings and exceptions in some cases that I
      don't really understand.
      
      However the basics are there: if the VM boots and can run `uname -a`,
      the test succeeds; otherwise it fails.
      9537e9be
    • Sam Thursfield's avatar
      Add minimal-system-image-x86_64 · 6c27a98c
      Sam Thursfield authored
      This element produces a disk image that boots in QEMU. It has a kernel,
      BusyBox, and little else; but should be suitable as a basis for more
      grand endeavours.
      
      This disk image we produce is 53MB. I spent a while trying to get this
      as small as possible and this is as far as I got:
      
        * The boot partition seems to have a minimum size just over 32MB;
          lower than that and SYSLINUX fails to write the boot sector. The
          combined size of the initramfs and kernel is about 32MB, so I
          imagine that's what limits us.
      
        * The main partition is limited in size only by the amount of binaries
          that we put there.
      
        * We have a useless 40KB swap partition, which the x86image plugin
          insists on creating for us. Again 40KB is the minimum size that
          `mkswap` will allow. It's possible to override or modify the
          x86image plugin to avoid swap altogether but I'm not sure of the
          best way to proceed.
      
      There are a few dependency cleanups in the bsp-generic stack; previously
      we'd build the whole 'foundation' stack which took ages and wasn't
      needed at all.
      6c27a98c
    • Sam Thursfield's avatar
      Add support for building an initramfs · 58d9422a
      Sam Thursfield authored
      The scripts are taken from
      https://gitlab.com/BuildStream/buildstream-tests (branch build-gnome).
      
      Those in turn were taken from
      http://git.baserock.org/baserock/baserock/initramfs-scripts.git
      
      We manually set the executable permissions in the init scripts
      using chmod, because
      BuildStream/buildstream#84
      58d9422a
  12. 04 Dec, 2017 5 commits
    • Sam Thursfield's avatar
      gnu-toolchain: Split rule improvements · e230e817
      Sam Thursfield authored
      This includes many fixes that result in us being able to produce a
      minimal OS image or initramfs of a reasonable size. I have built an
      initramfs of 16MB uncompressed with this change: still a bit bigger
      than necessary, but much better than the comical ~700MB thing complete
      with kernel source code and C++ compiler that I got before these
      changes.
      
      Note that the gnu-toolchain stack now puts all the toolchain binaries
      into the 'devel' artifact. The 'runtime' artifact just contains
      libraries needed to run programs that are built with that toolchain.
      We should split this up further in future so that C programs don't
      depend on libstdc++.
      
      Special care is taken for GCC and GLIBC to handle the lib/ and lib64/
      split that they do on some 64-bit platforms.
      
      We also globally put /usr/src into the devel artifact, which is only
      useful for the linux.bsp element at present but makes sense as a global
      rule.
      e230e817
    • Sam Thursfield's avatar
      gnu-toolchain: Use correct target names in Binutils and GCC · b07c7e83
      Sam Thursfield authored
      We intended to set the architecture triplet for systems we build
      to something like x86_64-baserock-linux-gnu. This wasn't actually
      happening though as nobody had passed the message on to the GCC and
      Binutils build systems, so we got mixed defaults of
      x86_64-pc-linux-gnu and x86_64-unknown-linux-gnu.
      
      Both GCC and Binutils install files that have the target name
      in their path, and it's useful when writing split rules if we
      know in advance what that's actually going to be. Plus it looks
      neater if we set the vendor field in the architecture triplet correctly!
      b07c7e83
    • Sam Thursfield's avatar
      Update Samba · 952eb2ae
      Sam Thursfield authored
      To hopefully fix a build issue that has randomly reared its head:
      
          [3104/3492] Linking default/lib/tdb/tdbrestore
          /usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/7.1.0/../../../libcom_err.a(error_message.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared object; recompile with -fPIC
          /usr/lib/gcc/x86_64-pc-linux-gnu/7.1.0/../../../libcom_err.a: error adding symbols: Bad value
          collect2: error: ld returned 1 exit status
      952eb2ae
    • Sam Thursfield's avatar
      Update PostgreSQL to fix autoreconf issue · d6b73ad1
      Sam Thursfield authored
      d6b73ad1
    • Sam Thursfield's avatar
      Fix elements where we can't run autoreconf · 6a9f3738
      Sam Thursfield authored
      BuildStream changed its defaults in be08caa06d6b8ba780aa so that
      autoreconf always runs.
      
      A few components need fixing as a result, mostly those which were
      not correctly depending on autotools
      6a9f3738
  13. 29 Nov, 2017 1 commit
  14. 27 Nov, 2017 4 commits
  15. 26 Nov, 2017 3 commits
  16. 13 Nov, 2017 1 commit
    • Sam Thursfield's avatar
      Update Samba · 4c3498ea
      Sam Thursfield authored
      To hopefully fix a build issue that has randomly reared its head:
      
          [3104/3492] Linking default/lib/tdb/tdbrestore
          /usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/7.1.0/../../../libcom_err.a(error_message.o): relocation R_X86_64_32 against `.bss' can not be used when making a shared object; recompile with -fPIC
          /usr/lib/gcc/x86_64-pc-linux-gnu/7.1.0/../../../libcom_err.a: error adding symbols: Bad value
          collect2: error: ld returned 1 exit status
      4c3498ea
  17. 10 Nov, 2017 2 commits
  18. 08 Nov, 2017 1 commit
  19. 05 Nov, 2017 2 commits
    • Sam Thursfield's avatar
      .gitlab-ci.yml: Update defs2bst version · 842487f6
      Sam Thursfield authored
      This version uses %{arch} instead of %{bst-arch}, and uses list
      composition operations instead of pre- and post- commands.
      842487f6
    • Sam Thursfield's avatar
      Replace use of architecture conditionals with generic project conditions · 42038653
      Sam Thursfield authored
      The initial implementation of architecture conditionals has been
      removed, as the same behaviours can be implemented using the more
      generic mechanism for conditionals that is being introduced for
      BuildStream 1.0.
      
      We now have two architecture options: build_arch and arch. They are
      documented in project.conf. The first one controls the build sandbox
      while the second controls the host and target of the binaries we
      produce.
      42038653
  20. 03 Nov, 2017 1 commit