| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note that we cannot cross compile static binaries out of the box yet
with Guix. For instance if we use:
guix build --target=arm-linux-gnueabihf --file=scripts/guix.scm
We end up with the following error:
Backtrace:
In guix/ui.scm:
462:3 19 (_)
In ice-9/boot-9.scm:
1747:15 18 (with-exception-handler
#<procedure 9d77630 at ice-9/b…> …)
1752:10 17 (with-exception-handler _ _ #:unwind? _ # _)
In guix/ui.scm:
449:6 16 (_)
In guix/scripts/build.scm:
715:5 15 (_)
In srfi/srfi-1.scm:
673:15 14 (append-map _ _ . _)
586:17 13 (map1 ("i686-linux"))
In guix/scripts/build.scm:
717:21 12 (_ _)
In guix/store.scm:
1377:11 11 (map/accumulate-builds
#<store-connection 256.99 82587…> …)
1295:8 10 (call-with-build-handler
#<procedure 9d77600 at guix/s…> …)
In guix/scripts/build.scm:
676:18 9 (_ _)
In guix/store.scm:
2165:25 8 (run-with-store
#<store-connection 256.99 8258758> #<p…> …)
1993:13 7 (_ #<store-connection 256.99 8258758>)
In guix/packages.scm:
1899:40 6 (_)
1517:16 5 (package->bag _ _ _ #:graft? _)
1614:22 4 (thunk)
1353:35 3 (lower* . _)
In ice-9/boot-9.scm:
1685:16 2 (raise-exception _ #:continuable? _)
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure struct-vtable: Wrong type argument in position 1
(expecting struct): #f
But if we remove the transformed packages from guix.scm, for instance by
removing them from the list of packages to build at the end of the file:
(list libsamsung-ipc
libsamsung-ipc-static
- (with-fixed-android-make-stub libsamsung-ipc-clang-android)
- (with-fixed-android-make-stub libsamsung-ipc-gcc-android)
libsamsung-ipc-clang-autotools
libsamsung-ipc-gcc-autotools)
cross compilation then works.
Thanks to the help from people on #autotools on liberachat for
suggestions on how to improve this patch.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Guix system users need to use guix shell and the provided
scripts/manifest.scm to do local builds and testing.
However 'guix shell --container' doesn't have /usr/bin/env, so tests
don't work if we rely on what is in the sheebang (#!).
In various Makefile.am we had:
PY_LOG_COMPILER = $(PYTHON)
but PYTHON was undefined, so for some reasons that made 'make check'
rely on the sheebang instead of just using 'python'.
With this fix, with
'guix shell --pure --container -f scripts/manifest.scm',
./configure now properly detect the 'python3' that is in the path:
Interpreters paths:
PYTHON3..................: python3
And 'python3' is then used to run the python test scripts, which makes
then makes 'make check' succeed.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without that fix, we don't ship any of the python test programs:
$ make dist
$ tar tf libsamsung-ipc-0.7.0.tar.xz | grep "\.py$"
so 'make check' fail with the following error when building from a
tarball:
make[4]: Leaving directory
'/tmp/libsamsung-ipc/libsamsung-ipc-0.7.0/samsung-ipc/tests'
fatal: making test-suite.log: failed to create libsamsung-ipc-test.trs
fatal: making test-suite.log: failed to create libsamsung-ipc-test.log
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without that fix, nv_data-imei compiles fine in git, but if we build
from a tarball, nv_data-imei.h is missing from the tarball:
$ make dist
$ tar tf libsamsung-ipc-0.7.0.tar.xz | grep "ipc-modem.*\.[ch]"
libsamsung-ipc-0.7.0/tools/ipc-modem/ipc-modem-sms.c
libsamsung-ipc-0.7.0/tools/ipc-modem/ipc-modem-log.c
libsamsung-ipc-0.7.0/tools/ipc-modem/ipc-modem.c
libsamsung-ipc-0.7.0/tools/ipc-modem/tests/ipc-modem-sms-test.c
libsamsung-ipc-0.7.0/tools/ipc-modem/tests/ipc-modem-sms-fuzz.c
which then results in a compilation failure:
ipc-modem-log.c:28:10: fatal error: ipc-modem-log.h:
No such file or directory
28 | #include "ipc-modem-log.h"
| ^~~~~~~~~~~~~~~~~
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The CFLAGS that are in the %common-strict-cflags in scripts/guix.scm
have been validated with both GCC and CLANG and they are useful to
find potential issues in the code or code that won't compile on
Android.
However while the scripts/guix.scm script is really useful to test
commits once they are ready, it is less convenient to use it when
fixing issues in commits that are still being worked on.
This is because it is not as fast as building libsamsung-ipc directly
because:
- it requires a clean source directory to work (this can be done with
make distclean) so we can't reuse the current build output
- libsamsung-ipc source code is copied and built 5 times (in different
configurations)
As for the implementation, AM_CFLAGS was used instead of appending to
the default CFLAGS as CFLAGS is meant to be a variable for users. The
effect is that both are independent, so if users don't want strict
CFLAGS, they would need to not use --enable-strict-cflags.
And it was implemented as a shell script to at the same time:
- Enable to have comments, and good formating of the flags.
- Enable to share the cflags between guix.scm and the autotools.
- Keep the complexity low to keep it working in most situations.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
|
|
|
|
|
|
| |
This has several advantages:
- This makes the code cleaner as we now have a more abstract logging
and less code in the main c file.
- If new files are added, this will enable to use logging functions in
the new files.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
This enables to then split ipc-modem in several files in a clean way.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|