summaryrefslogtreecommitdiffstats
path: root/rules/pre
Commit message (Collapse)AuthorAgeFilesLines
* rules: support host-system-python3-* packages with setup.pyMichael Olbrich2024-03-071-0/+1
| | | | | | | Provide the options with the correct prefix for packages that need to specify it explictly and use them as default when needed. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/kernel: add PTXDIST_Y2038 to the low-level blacklistMichael Olbrich2023-10-251-1/+2
| | | | | | | The macros defined here are glibc specific. They don't make sense for kernel, bootloaders, etc. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules: define fortran compilerMichael Olbrich2023-10-191-0/+3
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules: keep x86_64-unknown-linux-gnu for GNU_BUILDMichael Olbrich2023-06-221-1/+1
| | | | | | | | The new config.guess changed it to x86_64-pc-linux-gnu but some stuff, e.g. rustc in OSELAS.Toolchain requires this to be x86_64-unknown-linux-gnu so stick with that for now. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* add cmake options for cross packagesMichael Olbrich2023-06-081-0/+6
| | | | | | This includes explicit search paths in sysroot-cross. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* toolchain: allow specifying a separate target for rustMichael Olbrich2023-04-271-2/+2
| | | | | | It is needed for some architectures and toolchains. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* allow using cargo with setuptools-rustMichael Olbrich2023-04-221-0/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules.make: stop using $(CROSS_LIB_DIR)Michael Olbrich2023-03-221-4/+3
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* ptxdist: always install to /libMichael Olbrich2023-03-201-1/+2
| | | | | | | | PTXdist does not support multilib. So don't get the libdir from the dynamic linker path. Always use /lib. If the linker is expected elsewhere, e.g. /lib64 then add a symlink for this. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules.make: sort options in CROSS_MESON_USR correctlyMichael Olbrich2023-03-031-1/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* code-signing: fix engine path for openssl 3.xMichael Olbrich2023-02-171-2/+2
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules.make: let Meson generate relocatable .pc filesPhilipp Zabel2023-01-281-0/+1
| | | | | | | | | | | | | | Set the pkgconfig.relocatable option to let Meson generate .pc files that set a relative prefix, allowing installation at an arbitrary path. This removes the need to mangle the prefix setting after the fact via scripts/lib/ptxd_make_world_install_mangle_pc.awk for Meson based packages. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Message-Id: <20230111101916.3749538-2-p.zabel@pengutronix.de> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* use /usr in sysroot-host and sysroot-crossMichael Olbrich2023-01-223-15/+33
| | | | | | | | Building packages with prefix=/ is getting more difficult. For sysroot-host and sysroot-cross is doesn't really matter, so switch to prefix=/usr here as well. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* ptx/mirror-pypi: fix typoMichael Olbrich2022-11-111-1/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules: ptx/mirror-pypi: avoid calling a shellMichael Olbrich2022-11-111-1/+3
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* add support for host cargo packagesMichael Olbrich2022-09-291-0/+5
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* xorg-server: move XORG_FONT_DIRS to rules/pre/xorg-dirs.makeMichael Olbrich2022-08-111-0/+10
| | | | | | It will be needed for a separate xwayland package. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules.make: add -DCMAKE_EXPORT_COMPILE_COMMANDS=ON to cmake optionsMichael Olbrich2022-04-121-0/+2
| | | | | | | With this cmake will generate compile_commands.json in the package build directory. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* add cargo config toolMichael Olbrich2021-11-261-0/+9
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* Add macro 'noyes' as reverse of 'yesno'Alexander Dahl2021-10-291-0/+12
| | | | | | | | This will be useful for some packages using scons. Signed-off-by: Alexander Dahl <ada@thorsis.com> Message-Id: <20211025130910.7257-2-ada@thorsis.com> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/Rules.make: Let CMAKE_INSTALL_LIBDIR be relative, as per spec.Christian Melki2021-09-031-1/+1
| | | | | | | | | | | | | This means that packages that assume that this variable is absolute will have to be modified. Adding something like -DCMAKE_INSTALL_LIBDIR=/usr/$(CROSS_LIB_DIR), after CROSS_CMAKE_USR to your CONF_OPT will probably suffice. Signed-off-by: Christian Melki <christian.melki@t2data.com> Reviewed-by: Denis Osterland-Heim <denis.osterland@diehl.com> Tested-by: Alexander Dahl <ada@thorsis.com> Message-Id: <20210809083621.3676-1-christian.melki@t2data.com> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* dts-cfghash-file: fix for older make versionsMichael Olbrich2021-07-231-3/+3
| | | | | | | | | For make 4.1 the macros must be on one line. So escape the newline to avoid errors like this: [...]/rules/kernel.make:39: *** missing separator. Stop. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* spelling fixes found by codespellMichael Olbrich2021-07-162-3/+3
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rework device-tree handlingMichael Olbrich2021-07-161-0/+15
| | | | | | | | | | | It's not really possible to build a dtb by itself. A lot of included dtsi and header files are needed. So build the device-trees with the package that provides these files. Currently that's the kernel package. This also means, that other kernel packages can have their own device-trees as well. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules: rework some error handlingMichael Olbrich2021-05-314-9/+29
| | | | | | | | | | | | There are several places where 'make' is aborted with an '$(error ...)' immediately when starting ptxdist. It's useful to detect problems early on. However, this means, that it also interferes with 'ptxdist print' to it can make debugging issues a bit more tricky. So collect the errors instead and print them in a early make target instead. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* ptx/config-md5: allow empyt md5 if --update-md5 is usedMichael Olbrich2021-05-271-2/+2
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* Add missing install CROSS_LIB_DIR for CMAKE environments.Christian Melki2021-05-211-0/+1
| | | | | | | | | Was installing libraries into wrong directories. Signed-off-by: Christian Melki <christian.melki@t2data.com> Message-Id: <20210518133401.22478-1-christian.melki@t2data.com> [mol: add /usr/] Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* code-signing: add macro to mark a online code signing providerDenis Osterland-Heim2021-04-091-0/+7
| | | | | | | | | | | | Normally server interaction is only allowed in get stage, but a code signing provider may have to communicate with a CA server for a signature. This macro enables all code signing user packages (kernel-fit, barebox, ...) to interact with a server outside the get stage. Signed-off-by: Denis Osterland-Heim <denis.osterland@diehl.com> Message-Id: <20210407115450.21355-3-denis.osterland@diehl.com> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* kernel: use kernel-opts as wellMichael Olbrich2021-04-081-2/+2
| | | | | | More code sharing between kernel and kernel template. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre:kernel: drop PARALLELMFLAGS from kernel/optsMichael Olbrich2021-04-081-1/+0
| | | | | | | Parallel building is handled automatically. No need to explicitly add the options. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* template: kernel: proper handle signed modulesMichael Olbrich2021-04-081-0/+1
| | | | | | | Same as 565aabf6f36d3ed31544d882394604c4a1b13597 but for the kernel template instead of the kernel itself. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* kernel: proper handle signed modulesDenis Osterland-Heim2021-04-011-1/+2
| | | | | | | | | | | | | | | If CONFIG_MODULE_SIG_ALL is set in kernelconfig then modules will be automatically signed during the modules_install phase of a kernel build. Signed modules are BRITTLE as the signature is outside of the defined ELF container. Thus they MAY NOT be stripped once the signature is computed and attached. Note the entire module is the signed payload, including any and all debug information present at the time of signing. See: https://www.kernel.org/doc/html/latest/admin-guide/module-signing.html Signed-off-by: Denis Osterland-Heim <denis.osterland@diehl.com> Message-Id: <20210331113525.22330-1-denis.osterland@diehl.com> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* kernel: use ptx/config-version and ptx/config-md5Michael Olbrich2021-02-121-1/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* kernel-header: use ptx/config-version and ptx/config-md5Michael Olbrich2021-02-121-1/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules: new macros ptx/config-version and ptx/config-md5Michael Olbrich2021-02-121-0/+40
| | | | | | | | | | | | There are several packages that get the version/md5 from the ptxconfig variables PTXCONF_<PKG>_VERSION / PTXCONF_<PKG>_MD5. These new new macros can be used for this and add basic sanity checking: If the package is enable, then the version and md5 must not be empty. Otherwise the string 'undefined' is returned to make it obvious that the version is currently not available. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* Rules: cmake: set -DCMAKE_INSTALL_SYSCONFDIR=/etc for all cmake packagesMichael Olbrich2021-01-151-0/+1
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* kernel, barebox: use explicit list of config targetsMichael Olbrich2020-10-071-0/+4
| | | | | | | | | | | The problem with the pattern rule is that it also matches some files, such as $(PTXDIST_TOPDIR)/config/images/barebox_partitions.config. This results in strange error messages. Use a global list of possible config targets and use it to generate explicit lists of make targets. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules/pre/mirror: add ptx/mirror-pypiBastian Krause2020-09-231-0/+2
| | | | | | | | | | Add macro for pypi URLs, e.g.: $(call ptx/mirror-pypi, aiohttp, $(PYTHON3_AIOHTTP).$(PYTHON3_AIOHTTP_SUFFIX)) Signed-off-by: Bastian Krause <bst@pengutronix.de> Message-Id: <20200922141434.8544-2-bst@pengutronix.de> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* ptx/in-path: fix with older make versionsMichael Olbrich2020-07-051-1/+1
| | | | | | | With oder make versions '$(1)' starts with a newline. So strip the argument to avoid this. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* ptx/in-path: handle complex cases in make as wellMichael Olbrich2020-07-041-8/+10
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* pre/kernel: add TARGET_HARDEN_GLIBCXX_ASSERTIONS to the low-level blacklistMichael Olbrich2020-05-201-0/+1
| | | | | | This should probably not be used here. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* rules: support older make versions that don't support $(file ..)Michael Olbrich2020-04-041-2/+2
| | | | | | | | | | | For example make 3.82 from CentOS 7 does not support $(file ..). Provide a (slower) fallback for those cases. For some things use ptx/file as fallback. However, this is very slow, so it cannot be called for every PTXCONF variable. So fallback to the old, less optimal handling in that case. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* fix package hash calculation with --progressMichael Olbrich2020-04-011-0/+5
| | | | | | | | | | With the latest changes, some things where added to the hash file twice when --progress was used. As a result, the hashes where different with and without --progress. Introduce a helper variable that determintes if make is called for the first time and use it everywhere. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* add helper macros to add data to the <PKG>_CFGHASHMichael Olbrich2020-03-201-0/+21
| | | | | | | | These macros can be used to add strings or files to the <PKG>_CFGHASH. With this, changes to these strings and files will trigger a rebuild of the package. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* canutils: remove no longer used ruleLadislav Michl2020-02-141-18/+0
| | | | | | | | | | commit f4f917544638 ("canutils: hardcode version 4.0.6") hardcoded canutils version, but left no longer used pre rule file in place. Delete it. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Message-Id: <20200204210359.GA33146@lenoch> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* Introduce global PAM optionLadislav Michl2020-01-311-0/+6
| | | | | Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* host-system-python*: cleanup variablesMichael Olbrich2020-01-241-0/+21
| | | | | | | | | - Define SYSTEMPYTHON similar to SYSTEMPYTHON3 - No absolute paths to avoid too long shebangs - Only define if the packages are enabled - Define the variables in rules/pre/ to allow usage with ':=' Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* remove hard dependency on Python2Michael Olbrich2020-01-231-6/+1
| | | | | | It's no longer needed. host-system-python2 handles all remaining packages. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
* Add initial code signing supportSascha Hauer2019-11-262-0/+32
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* gdb: use ptx/get-kconfigMichael Olbrich2019-10-221-2/+2
| | | | Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>