[lxc-devel] [lxc/lxc] d2222f: Use AC_HEADER_MAJOR to detect major()/minor()/make...

GitHub noreply at github.com
Mon Jan 23 04:46:56 UTC 2017


  Branch: refs/heads/stable-2.0
  Home:   https://github.com/lxc/lxc
  Commit: d2222fae286ae13dcad8dce7a256201a18788110
      https://github.com/lxc/lxc/commit/d2222fae286ae13dcad8dce7a256201a18788110
  Author: Sergei Trofimovich <siarheit at google.com>
  Date:   2017-01-22 (Sun, 22 Jan 2017)

  Changed paths:
    M configure.ac
    M src/lxc/bdev/lxclvm.c
    M src/lxc/conf.c
    M src/lxc/lxccontainer.c

  Log Message:
  -----------
  Use AC_HEADER_MAJOR to detect major()/minor()/makedev()

Before the change build failed on Gentoo as:

  bdev/lxclvm.c: In function 'lvm_detect':
  bdev/lxclvm.c:140:4: error: implicit declaration of function 'major' [-Werror=implicit-function-declaration]
    major(statbuf.st_rdev), minor(statbuf.st_rdev));
    ^~~~~
  bdev/lxclvm.c:140:28: error: implicit declaration of function 'minor' [-Werror=implicit-function-declaration]
    major(statbuf.st_rdev), minor(statbuf.st_rdev));
                      ^~~~~

glibc plans to remove <sys/sysmacros.h> from glibc's <sys/types.h>:
    https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html

Gentoo already applied glibc patch to experimental glibc-2.24
to start preparingfor the change.

Autoconf has AC_HEADER_MAJOR to find out which header defines
reqiured macros:
    https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Particular-Headers.html

This change should also increase portability across other libcs.

Bug: https://bugs.gentoo.org/604360
Signed-off-by: Sergei Trofimovich <siarheit at google.com>




More information about the lxc-devel mailing list