1
0
Fork 0
mirror of https://github.com/pygos/build.git synced 2024-11-18 09:19:46 +01:00
Commit graph

427 commits

Author SHA1 Message Date
34a1b2de68 Ignore errors if strip fails
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 19:13:02 +01:00
7496023d5f Use pkg tool for determining a build strategy
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 17:26:07 +01:00
509d1fdd4d Build pkg-utils during seperate "boot strap phase"
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 17:25:33 +01:00
ee56b08ffc fixup: also compress the prepare log after downloading
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 17:18:16 +01:00
b77f8892bb cleanup: move actual package build to helper function
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 17:15:58 +01:00
01256c6ab9 Bump pkg-utils version
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-09 15:26:29 +01:00
31ca494ce8 cleanup: remove /usr/root setup from rootfs package
Add root home directory to basefiles, make every package that
touches /etc/skel also provide defaults for root home.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-07 20:15:08 +01:00
26a9b8002f Cleanup rootfs package
- move the skeleton setup stuff out of the rootfs package into a
   sperate package called "basefiles"
 - remove manual unpacking from rootfs, we already have all the dependencies
   installed in the toolchain sysroot.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-07 20:12:19 +01:00
93a0cb1ca5 cleanup: remove symlink creation and file deletion from package build
We already have a micro managed list of files we include in the packages.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-07 20:12:19 +01:00
dd643ca334 fix: overwrite compressed logfile if it already exists
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-06 21:22:03 +01:00
a9eb892920 cleanup: use package files instead of source package dotfiles
Try to build a source package if at least one binary package is missing. If
that is the case, clean up possibly built packages so we can cleanly recover
from a prior crash.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-06 21:19:31 +01:00
2184f4dae7 cleanup: make $BUILDROOT point to actual product output directory
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-06 16:12:08 +01:00
e497ba164c Cleanup directories before and after building a package
In case a package build fails, we can simply restart the build script without
having to do manual cleanup of the intermediate directories.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-06 10:03:41 +01:00
8fa44569d8 cleanup: remove deploy directory argument from package command
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-06 10:03:12 +01:00
b3529c8deb cleanup: remove unneeded parameter from deploy_dev_cleanup
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-05 20:05:26 +01:00
705290a2cb Compress log files after a package stage has completed
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-05 20:04:16 +01:00
2c741e06f3 Eliminate latent, per package deploy directory
Same process as for the build dir. We have one intermediate deploy directory
that the packaes installs it self to, then we package the contents, finally
we nuke the build and deploy directory before starting with the next package.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-05 15:09:34 +01:00
2afd8fc20b cleanup: remove manual output directory clensing from tc-gcc2
We explicitly list every file that should be packaged, no need to manually
go over the ones we don't want.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-05 15:03:22 +01:00
706d4ac29f Add missing /lib directory to Raspberry Pi 3 ldpath
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-04 23:02:05 +01:00
d552141850 Fix musl subarch for ARM
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 23:54:47 +01:00
a0f4d41cfe fix strip_files: don't check filename against ELF
If we use "file ... | grep -i elf" to detect if a file is an ELF binary,
a file *named* elf will erroneously trigger it.

This commit adds a flag to disable printing of the file name.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 23:54:47 +01:00
5ca8069d5b Explicitly tell gcc what assembler/linker to use
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 23:54:47 +01:00
8a2d91a181 Make sure binutils ldscripts and binaries are packaged for toolchain
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 23:54:47 +01:00
5307722cc2 Fix rpi3 build
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 23:54:47 +01:00
88f6542fad Split libstdc++ into seperate package
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
bf23f1bdc7 Fix alix build
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
d7ae731c13 Split up unbound and util-linux into smaller packages
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
b556476d2f Move *.so symlinks to dev packages
We only need them for linking, no need to have them in the target filesystem.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
c8d01f966a Use pkgtool to resolve and manage dependencies, add sub package support
Been working on this for too long, don't remember the specifics, will add
documentation.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
a1d055c8e0 Add dummy package descriptions for toolchain packages
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
b7e5ce8118 Add package files for rootfs and rpi3 bootup files
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
5d019b5f14 Add development package descriptions
For every package that generates headers and static libraries in addition
to other binaries, add a *-dev package with propper dependencies.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
8483823e81 Generate a package for initrd
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
d2432c1d1e Use pkg for managing binaries and their dependencies
- rewrite the rootfs_files.txt listings to the format used by pkg
 - create package files from each package
 - use "pkg install" to manage installation of packages and dependencies
   into the rootfs and initrd staging dirs

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-03 17:47:02 +01:00
934a746b3f Add pkgtool to cross toolchain
The dependency in tc-pkg-config is added to make sure the pkg tool is built
*before* pkg-config.

Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
2019-03-01 10:01:05 +01:00
David Oberhollenzer
2fb62ec2f1 Update unfuck_libtool function
We tell the autoconf configure script that we are going to install stuff
to prefix "/" with libdir being set to "/lib", so the script ends up writing
"libdir='/lib'" to the libtool *.la scripts.

This is all fine and dandy until we do a 'make install' with DESTDIR set to
our actual package deploy directory. Libtool goes "OMG WTF we aren't
instaling to / afterall" and thinks it needs to do a relinking phase.

During relinking, it passes "-L$libdir" to gcc, which ends up as "-L/lib".
Now, gcc tries to link against local system libraries. Best case, the build
breaks and we know something stupid happened. It really bites us if we try
to cross compile from e.g. x86 to x86.

Until now, it worked to simply patch the *.la scripts before 'make install',
like other distros do, but recent versions of util-linux now ship with a
newer version of the libtool script which simply regenerates the *.la files.

This commit adds an extension to the patch script that patches the actuall
libtool script itself.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-17 19:55:32 +01:00
David Oberhollenzer
98bbfad989 Fix typo in OpenSSL build script, propperly add hardening flags
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-14 09:05:41 +01:00
David Oberhollenzer
f34878ac01 Fix toolchain configuration for alix bsp
The new gcc 8.2 toolchain emits fancy new endbr32 instructions that the
Geode LX doesn't have. The system chokes during boot with an illegal
opcode in libmount. This commit disables cet for the Alix bsp.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-13 02:39:49 +01:00
David Oberhollenzer
f17e6f75b2 Add extra config flags for binutils
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-13 02:39:05 +01:00
David Oberhollenzer
9a49a8aac4 Update nftables ruleset syntax
Apparently the tooling is now more strict in what syntax it accepts.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 14:06:54 +01:00
David Oberhollenzer
8650c174f7 Bump mainline LTS linux version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:29:22 +01:00
David Oberhollenzer
92a84d6f79 Bump tzdb version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:29:22 +01:00
David Oberhollenzer
ed4e7347bd Bump unbound version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:29:22 +01:00
David Oberhollenzer
bd533c9b93 Bump tar version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
447825b599 Bump sed version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
06c7532600 Bump readline version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
79d3c93219 Bump nginx version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
69a3dc4ed5 Bump iproute2 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
8be2e06777 Bump hostapd version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
2c28a1466f Bump gzip version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00