Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_018Ae69wJS7sueQMUwNxV3nX
52 lines
1.3 KiB
Makefile
52 lines
1.3 KiB
Makefile
# zlib for MontaukOS
|
|
#
|
|
# Upstream: https://github.com/madler/zlib (submodule at upstream/, pinned to
|
|
# v1.3.1; no local patches). Needed by NetSurf for gzip Content-Encoding, and
|
|
# by libpng.
|
|
#
|
|
# DYNAMIC_CRC_TABLE is deliberately NOT defined: it pulls in <stdatomic.h> and
|
|
# a runtime once() init, where the default path uses the checked-in static CRC
|
|
# tables in crc32.h. Deterministic and one less dependency.
|
|
|
|
UPSTREAM := upstream
|
|
|
|
PORT_NAME := zlib
|
|
PORT_LIB := 1
|
|
PORT_ARCHIVE := libz.a
|
|
PORT_HEADER_ROOT := $(UPSTREAM)
|
|
PORT_HEADERS := $(UPSTREAM)/zlib.h $(UPSTREAM)/zconf.h
|
|
|
|
include ../../mk/port.mk
|
|
|
|
CFLAGS := \
|
|
-std=gnu11 \
|
|
$(PORT_CFLAGS_COMMON) \
|
|
-Wall \
|
|
-Wno-implicit-fallthrough \
|
|
-DHAVE_UNISTD_H \
|
|
-DHAVE_STDARG_H \
|
|
-I $(UPSTREAM) \
|
|
-isystem $(shell $(CC) -print-file-name=include)
|
|
|
|
SRCS := \
|
|
adler32.c compress.c crc32.c deflate.c gzclose.c gzlib.c gzread.c \
|
|
gzwrite.c infback.c inffast.c inflate.c inftrees.c trees.c uncompr.c \
|
|
zutil.c
|
|
|
|
OBJS := $(addprefix $(OBJDIR)/,$(SRCS:.c=.o))
|
|
|
|
.PHONY: all clean
|
|
all: install-lib
|
|
|
|
$(PORT_ARCHIVE): $(OBJS)
|
|
$(AR) rcs $@ $(OBJS)
|
|
@echo "Built: $@"
|
|
|
|
$(OBJDIR)/%.o: $(UPSTREAM)/%.c Makefile
|
|
@mkdir -p $(dir $@)
|
|
$(CC) $(CFLAGS) -MMD -MP -c $< -o $@
|
|
|
|
clean: clean-lib
|
|
|
|
-include $(OBJS:.o=.d)
|