1
0
mirror of https://github.com/systemd/systemd synced 2026-04-11 17:44:58 +02:00

Compare commits

..

No commits in common. "e67e6691e57c446e9f2bbc3c5edfa74ce45ab41d" and "77ec2816c6814957138fde72571aa22e5988b0a4" have entirely different histories.

3 changed files with 11 additions and 15 deletions

View File

@ -468,7 +468,7 @@ conf.set('SIZEOF_DEV_T', cc.sizeof('dev_t', prefix : '#include <sys/types.h>'))
conf.set('SIZEOF_INO_T', cc.sizeof('ino_t', prefix : '#include <sys/types.h>')) conf.set('SIZEOF_INO_T', cc.sizeof('ino_t', prefix : '#include <sys/types.h>'))
conf.set('SIZEOF_TIME_T', cc.sizeof('time_t', prefix : '#include <sys/time.h>')) conf.set('SIZEOF_TIME_T', cc.sizeof('time_t', prefix : '#include <sys/time.h>'))
conf.set('SIZEOF_RLIM_T', cc.sizeof('rlim_t', prefix : '#include <sys/resource.h>')) conf.set('SIZEOF_RLIM_T', cc.sizeof('rlim_t', prefix : '#include <sys/resource.h>'))
conf.set('SIZEOF_TIMEX_MEMBER', cc.sizeof('typeof(((struct timex *)0)->freq)', prefix : '#include <sys/timex.h>')) conf.set('SIZEOF_TIMEX_MEMBER', cc.sizeof('((struct timex *)0)->freq', prefix : '#include <sys/timex.h>'))
decl_headers = ''' decl_headers = '''
#include <uchar.h> #include <uchar.h>

View File

@ -294,20 +294,6 @@ else
efi_format = ['--target=efi-app-@0@'.format(efi_arch[1])] efi_format = ['--target=efi-app-@0@'.format(efi_arch[1])]
endif endif
if efi_arch[1] == 'arm'
# On arm, the compiler (correctly) gives us the following warning:
# libgcc.a(_popcountsi2.o) uses 4-byte wchar_t yet the output is to
# use 2-byte wchar_t; use of wchar_t values across objects may fail
#
# libgcc does not have any occurences of wchar_t in its sources or the
# documentation, so it's safe to assume that we can ignore this warning.
#
# So far, this only happens with arm due to popcount even though x86 and
# x86_64 also have to rely on libgcc's popcount. Therefore, we only disable
# this for arm to make sure this doesn't mask other issues in the future.
efi_ldflags += ['-Wl,--no-warn-mismatch']
endif
if run_command('grep', '-q', '__CTOR_LIST__', efi_lds).returncode() == 0 if run_command('grep', '-q', '__CTOR_LIST__', efi_lds).returncode() == 0
# fedora has a patched gnu-efi that adds support for ELF constructors. # fedora has a patched gnu-efi that adds support for ELF constructors.
# If ld is called by gcc something about these symbols breaks, resulting # If ld is called by gcc something about these symbols breaks, resulting

View File

@ -627,8 +627,12 @@ int dissect_image(
DissectedImage **ret) { DissectedImage **ret) {
#if HAVE_BLKID #if HAVE_BLKID
#ifdef GPT_ROOT_NATIVE
sd_id128_t root_uuid = SD_ID128_NULL, root_verity_uuid = SD_ID128_NULL; sd_id128_t root_uuid = SD_ID128_NULL, root_verity_uuid = SD_ID128_NULL;
#endif
#ifdef GPT_USR_NATIVE
sd_id128_t usr_uuid = SD_ID128_NULL, usr_verity_uuid = SD_ID128_NULL; sd_id128_t usr_uuid = SD_ID128_NULL, usr_verity_uuid = SD_ID128_NULL;
#endif
bool is_gpt, is_mbr, multiple_generic = false, bool is_gpt, is_mbr, multiple_generic = false,
generic_rw = false, /* initialize to appease gcc */ generic_rw = false, /* initialize to appease gcc */
generic_growfs = false; generic_growfs = false;
@ -678,13 +682,19 @@ int dissect_image(
/* If the verity data declares it's for the /usr partition, then search for that, in all /* If the verity data declares it's for the /usr partition, then search for that, in all
* other cases assume it's for the root partition. */ * other cases assume it's for the root partition. */
#ifdef GPT_USR_NATIVE
if (verity->designator == PARTITION_USR) { if (verity->designator == PARTITION_USR) {
usr_uuid = fsuuid; usr_uuid = fsuuid;
usr_verity_uuid = vuuid; usr_verity_uuid = vuuid;
} else { } else {
#endif
#ifdef GPT_ROOT_NATIVE
root_uuid = fsuuid; root_uuid = fsuuid;
root_verity_uuid = vuuid; root_verity_uuid = vuuid;
#endif
#ifdef GPT_USR_NATIVE
} }
#endif
} }
if (fstat(fd, &st) < 0) if (fstat(fd, &st) < 0)