Fails to build on GNU/Hurd

Bug #1191503 reported by Pino Toscano on 2013-06-16
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libmemcached
Undecided
Unassigned

Bug Description

libmemcached 1.0.17 does not compile on GNU/Hurd. Also, there is one failure when running the test suite.

The attached patch fixes the following issues:

* libtest/timer.cc
The code in the __MACH__ blocks is specific to Mac OS X; since GNU/Hurd runs on a Mach-based microkernel (gnumach), __MACH__ is defined by the compiler, leading to compile issues. The solution is just changing the checked symbol (__APPLE__) so it is really used only on Mac OS X.

* libtest/unittest.cc
The Hurd implementation of posix_spawn in glibc fails straight away when the filename does not exist, i.e. what happens in application_doesnotexist_BINARY. Thus, fix the expected return value to be INVALID_POSIX_SPAWN.

Pino Toscano (pinotree) wrote :
Sergey Shilko (sergey-shilko) wrote :
Download full text (3.3 KiB)

My tests are not passing with 1 error for 1.0.18 version, sources do compile

libtest/unittest.cc:626: in application_doesnotexist_BINARY() Assertion 'Application::SUCCESS' != 'true_app.run(args)'
unittest.application.doesnotexist --fubar [ failed ]
unittest.application.echo fubar 0:000003595 [ ok ]

Tests 65
        Failed 1
        Skipped 9
        Succeeded 55

Under raw docker image of debian:stretch (https://hub.docker.com/_/debian/)

https://github.com/debuerreotype/docker-debian-artifacts/blob/de09dd55b6328b37b89a33e76b698f9dbe611fab/stretch/Dockerfile

---
Configuration summary for libmemcached version 1.0.18

   * Installation prefix: /usr/local/php7/tripod-php7/lib/libmemcached-shared
   * System type: unknown-linux-gnu
   * Host CPU: x86_64
   * C Compiler: gcc (Debian 6.3.0-18) 6.3.0 20170516
   * C Flags: -O2 -mcx16 -m64 -maes -march=corei7 -mfpmath=sse -minline-all-stringops -pipe -fstack-protector-strong -Wformat -Werror=format-security -fPIE -fno-strict-aliasing -fsigned-char -mpc64 --param=ssp-buffer-size=4 -std=gnu99 -Wno-terminate -g -Wno-unknown-pragmas -Wno-pragmas -Wall -Wextra -Wunsuffixed-float-constants -Wjump-misses-init -Wno-attributes -Waddress -Wvarargs -Warray-bounds -Wbad-function-cast -Wchar-subscripts -Wcomment -Wfloat-equal -Wformat-security -Wformat=2 -Wformat-y2k -Wlogical-op -Wmaybe-uninitialized -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wnormalized=id -Woverride-init -Wpointer-arith -Wpointer-sign -Wredundant-decls -Wshadow -Wsign-compare -Wstrict-overflow=1 -Wswitch-enum -Wtrampolines -Wundef -Wunsafe-loop-optimizations -funsafe-loop-optimizations -Wclobbered -Wunused -Wunused-result -Wunused-variable -Wunused-parameter -Wunused-local-typedefs -Wwrite-strings -fwrapv -pie -Wsizeof-pointer-memaccess -Wpacked
   * C++ Compiler: c++ (Debian 6.3.0-18) 6.3.0 20170516
   * C++ Flags: -O2 -mcx16 -m64 -maes -march=corei7 -mfpmath=sse -minline-all-stringops -pipe -fstack-protector-strong -Wformat -Werror=format-security -fPIE -fno-strict-aliasing -fsigned-char -mpc64 --param=ssp-buffer-size=4 -Wno-terminate -g -Wno-unknown-pragmas -Wno-pragmas -Wall -Wextra -Wno-attributes -Wvarargs -Waddress -Warray-bounds -Wchar-subscripts -Wcomment -Wctor-dtor-privacy -Wfloat-equal -Wformat=2 -Wformat-y2k -Wmaybe-uninitialized -Wmissing-field-initializers -Wlogical-op -Wnon-virtual-dtor -Wnormalized=id -Woverloaded-virtual -Wpointer-arith -Wredundant-decls -Wshadow -Wsign-compare -Wstrict-overflow=1 -Wswitch-enum -Wtrampolines -Wundef -Wunsafe-loop-optimizations -funsafe-loop-optimizations -Wc++11-compat -Wclobbered -Wunused -Wunused-result -Wunused-variable -Wunused-parameter -Wunused-local-typedefs -Wwrite-strings -Wformat-security -fwrapv -pie -Wsizeof-pointer-memaccess -Wpacked
   * CPP Flags: -fvisibility=hidden
   * LIB Flags:
   * Assertions enabled: no
   * Debug enabled: ...

Read more...

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers