mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
zdump: Makefile: add basic libpv support
The functionalities of libpv are used in the next patch. Libpv itself requires glib2 and libcrypto. Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com> Reviewed-by: Steffen Eiden <seiden@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
committed by
Jan Höppner
parent
f0fb4a180a
commit
e537ab902e
101
zdump/Makefile
101
zdump/Makefile
@@ -20,27 +20,48 @@ check_dep_fuse:
|
|||||||
"-DFUSE_USE_VERSION=30")
|
"-DFUSE_USE_VERSION=30")
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#
|
.detect_openssl.dep.c:
|
||||||
# HAVE_ZLIB: Allow skip zgetdump build, when no zlib-devel is available
|
echo "#include <openssl/evp.h>" > $@
|
||||||
#
|
echo "#if OPENSSL_VERSION_NUMBER < 0x10100000L" >> $@
|
||||||
ifeq (${HAVE_ZLIB},0)
|
echo " #error At least OpenSSL version 1.1.0 is required" >> $@
|
||||||
|
echo "#endif" >> $@
|
||||||
|
echo "static void __attribute__((unused)) test(void) {" >> $@
|
||||||
|
echo " EVP_MD_CTX *ctx = EVP_MD_CTX_new();" >> $@
|
||||||
|
echo " EVP_MD_CTX_free(ctx);" >> $@
|
||||||
|
echo "}" >> $@
|
||||||
|
|
||||||
all:
|
.check_dep_zgetdump: .detect_openssl.dep.c check_dep_fuse
|
||||||
$(SKIP) HAVE_ZLIB=0
|
|
||||||
|
|
||||||
install:
|
|
||||||
$(SKIP) HAVE_ZLIB=0
|
|
||||||
|
|
||||||
else
|
|
||||||
|
|
||||||
check_dep_zlib:
|
|
||||||
$(call check_dep, \
|
$(call check_dep, \
|
||||||
"zgetdump", \
|
"zgetdump", \
|
||||||
"zlib.h", \
|
"zlib.h", \
|
||||||
"zlib-devel or libz-dev", \
|
"zlib-devel or libz-dev", \
|
||||||
"HAVE_ZLIB=0")
|
"HAVE_ZLIB=0")
|
||||||
|
$(call check_dep, \
|
||||||
|
"zgetdump", \
|
||||||
|
"glib.h", \
|
||||||
|
"glib2-devel / libglib2.0-dev", \
|
||||||
|
"HAVE_GLIB2=0")
|
||||||
|
$(call check_dep, \
|
||||||
|
"zgetdump", \
|
||||||
|
$<, \
|
||||||
|
"openssl-devel / libssl-dev version >= 1.1.0", \
|
||||||
|
"HAVE_OPENSSL=0", \
|
||||||
|
"-I.")
|
||||||
|
touch $@
|
||||||
|
|
||||||
all: check_dep_fuse check_dep_zlib zgetdump
|
#
|
||||||
|
# Allow skip of zgetdump build, when no zlib-devel, openssl-devel, glib2-devel is available
|
||||||
|
#
|
||||||
|
BUILD_TARGETS :=skip-zgetdump
|
||||||
|
INSTALL_TARGETS := skip-zgetdump
|
||||||
|
ifneq (${HAVE_ZLIB},0)
|
||||||
|
ifneq (${HAVE_OPENSSL},0)
|
||||||
|
ifneq (${HAVE_GLIB2},0)
|
||||||
|
BUILD_TARGETS := zgetdump
|
||||||
|
INSTALL_TARGETS := install-zgetdump
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
OBJECTS = zgetdump.o opts.o zg.o zg_error.o zg_print.o \
|
OBJECTS = zgetdump.o opts.o zg.o zg_error.o zg_print.o \
|
||||||
dfi.o dfi_mem_chunk.o dfi_vmcoreinfo.o \
|
dfi.o dfi_mem_chunk.o dfi_vmcoreinfo.o \
|
||||||
@@ -56,6 +77,25 @@ OBJECTS = zgetdump.o opts.o zg.o zg_error.o zg_print.o \
|
|||||||
dt_scsi.o output.o \
|
dt_scsi.o output.o \
|
||||||
ngdump.o dt_ngdump.o dfi_ngdump.o
|
ngdump.o dt_ngdump.o dfi_ngdump.o
|
||||||
|
|
||||||
|
ifneq ($(shell sh -c 'command -v pkg-config'),)
|
||||||
|
GLIB2_CFLAGS := $(shell pkg-config --silence-errors --cflags glib-2.0)
|
||||||
|
GLIB2_LIBS := $(shell pkg-config --silence-errors --libs glib-2.0)
|
||||||
|
LIBCRYPTO_CFLAGS := $(shell pkg-config --silence-errors --cflags libcrypto)
|
||||||
|
LIBCRYPTO_LIBS := $(shell pkg-config --silence-errors --libs libcrypto)
|
||||||
|
else
|
||||||
|
GLIB2_CFLAGS := -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
|
||||||
|
GLIB2_LIBS := -lglib-2.0
|
||||||
|
LIBCRYPTO_CFLAGS :=
|
||||||
|
LIBCRYPTO_LIBS := -lcrypto
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPV = $(rootdir)/libpv/libpv.a
|
||||||
|
LIBPV_CFLAGS := -DOPENSSL_API_COMPAT=0x10100000L \
|
||||||
|
$(GLIB2_CFLAGS) \
|
||||||
|
$(LIBCRYPTO_CFLAGS) \
|
||||||
|
$(NULL)
|
||||||
|
LIBPV_LIBS := $(GLIB2_LIBS) $(LIBCRYPTO_LIBS)
|
||||||
|
|
||||||
ifeq ("$(HAVE_FUSE)","0")
|
ifeq ("$(HAVE_FUSE)","0")
|
||||||
FUSE_CFLAGS = -DHAVE_FUSE=0 -D_FILE_OFFSET_BITS=64
|
FUSE_CFLAGS = -DHAVE_FUSE=0 -D_FILE_OFFSET_BITS=64
|
||||||
FUSE_LDLIBS =
|
FUSE_LDLIBS =
|
||||||
@@ -66,23 +106,30 @@ else
|
|||||||
FUSE_CFLAGS = -DHAVE_FUSE=1 -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse3
|
FUSE_CFLAGS = -DHAVE_FUSE=1 -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse3
|
||||||
FUSE_LDLIBS = -lfuse3
|
FUSE_LDLIBS = -lfuse3
|
||||||
endif
|
endif
|
||||||
LDLIBS += -lz $(FUSE_LDLIBS)
|
LDLIBS += -lz $(FUSE_LDLIBS) $(LIBPV_LIBS)
|
||||||
ALL_CFLAGS += $(FUSE_CFLAGS)
|
ALL_CFLAGS += $(FUSE_CFLAGS) $(LIBPV_CFLAGS)
|
||||||
|
|
||||||
ifneq ("$(HAVE_FUSE)","0")
|
ifneq ("$(HAVE_FUSE)","0")
|
||||||
OBJECTS += zfuse.o
|
OBJECTS += zfuse.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
libs = $(rootdir)/libutil/libutil.a
|
libs = $(rootdir)/libutil/libutil.a $(LIBPV)
|
||||||
zgetdump: $(OBJECTS) $(libs)
|
|
||||||
|
|
||||||
install: all
|
all: $(BUILD_TARGETS)
|
||||||
|
|
||||||
|
zgetdump: .check_dep_zgetdump $(OBJECTS) $(libs)
|
||||||
|
|
||||||
|
skip-zgetdump:
|
||||||
|
echo " SKIP zgetdump due to unresolved dependencies"
|
||||||
|
|
||||||
|
install-zgetdump: zgetdump
|
||||||
$(INSTALL) -d -m 755 $(DESTDIR)$(MANDIR)/man8 $(DESTDIR)$(BINDIR)
|
$(INSTALL) -d -m 755 $(DESTDIR)$(MANDIR)/man8 $(DESTDIR)$(BINDIR)
|
||||||
$(INSTALL) -m 755 zgetdump $(DESTDIR)$(BINDIR)
|
$(INSTALL) -m 755 zgetdump $(DESTDIR)$(BINDIR)
|
||||||
$(INSTALL) -m 644 zgetdump.8 $(DESTDIR)$(MANDIR)/man8
|
$(INSTALL) -m 644 zgetdump.8 $(DESTDIR)$(MANDIR)/man8
|
||||||
|
|
||||||
clean:
|
install: $(INSTALL_TARGETS)
|
||||||
rm -f *.o *~ zgetdump core.*
|
|
||||||
endif
|
|
||||||
|
|
||||||
.PHONY: all install clean check_dep_fuse check_dep_zlib
|
clean:
|
||||||
|
rm -f -- *.o *~ zgetdump core.* .detect_openssl.dep.c .check_dep_zgetdump
|
||||||
|
|
||||||
|
.PHONY: all install clean check_dep_fuse check_dep_zlib skip-zgetdump install-zgetdump
|
||||||
|
|||||||
Reference in New Issue
Block a user