$NetBSD: patch-GNUmakefile,v 1.3 2020/03/22 17:52:52 tnn Exp $ Avoid -march=native compiler flag. On Darwin, use absolute path to avoid conflict with devel/libtool. Fix dylib name. --- GNUmakefile.orig 2019-04-28 23:36:50.000000000 +0000 +++ GNUmakefile @@ -27,7 +27,7 @@ CHMOD ?= chmod MKDIR ?= mkdir -p LN ?= ln -sf -LDCONF ?= /sbin/ldconfig -n +LDCONF ?= true # Solaris provides a non-Posix grep at /usr/bin ifneq ($(wildcard /usr/xpg4/bin/grep),) @@ -83,7 +83,7 @@ endif # Enable shared object versioning for Linux and Solaris HAS_SOLIB_VERSION ?= 0 -ifneq ($(IS_LINUX)$(IS_HURD)$(IS_SUN),000) +ifeq ($(IS_DARWIN),0) HAS_SOLIB_VERSION := 1 endif @@ -140,7 +140,7 @@ endif ifneq ($(IS_DARWIN),0) CXX ?= c++ # CXXFLAGS += -stdlib=libc++ - AR = libtool + AR = /usr/bin/libtool ARFLAGS = -static -o endif @@ -846,32 +846,6 @@ ifeq ($(findstring no-asm,$(MAKECMDGOALS endif # CXXFLAGS endif # No ASM -# Native build testing. Issue 'make native'. -ifeq ($(findstring native,$(MAKECMDGOALS)),native) - NATIVE_OPT = - - # Try GCC and compatibles first - TPROG = TestPrograms/test_cxx.cxx - TOPT = -march=native - HAVE_OPT = $(shell $(CXX) $(TCXXFLAGS) $(ZOPT) $(TOPT) $(TPROG) -o $(TOUT) 2>&1 | tr ' ' '\n' | wc -l) - ifeq ($(strip $(HAVE_OPT)),0) - NATIVE_OPT = -march=native - endif # NATIVE_OPT - - # Try SunCC next - ifeq ($(NATIVE_OPT),) - TOPT = -native - HAVE_OPT = $(shell $(CXX) $(TCXXFLAGS) $(ZOPT) $(TOPT) $(TPROG) -o $(TOUT) 2>&1 | tr ' ' '\n' | wc -l) - ifeq ($(strip $(HAVE_OPT)),0) - NATIVE_OPT = -native - endif # NATIVE_OPT - endif - - ifneq ($(NATIVE_OPT),) - CXXFLAGS += $(NATIVE_OPT) - endif - -endif # Native # Undefined Behavior Sanitizer (UBsan) testing. Issue 'make ubsan'. ifeq ($(findstring ubsan,$(MAKECMDGOALS)),ubsan) @@ -1006,9 +980,9 @@ ifeq ($(HAS_SOLIB_VERSION),1) # Different patchlevels and minors are compatible since 6.1 SOLIB_COMPAT_SUFFIX=.$(LIB_MAJOR) # Linux uses -Wl,-soname -ifneq ($(IS_LINUX)$(IS_HURD),00) +ifneq ($(IS_LINUX)$(IS_HURD)$(IS_NETBSD),00) # Linux uses full version suffix for shared library -SOLIB_VERSION_SUFFIX=.$(LIB_MAJOR).$(LIB_MINOR).$(LIB_PATCH) +SOLIB_VERSION_SUFFIX=.$(LIB_MAJOR).$(LIB_MINOR) SOLIB_FLAGS=-Wl,-soname,libcryptopp.so$(SOLIB_COMPAT_SUFFIX) endif # Solaris uses -Wl,-h @@ -1248,7 +1222,7 @@ ifneq ($(wildcard libcryptopp.dylib),) @-$(MKDIR) $(DESTDIR)$(LIBDIR) $(CP) libcryptopp.dylib $(DESTDIR)$(LIBDIR) $(CHMOD) 0755 $(DESTDIR)$(LIBDIR)/libcryptopp.dylib - -install_name_tool -id $(DESTDIR)$(LIBDIR)/libcryptopp.dylib $(DESTDIR)$(LIBDIR)/libcryptopp.dylib + -install_name_tool -id $(LIBDIR)/libcryptopp.dylib $(DESTDIR)$(LIBDIR)/libcryptopp.dylib endif ifneq ($(wildcard libcryptopp.so$(SOLIB_VERSION_SUFFIX)),) @-$(MKDIR) $(DESTDIR)$(LIBDIR) @@ -1256,6 +1230,7 @@ ifneq ($(wildcard libcryptopp.so$(SOLIB_ $(CHMOD) 0755 $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_VERSION_SUFFIX) ifeq ($(HAS_SOLIB_VERSION),1) -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so + -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_COMPAT_SUFFIX) $(LDCONF) $(DESTDIR)$(LIBDIR) endif endif