| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
| |
This increases also the number of elements the linux kernel
depends on.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Only coreutils.bst is used in another element,
remove unnecessary elements.
|
| |
|
|
|
|
|
|
| |
Previously it contains a superset of kernel configurations for
every x86_64 systems we built in baserock definitions.
Now it builds with the default config from the kernel repository.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This element was the same as freetype2. It was tracking the same
tag and reference.
This patch removes this element and replaces it by freetype2
in elements which depends on it.
|
|
|
|
|
|
| |
The repository contains a ./configure file which is broken.
To recreate the ./configure file(s), it is required to run
./autogen.sh
|
|
|
|
|
|
|
|
| |
There is a bug in buildstream when we are fetching the same thing
multiple times https://gitlab.com/BuildStream/buildstream/issues/5
There is an issue in the pipelines when we are fetching delta/linux
to build different packages for different jobs, so this will limit
to fetch this package maximum of 12 times at the same time.
|
|
|
|
|
|
| |
This repository contains a ./configure which is brocken.
It needs to run `autoreconf` to recreate the m4 element and
a valid configure file.
|
|
|
|
|
|
| |
`$prefix` was pointing to ../usr but links don't need relative path
anymore.
Removing $prefix from the links make the link to work again.
|
|
|
|
|
|
|
|
|
|
| |
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 https://gitlab.com/BuildStream/buildstream/issues/414 for more information.
Bump also the SHA of bst-external to fcd1fc365d0250bffe02937c89dcc31d11c299cf
|
|
|
|
|
| |
This doesn't fix anything we specifically need, but it's good to keep on
top of upstream changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
definition for the rest
|
| |
|
|
|
|
|
|
|
| |
This is made by a conversion made in
commit 8f8992a18d55c3abf28d4b6fc8036bd39d3dc1cf of definitions
Check there to know what exact versions of YBD and defs2bst was used
|
| |
|
|
|
|
| |
Keep the conversion though
|
|
|
|
|
| |
Drumroll... we actually boot the VM in QEMU, run a command, and
check its output is sane.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
https://gitlab.com/BuildStream/buildstream/issues/84
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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!
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
It was still using --target-arch which BuildStream no longer supports.
|
|
|
|
|
| |
This version changes how artifact caches are specified, so the
project.conf file needs updating too.
|
|
|
|
| |
The component on it are already build in the IVI system
|
|
|
|
| |
The components on it are already build in the GDP system
|
| |
|
|
|
|
| |
They are not really used/maintained
|
|
|
|
| |
So we build the same systems in build-1 for ybd and buildstream
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
This gains us support for `mkfs.ext4 -d`, which is great when making
disk images.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The approach from commit 56885a36e5c3830a6c6c7a663730a8a297a5825c was
neater, but it doesn't work due to this GitLab issue:
https://gitlab.com/gitlab-org/gitlab-ce/issues/20615
I can't see any way to make this work apart from putting the SHA1s
into the job before_script sections directly. I moved them upwards
to make it more obvious.
Of course once we stop using YBD we can clean this up nicely.
|