Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various build fixes; CMake config; Dead code removal #2

Closed
wants to merge 9 commits into from
Closed

Various build fixes; CMake config; Dead code removal #2

wants to merge 9 commits into from

Conversation

falbrechtskirchinger
Copy link
Contributor

Here are my fixes for various build issues, compiler warnings, and QA notices I encountered while writing an ebuild for Gentoo. I also added a CMake config and removed a tiny bit of unneeded code.

Florian

CC, AS, and LD are sensibly initialized by make and can be externally
overridden as needed. Don't hardcode gcc.
Instead of overriding CFLAGS etc., append required flags.
strtoul() returns unsigned long not uint32_t.
Before the strtoul call the GUID string has been sufficently checked,
that we know with certainty it won't trigger any of the documented
errors. We know the length and the format, therefore we also know the
maximum return value.
Gentoo uses -Wl,--as-needed which causes the build to fail due to
incorrect link order.
@vathpela
Copy link
Contributor

I've pulled all of these /except/ e1591c9 . I really don't want to carry two make systems in the tree. If there's an easy way to make this simpler to layer on top, I'd be happy to entertain that idea.

@vathpela vathpela closed this Nov 13, 2013
hmtheboy154 added a commit to android-generic/external_efivar that referenced this pull request Oct 8, 2023
Disable debugging will cause crash with a FORTIFY failure:

Abort message: 'FORTIFY: fprintf: null FILE*'
    rax 0000000000000000  rbx 0000000000000d14  rcx 00007c3d0749069f  rdx 0000000000000006
    r8  0000000000000000  r9  0000000000000000  r10 00007ffdefe13030  r11 0000000000000217
    r12 0000000000000000  r13 0000000000000000  r14 00007ffdefe13028  r15 0000000000000d14
    rdi 0000000000000d14  rsi 0000000000000d14
    rbp 000000000000009d  rsp 00007ffdefe13020  rip 00007c3d0749069f

backtrace:
      #00 pc 000000000005f69f  /apex/com.android.runtime/lib64/bionic/libc.so (abort+191) (BuildId: cbf2c6babf4ce509f78a7963e811ace3)
      rhboot#1 pc 00000000000612f0  /apex/com.android.runtime/lib64/bionic/libc.so (__fortify_fatal(char const*, ...)+160) (BuildId: cbf2c6babf4ce509f78a7963e811ace3)
      rhboot#2 pc 00000000000c5d9a  /apex/com.android.runtime/lib64/bionic/libc.so (fprintf+282) (BuildId: cbf2c6babf4ce509f78a7963e811ace3)
      rhboot#3 pc 000000000002bc72  /system/bin/efibootmgr (log_+178) (BuildId: 0e8d9a0cd8994623ec86c1005c9d5e8b)
      rhboot#4 pc 000000000002ab87  /system/bin/efibootmgr (_format_acpi_dn+583) (BuildId: 0e8d9a0cd8994623ec86c1005c9d5e8b)
      rhboot#5 pc 0000000000029f63  /system/bin/efibootmgr (efidp_format_device_path+515) (BuildId: 0e8d9a0cd8994623ec86c1005c9d5e8b)
      rhboot#6 pc 000000000001a1a0  /system/bin/efibootmgr (show_vars+336) (BuildId: 0e8d9a0cd8994623ec86c1005c9d5e8b)
      rhboot#7 pc 0000000000018e3a  /system/bin/efibootmgr (main+7578) (BuildId: 0e8d9a0cd8994623ec86c1005c9d5e8b)
      rhboot#8 pc 0000000000050d19  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+89) (BuildId: cbf2c6babf4ce509f78a7963e811ace3)

So we need to bring debugging to Android. Our target to support is 11+ so we got memfd_create. Also
for fopencookie() we can use https://gitlab.com/Conan_Kudo/portable-fopencookie

This reverts commit 79c490e.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants