1
0
Fork 0
mirror of https://github.com/pygos/build.git synced 2024-11-14 07:27:10 +01:00
Commit graph

417 commits

Author SHA1 Message Date
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
David Oberhollenzer
234c9f12b3 Bump grep version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
e53204ad1c Bump diffutils version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
4236040ede Bump btrfs-progs version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-11 00:27:02 +01:00
David Oberhollenzer
488c7a56c7 Bump busybox version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-09 15:33:18 +01:00
David Oberhollenzer
3ff8310a0e Bump bash version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-09 15:29:22 +01:00
David Oberhollenzer
7d88ca700a Add PIC/PIE flags to bzip2 package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2019-01-08 15:37:20 +01:00
David Oberhollenzer
f9a6cc2e73 Directly pipe checksum into comparison tool in download function
Don't create unneccessary temporary files.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-12-29 13:07:53 +01:00
David Oberhollenzer
1d8a794e1f Bump sqlite3 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-11-27 14:15:51 +01:00
David Oberhollenzer
03a1208f45 Bump Raspberry Pi 3 firmware version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-11-27 14:09:41 +01:00
David Oberhollenzer
5dd74ace1b Bump Raspberry Pi 3 vendor kernel version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-11-27 14:07:33 +01:00