Hi,
while working on a new project I discovered that the recent introduction of "waldux" (?) in the pretty massive commit 9bb871a0bb4c239239944d28bd4d5cfa19d84f62 breaks the kernel download mechanism for the raspberry pi.
The error seems to be related to double-quotes around the hash. These confuse the mechanism in fetch.mk that tries to work out a way to generate theĀ hash-named archive. It will then fail to extract the sources.
You can reproduce by deep-cloning
https://github.com/deets/pififorwarder.git
via
git clone --recursive
then change into the modules/openadk folder and check out the above mentioned command. Then just run ../../scripts/build.py, and you should get a non-working build.
I'm also having troubles enforcing GLIBC through the task that you can find in configs/tasks. Regardless of what I try to put in there (after manually setting the libc to glibc) - the task can't seem to control this choice. I noticed a similar problem with the kernel configuration: the task can't override the selected kernel anymore. It can only be affected by running menuconfig and manually changing this :( This is not visible in the repository, but I can reproduce it if you like. Any suggestions on how to overcome this?
Cheers,
Diez
Hi Diez, Diez B. Roggisch wrote,
Hi,
while working on a new project I discovered that the recent introduction of "waldux" (?) in the pretty massive commit 9bb871a0bb4c239239944d28bd4d5cfa19d84f62 breaks the kernel download mechanism for the raspberry pi.
It was fixed later here: c101615cf87ca237a281f9538bb533e0c74d165d
Please use latest commit. I pushed latest to github now.
I'm also having troubles enforcing GLIBC through the task that you can find in configs/tasks. Regardless of what I try to put in there (after manually setting the libc to glibc) - the task can't seem to control this choice. I noticed a similar problem with the kernel configuration: the task can't override the selected kernel anymore. It can only be affected by running menuconfig and manually changing this :( This is not visible in the repository, but I can reproduce it if you like. Any suggestions on how to overcome this?
Better use ADK_TARGET_LIBC: make ADK_TARGET_OS=linux ADK_TARGET_LIBC=glibc ADK_TARGET_ARCH=arm ADK_TARGET_SYSTEM=raspberry-pi3 ADK_APPLIANCE=new defconfig
grep GLIBC .config ADK_PACKAGE_GLIBC=y # ADK_PACKAGE_GLIBC_GCONV is not set ADK_TARGET_LIB_GLIBC=y ADK_TARGET_LIB_GLIBC_2_27=y # ADK_TARGET_LIB_GLIBC_GIT is not set
Instead of the select in the task.
best regards Waldemar
Hi Waldemar,
It was fixed later here:
c101615cf87ca237a281f9538bb533e0c74d165d
Please use latest commit. I pushed latest to github now.
Great. Forwarded my repo, and it works!
Better use ADK_TARGET_LIBC: make ADK_TARGET_OS=linux ADK_TARGET_LIBC=glibc ADK_TARGET_ARCH=arm ADK_TARGET_SYSTEM=raspberry-pi3 ADK_APPLIANCE=new defconfig
grep GLIBC .config ADK_PACKAGE_GLIBC=y # ADK_PACKAGE_GLIBC_GCONV is not set ADK_TARGET_LIB_GLIBC=y ADK_TARGET_LIB_GLIBC_2_27=y # ADK_TARGET_LIB_GLIBC_GIT is not set
Instead of the select in the task.
This also seems to work. I would like to understand this better though - how can we determine which options to pass via make-variables (or whatever they are), and which to determine via the task? Can this somehow be inferred?
Cheers,
Diez
Hi Diez, Diez B. Roggisch wrote,
Hi Waldemar,
It was fixed later here:
c101615cf87ca237a281f9538bb533e0c74d165d
Please use latest commit. I pushed latest to github now.
Great. Forwarded my repo, and it works!
Better use ADK_TARGET_LIBC: make ADK_TARGET_OS=linux ADK_TARGET_LIBC=glibc ADK_TARGET_ARCH=arm ADK_TARGET_SYSTEM=raspberry-pi3 ADK_APPLIANCE=new defconfig
grep GLIBC .config ADK_PACKAGE_GLIBC=y # ADK_PACKAGE_GLIBC_GCONV is not set ADK_TARGET_LIB_GLIBC=y ADK_TARGET_LIB_GLIBC_2_27=y # ADK_TARGET_LIB_GLIBC_GIT is not set
Instead of the select in the task.
This also seems to work. I would like to understand this better though - how can we determine which options to pass via make-variables (or whatever they are), and which to determine via the task? Can this somehow be inferred?
The best rule here is, if a make variable exist, then this should be used instead of a select in a task. They are all defined in mk/build.mk
They are documented here, I added some popular ones today: https://docs.openadk.org/html/manual.html#env-vars
best regards Waldemar