build: Update the makefiles for the benefit of cross-compilation

Split AR_RC into AR and ARFLAGS. The variables AR and ARFLAGS are
de-facto standards (like CC and CFLAGS, LD and LDFLAGS, etc.) that
may be overridden when running make. Moreover, configuring CC, LD,
AR, etc., to point to a cross-platform compiler, linker, librarian,
etc., is a de-facto standard practice as well.

Also remove the MKDIR_P variable definitions from all makefiles.
They've been leftovers from the removal of the "install*" targets.
This commit is contained in:
Cosmin Truta
2024-02-11 23:14:09 +02:00
parent 8120345c89
commit 1cdde11877
27 changed files with 105 additions and 103 deletions

View File

@@ -1,5 +1,5 @@
# makefile for libpng on HP-UX using GCC with the HP ANSI/C linker.
# Copyright (C) 2020-2022 Cosmin Truta
# Copyright (C) 2020-2024 Cosmin Truta
# Copyright (C) 2002, 2006-2008, 2010-2014 Glenn Randers-Pehrson
# Copyright (C) 2001, Laurent faillie
# Copyright (C) 1998, 1999 Greg Roelofs
@@ -19,10 +19,9 @@ LIBSOMAJ=$(LIBNAME).sl.$(PNGMAJ)
# Utilities:
CC=gcc
LD=ld
AR_RC=ar rc
AR=ar
RANLIB=ranlib
MKDIR_P=mkdir -p
LD=ld
LN_SF=ln -sf
CP=cp
RM_F=/bin/rm -f
@@ -44,6 +43,7 @@ WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \
CPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5
CFLAGS=-O3 -funroll-loops -Wall -Wextra -Wundef # $(WARNMORE) -g
ARFLAGS=rc
#LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng16 -lz -lm # -g
LDFLAGS=-L. -L$(ZLIBLIB) -lpng16 -lz -lm # -g
@@ -64,7 +64,7 @@ OBJSDLL = $(OBJS:.o=.pic.o)
all: libpng.a $(LIBSO) pngtest
libpng.a: $(OBJS)
$(AR_RC) $@ $(OBJS)
$(AR) $(ARFLAGS) $@ $(OBJS)
$(RANLIB) $@
$(LIBSO): $(LIBSOMAJ)