URL:
  <https://savannah.gnu.org/bugs/?55520>

                 Summary: Configure failure on glibc 2.28 on usability of
<sys/sysmacros.h>
                 Project: GNU GRUB
            Submitted by: earnestly
            Submitted on: Sat 19 Jan 2019 01:23:47 PM UTC
                Category: Compilation
                Severity: Major
                Priority: 5 - Normal
              Item Group: Software Error
                  Status: None
                 Privacy: Public
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 
                 Release: Git master
         Reproducibility: Every Time
         Planned Release: None

    _______________________________________________________

Details:

* linux
* glibc 2.28.9000-553-g02f440c1ef5

When using the following ./configure the configure system appears to not
correctly detect the presence of sys/sysmacros.h which generates errors
involving undefined major and minor-nomarkup objects.


./configure --with-platform=pc \
    --prefix=/usr \
    --sbindir=/usr/bin \
    --enable-nls \
    --enable-device-mapper \
    --enable-boot-time \
    --enable-cache-stats \
    --enable-grub-mkfont \
    --enable-grub-mount \
    --disable-werror



grub-core/osdep/devmapper/hostdisk.c:87:26: warning: implicit declaration of
function 'major' [-Wimplicit-function-declaration]
   return dm_is_dm_major (major (st.st_rdev));
                          ^~~~~
grub-core/osdep/devmapper/hostdisk.c:87:26: warning: nested extern declaration
of 'major' [-Wnested-externs]
grub-core/osdep/devmapper/hostdisk.c: In function
'grub_util_get_dm_node_linear_info':
grub-core/osdep/devmapper/hostdisk.c:122:11: error: called object 'major' is
not a function or function pointer
   major = major (dev);
           ^~~~~
grub-core/osdep/devmapper/hostdisk.c:117:7: note: declared here
   int major = 0, minor = 0;
       ^~~~~
grub-core/osdep/devmapper/hostdisk.c:123:11: error: called object 'minor' is
not a function or function pointer
   minor = minor (dev);
           ^~~~~
grub-core/osdep/devmapper/hostdisk.c:117:18: note: declared here
   int major = 0, minor = 0;
                  ^~~~~
make[2]: *** [Makefile;6227:
grub-core/osdep/devmapper/libgrubkern_a-hostdisk.o] Error 1
make[2]: *** Waiting for unfinished jobs....


To work around this issue I'm explicitly setting
ac_cv_header_sys_sysmacros_h=yes

Additionally during the configure I get the following warning:


configure: WARNING: sys/sysmacros.h: present but cannot be compiled
configure: WARNING: sys/sysmacros.h:     check for missing prerequisite
headers?
configure: WARNING: sys/sysmacros.h: see the Autoconf documentation
configure: WARNING: sys/sysmacros.h:     section "Present But Cannot Be
Compiled"
configure: WARNING: sys/sysmacros.h: proceeding with the compiler's result
configure: WARNING:     ## ------------------------------- ##
configure: WARNING:     ## Report this to [email protected] ##
configure: WARNING:     ## ------------------------------- ##






    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?55520>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/


_______________________________________________
Bug-grub mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-grub

Reply via email to