Blame support/Makefile

Packit Service 82fcde
# Makefile for support library, used only at build and test time
Packit Service 82fcde
# Copyright (C) 2016-2018 Free Software Foundation, Inc.
Packit Service 82fcde
# This file is part of the GNU C Library.
Packit Service 82fcde
Packit Service 82fcde
# The GNU C Library is free software; you can redistribute it and/or
Packit Service 82fcde
# modify it under the terms of the GNU Lesser General Public
Packit Service 82fcde
# License as published by the Free Software Foundation; either
Packit Service 82fcde
# version 2.1 of the License, or (at your option) any later version.
Packit Service 82fcde
Packit Service 82fcde
# The GNU C Library is distributed in the hope that it will be useful,
Packit Service 82fcde
# but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 82fcde
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 82fcde
# Lesser General Public License for more details.
Packit Service 82fcde
Packit Service 82fcde
# You should have received a copy of the GNU Lesser General Public
Packit Service 82fcde
# License along with the GNU C Library; if not, see
Packit Service 82fcde
# <http://www.gnu.org/licenses/>.
Packit Service 82fcde
Packit Service 82fcde
subdir := support
Packit Service 82fcde
Packit Service 82fcde
include ../Makeconfig
Packit Service 82fcde
Packit Service 82fcde
extra-libs := libsupport
Packit Service 82fcde
extra-libs-others = $(extra-libs)
Packit Service 82fcde
extra-libs-noinstall := $(extra-libs)
Packit Service 82fcde
Packit Service 82fcde
libsupport-routines = \
Packit Service 6b2d43
  blob_repeat \
Packit Service 82fcde
  check \
Packit Service 82fcde
  check_addrinfo \
Packit Service 82fcde
  check_dns_packet \
Packit Service 82fcde
  check_hostent \
Packit Service 82fcde
  check_netent \
Packit Service 82fcde
  delayed_exit \
Packit Service 82fcde
  ignore_stderr \
Packit Service 82fcde
  next_to_fault \
Packit Service 82fcde
  oom_error \
Packit Service 82fcde
  resolv_test \
Packit Service 82fcde
  set_fortify_handler \
Packit Service 82fcde
  support-xfstat \
Packit Service 82fcde
  support-xstat \
Packit Service 82fcde
  support_become_root \
Packit Service 82fcde
  support_can_chroot \
Packit Service 82fcde
  support_capture_subprocess \
Packit Service 82fcde
  support_capture_subprocess_check \
Packit Service 82fcde
  support_chroot \
Packit Service 6b2d43
  support_copy_file_range \
Packit Service 6b2d43
  support_descriptor_supports_holes \
Packit Service 7828ee
  support_descriptors \
Packit Service 82fcde
  support_enter_mount_namespace \
Packit Service 82fcde
  support_enter_network_namespace \
Packit Service 82fcde
  support_format_address_family \
Packit Service 82fcde
  support_format_addrinfo \
Packit Service 82fcde
  support_format_dns_packet \
Packit Service 82fcde
  support_format_herrno \
Packit Service 82fcde
  support_format_hostent \
Packit Service 82fcde
  support_format_netent \
Packit Service 82fcde
  support_isolate_in_subprocess \
Packit Service 82fcde
  support_openpty \
Packit Service 6b2d43
  support_paths \
Packit Service 82fcde
  support_quote_blob \
Packit Service 9448d4
  support_quote_string \
Packit Service 82fcde
  support_record_failure \
Packit Service 82fcde
  support_run_diff \
Packit Service 82fcde
  support_shared_allocate \
Packit Service 49ca75
  support_subprocess \
Packit Service 82fcde
  support_test_compare_blob \
Packit Service 82fcde
  support_test_compare_failure \
Packit Service 6b2d43
  support_test_compare_string \
Packit Service 82fcde
  support_write_file_string \
Packit Service 82fcde
  support_test_main \
Packit Service 82fcde
  support_test_verify_impl \
Packit Service 82fcde
  temp_file \
Packit Service 82fcde
  write_message \
Packit Service 82fcde
  xaccept \
Packit Service 82fcde
  xaccept4 \
Packit Service 82fcde
  xasprintf \
Packit Service 82fcde
  xbind \
Packit Service 82fcde
  xcalloc \
Packit Service 82fcde
  xchroot \
Packit Service 82fcde
  xclose \
Packit Service 82fcde
  xconnect \
Packit Service 6b2d43
  xcopy_file_range \
Packit Service 82fcde
  xdlfcn \
Packit Service 82fcde
  xdup2 \
Packit Service 82fcde
  xfclose \
Packit Service 82fcde
  xfopen \
Packit Service 82fcde
  xfork \
Packit Service 82fcde
  xftruncate \
Packit Service 82fcde
  xgetsockname \
Packit Service 82fcde
  xlisten \
Packit Service 82fcde
  xlseek \
Packit Service 82fcde
  xmalloc \
Packit Service 82fcde
  xmemstream \
Packit Service 82fcde
  xmkdir \
Packit Service 6b2d43
  xmkdirp \
Packit Service 82fcde
  xmmap \
Packit Service 82fcde
  xmprotect \
Packit Service 82fcde
  xmunmap \
Packit Service 82fcde
  xopen \
Packit Service 82fcde
  xpipe \
Packit Service 82fcde
  xpoll \
Packit Service 82fcde
  xpthread_attr_destroy \
Packit Service 82fcde
  xpthread_attr_init \
Packit Service 82fcde
  xpthread_attr_setdetachstate \
Packit Service 82fcde
  xpthread_attr_setguardsize \
Packit Service 82fcde
  xpthread_attr_setstacksize \
Packit Service 82fcde
  xpthread_barrier_destroy \
Packit Service 82fcde
  xpthread_barrier_init \
Packit Service 82fcde
  xpthread_barrier_wait \
Packit Service 82fcde
  xpthread_barrierattr_destroy \
Packit Service 82fcde
  xpthread_barrierattr_init \
Packit Service 82fcde
  xpthread_barrierattr_setpshared \
Packit Service 82fcde
  xpthread_cancel \
Packit Service 82fcde
  xpthread_check_return \
Packit Service 82fcde
  xpthread_cond_wait \
Packit Service 82fcde
  xpthread_create \
Packit Service 82fcde
  xpthread_detach \
Packit Service 82fcde
  xpthread_join \
Packit Service 82fcde
  xpthread_mutex_consistent \
Packit Service 82fcde
  xpthread_mutex_destroy \
Packit Service 82fcde
  xpthread_mutex_init \
Packit Service 82fcde
  xpthread_mutex_lock \
Packit Service 82fcde
  xpthread_mutex_unlock \
Packit Service 82fcde
  xpthread_mutexattr_destroy \
Packit Service 82fcde
  xpthread_mutexattr_init \
Packit Service 82fcde
  xpthread_mutexattr_setprotocol \
Packit Service 82fcde
  xpthread_mutexattr_setpshared \
Packit Service 82fcde
  xpthread_mutexattr_setrobust \
Packit Service 82fcde
  xpthread_mutexattr_settype \
Packit Service 82fcde
  xpthread_once \
Packit Service 82fcde
  xpthread_rwlock_init \
Packit Service 9f65d3
  xpthread_rwlock_destroy \
Packit Service 82fcde
  xpthread_rwlock_rdlock \
Packit Service 82fcde
  xpthread_rwlock_unlock \
Packit Service 82fcde
  xpthread_rwlock_wrlock \
Packit Service 82fcde
  xpthread_rwlockattr_init \
Packit Service 82fcde
  xpthread_rwlockattr_setkind_np \
Packit Service 82fcde
  xpthread_sigmask \
Packit Service 82fcde
  xpthread_spin_lock \
Packit Service 82fcde
  xpthread_spin_unlock \
Packit Service 82fcde
  xraise \
Packit Service 82fcde
  xreadlink \
Packit Service 82fcde
  xrealloc \
Packit Service 82fcde
  xrecvfrom \
Packit Service 82fcde
  xsendto \
Packit Service 82fcde
  xsetsockopt \
Packit Service 82fcde
  xsigaction \
Packit Service 82fcde
  xsignal \
Packit Service 82fcde
  xsocket \
Packit Service 49ca75
  xposix_spawn \
Packit Service 49ca75
  xposix_spawn_file_actions_addclose \
Packit Service 49ca75
  xposix_spawn_file_actions_adddup2 \
Packit Service 82fcde
  xstrdup \
Packit Service 82fcde
  xstrndup \
Packit Service 6b2d43
  xsymlink \
Packit Service 82fcde
  xsysconf \
Packit Service 82fcde
  xunlink \
Packit Service 82fcde
  xwaitpid \
Packit Service 82fcde
  xwrite \
Packit Service 82fcde
Packit Service 82fcde
libsupport-static-only-routines := $(libsupport-routines)
Packit Service 82fcde
# Only build one variant of the library.
Packit Service 82fcde
libsupport-inhibit-o := .os
Packit Service 82fcde
ifeq ($(build-shared),yes)
Packit Service 82fcde
libsupport-inhibit-o += .o
Packit Service 82fcde
endif
Packit Service 82fcde
Packit Service 6b2d43
CFLAGS-support_paths.c = \
Packit Service 6b2d43
		-DSRCDIR_PATH=\"`cd .. ; pwd`\" \
Packit Service 6b2d43
		-DOBJDIR_PATH=\"`cd $(objpfx)/..; pwd`\" \
Packit Service 6b2d43
		-DOBJDIR_ELF_LDSO_PATH=\"`cd $(objpfx)/..; pwd`/elf/$(rtld-installed-name)\" \
Packit Service 6b2d43
		-DINSTDIR_PATH=\"$(prefix)\" \
Packit Service 6b2d43
		-DLIBDIR_PATH=\"$(libdir)\"
Packit Service 6b2d43
Packit Service 6b2d43
ifeq (,$(CXX))
Packit Service 6b2d43
LINKS_DSO_PROGRAM = links-dso-program-c
Packit Service 6b2d43
else
Packit Service 6b2d43
LINKS_DSO_PROGRAM = links-dso-program
Packit Service 6b2d43
LDLIBS-links-dso-program = -lstdc++ -lgcc -lgcc_s $(libunwind)
Packit Service 6b2d43
endif
Packit Service 6b2d43
Packit Service 6b2d43
LDLIBS-test-container = $(libsupport)
Packit Service 6b2d43
Packit Service 6b2d43
others += test-container
Packit Service 6b2d43
others-noinstall += test-container
Packit Service 6b2d43
Packit Service 6b2d43
others += shell-container echo-container true-container
Packit Service 6b2d43
others-noinstall += shell-container echo-container true-container
Packit Service 6b2d43
Packit Service 6b2d43
others += $(LINKS_DSO_PROGRAM)
Packit Service 6b2d43
others-noinstall += $(LINKS_DSO_PROGRAM)
Packit Service 6b2d43
Packit Service 6b2d43
$(objpfx)test-container : $(libsupport)
Packit Service 6b2d43
$(objpfx)shell-container : $(libsupport)
Packit Service 6b2d43
$(objpfx)echo-container : $(libsupport)
Packit Service 6b2d43
$(objpfx)true-container : $(libsupport)
Packit Service 6b2d43
Packit Service 82fcde
tests = \
Packit Service 82fcde
  README-testing \
Packit Service 82fcde
  tst-support-namespace \
Packit Service 6b2d43
  tst-support_blob_repeat \
Packit Service 82fcde
  tst-support_capture_subprocess \
Packit Service 7828ee
  tst-support_descriptors \
Packit Service 82fcde
  tst-support_format_dns_packet \
Packit Service 82fcde
  tst-support_quote_blob \
Packit Service 9448d4
  tst-support_quote_string \
Packit Service 82fcde
  tst-support_record_failure \
Packit Service 82fcde
  tst-test_compare \
Packit Service 82fcde
  tst-test_compare_blob \
Packit Service 6b2d43
  tst-test_compare_string \
Packit Service 82fcde
  tst-xreadlink \
Packit Service 82fcde
Packit Service 82fcde
ifeq ($(run-built-tests),yes)
Packit Service 82fcde
tests-special = \
Packit Service 82fcde
  $(objpfx)tst-support_record_failure-2.out
Packit Service 82fcde
Packit Service 82fcde
$(objpfx)tst-support_record_failure-2.out: tst-support_record_failure-2.sh \
Packit Service 82fcde
  $(objpfx)tst-support_record_failure
Packit Service 82fcde
	$(SHELL) $< $(common-objpfx) '$(test-program-prefix-before-env)' \
Packit Service 82fcde
	  '$(run-program-env)' '$(test-program-prefix-after-env)' \
Packit Service 82fcde
	  > $@; \
Packit Service 82fcde
	$(evaluate-test)
Packit Service 82fcde
endif
Packit Service 82fcde
Packit Service 82fcde
$(objpfx)tst-support_format_dns_packet: $(common-objpfx)resolv/libresolv.so
Packit Service 82fcde
Packit Service 49ca75
tst-support_capture_subprocess-ARGS = -- $(host-test-program-cmd)
Packit Service 49ca75
Packit Service 82fcde
include ../Rules