This commit adds an "emptypackage" template that implements defaults
for all package functions and is included before every package.
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
It picks up the linker hardening flags and stuffs them into the
Libs section of the pkg-config file. Some packages, such as
procps-ng end up trying to apply them in a semi parsed form and
choke when trying to link against "noexecstack".
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
- crt-dev is a dependency of toolchain
- basefiles is a dependency of toolchain
- libstdc++ is (now also) a dependency of toolchain
This commit removes direct build dependencies to the above and replacest
them with dependencies to the toolchain package.
Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
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>
- 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>
Automagically strip all executables (recursively for subdirectories in lib
and bin) inside the mk.sh build loop.
This removes the necessity in the build scripts to strip the files. This also
allows us to remove the error prone install-strip target from the build
scripts.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Every package now has or generates a rootfs_files.txt containing a list
of files that should be packed into the rootfs, their permissions and
their owner.
This gives us fine grained controll over the owners and permissions of the
rootfs files (by generating a squashfs pseudo file).
In subsequent steps, this allows us to remove the deploy/devdeploy split and
actually simplifiy most of the build scripts.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Crunch project websites and try to find the latest version for each
package without having to do the work manually.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
- Remove empty directories installed to / by install targets
- Make sure we strip everything
- Remove charset.alias file installed by every pacakge, add
centralized version to rootfs package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
- Don't duplicate shared objects, use the ones from the deploy
directory when building dependend packages
- Add helper function for moving headers, static libraries
and pkgconfig data to devdeploy directory
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Instead of having a "depends" file with a list of packages, add a
"DEPENDS" variable to the build script.
Generate the rootfs dependencies from a config file stored in the
cfg directory.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>