WebSurf/tools/Makefile

76 lines
2.2 KiB
Makefile

# Tools
# testament rules
clean-testament:
$(VQ)echo " CLEAN: testament.h"
$(Q)$(RM) $(OBJROOT)/testament.h
CLEANS += clean-testament
.PHONY: testament
testament $(OBJROOT)/testament.h:
$(Q)$(PERL) tools/git-testament.pl $(CURDIR) $(OBJROOT)/testament.h
# lib png build compiler flags
ifeq ($(HOST),OpenBSD)
BUILD_LIBPNG_CFLAGS += $(shell $(PKG_CONFIG) --cflags libpng)
BUILD_LIBPNG_LDFLAGS += $(shell $(PKG_CONFIG) --libs libpng)
else
ifeq ($(HOST),FreeBSD)
BUILD_LIBPNG_CFLAGS += $(shell $(PKG_CONFIG) --cflags libpng)
BUILD_LIBPNG_LDFLAGS += $(shell $(PKG_CONFIG) --libs libpng)
else
BUILD_LIBPNG_CFLAGS +=
BUILD_LIBPNG_LDFLAGS += -lpng
endif
endif
# Build tool to convert file to comiled data
#
$(TOOLROOT)/xxd: tools/xxd.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -o $@ $< $(BUILD_LDFLAGS)
# Build tool to filter messages
#
$(TOOLROOT)/split-messages: tools/split-messages.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -I. -o $@ $< $(BUILD_LDFLAGS) -lz
# Build tool to convert image bitmaps to source code.
#
$(TOOLROOT)/convert_image: tools/convert_image.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_LIBPNG_CFLAGS) -o $@ $< $(BUILD_LDFLAGS) $(BUILD_LIBPNG_LDFLAGS)
# Build too to perform font conversion
$(TOOLROOT)/convert_font: tools/convert_font.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -o $@ $<
# idna
#
IDNA_UNICODE_MAJOR=11
tools/DerivedJoiningType.txt:
curl -o $@ "https://www.unicode.org/Public/$(IDNA_UNICODE_MAJOR).0.0/ucd/extracted/DerivedJoiningType.txt"
tools/IdnaMappingTable.txt:
curl -o $@ "https://www.unicode.org/Public/idna/$(IDNA_UNICODE_MAJOR).0.0/IdnaMappingTable.txt"
tools/idna-tables-properties.csv:
curl -o $@ "https://www.iana.org/assignments/idna-tables-$(IDNA_UNICODE_MAJOR).0.0/idna-tables-properties.csv"
# the idna props header must be explicitly rebuilt
ifneq ($(filter $(MAKECMDGOALS),utils/idna_props.h),)
utils/idna_props.h: tools/DerivedJoiningType.txt tools/idna-tables-properties.csv
$(VQ)echo " IDNA: $@"
$(Q)$(PERL) tools/idna-derived-props-gen.pl -o $@ -p tools/idna-tables-properties.csv -j tools/DerivedJoiningType.txt
endif