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>
Use a seperate sysroot directory (stored in variable SYSROOT)
instead of installing everything into the toolchain directory.
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>
- Move root.key into /etc/unbound directory
- Remove pid file from config, it is baked into the configure options
- Make sure unbound does not try to chroot anywhere
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>
- build needs a pair of product and board name
- some products can only be built for some boards
- Config files in product/<name> directory override those in board/<name>
- For some config files, like LDPATH or ROOTFS, the files are merged
- product/common provides defaults
Add default config for various services:
- Add default config for unbound
- Add default config for dnsmasq
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>