split tools and utils

This commit is contained in:
Vincent Sanders 2020-06-22 10:49:34 +01:00
parent 1dab82d655
commit 421d796e9b
21 changed files with 84 additions and 74 deletions

View File

@ -637,6 +637,12 @@ POSTEXES :=
include frontends/Makefile
# ----------------------------------------------------------------------------
# Build tools setup
# ----------------------------------------------------------------------------
include tools/Makefile
# ----------------------------------------------------------------------------
# General source file setup
# ----------------------------------------------------------------------------
@ -743,10 +749,6 @@ clean-target:
$(Q)$(RM) $(EXETARGET)
CLEANS += clean-target
clean-testament:
$(VQ)echo " CLEAN: testament.h"
$(Q)$(RM) $(OBJROOT)/testament.h
CLEANS += clean-testament
clean-builddir:
$(VQ)echo " CLEAN: $(OBJROOT)"
@ -754,10 +756,7 @@ clean-builddir:
CLEANS += clean-builddir
.PHONY: all-program testament
testament $(OBJROOT)/testament.h:
$(Q)$(PERL) utils/git-testament.pl $(CURDIR) $(OBJROOT)/testament.h
.PHONY: all-program
all-program: $(EXETARGET) $(POSTEXES)

View File

@ -178,7 +178,7 @@ netsurf.zip: $(EXETARGET)
$(eval $@_TMPDIR := $(shell mktemp -d))
$(Q) $(RM) $@
$(Q) cp -rLvp $(FRONTEND_SOURCE_DIR)/appdir $($@_TMPDIR)/!NetSurf
$(Q) $(CURDIR)/utils/git-date.sh $(FRONTEND_SOURCE_DIR)/distribution
$(Q) $(CURDIR)/tools/git-date.sh $(FRONTEND_SOURCE_DIR)/distribution
$(Q) rsync --archive --verbose $(FRONTEND_SOURCE_DIR)/distribution/!Boot $($@_TMPDIR)
$(Q) rsync --archive --verbose $(FRONTEND_SOURCE_DIR)/distribution/!System $($@_TMPDIR)
$(Q) rsync --archive --verbose $(FRONTEND_SOURCE_DIR)/distribution/3rdParty $($@_TMPDIR)

75
tools/Makefile Normal file
View File

@ -0,0 +1,75 @@
# 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

View File

@ -11,7 +11,7 @@
#include <string.h>
#include <zlib.h>
#include "errors.h"
#include "utils/errors.h"
enum out_fmt {
OUTPUTFMT_NONE = 0,

View File

@ -24,67 +24,3 @@ S_UTILS := \
utils.c
S_UTILS := $(addprefix utils/,$(S_UTILS))
# 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: utils/xxd.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -o $@ $< $(BUILD_LDFLAGS)
# Build tool to filter messages
#
$(TOOLROOT)/split-messages: utils/split-messages.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -o $@ $< $(BUILD_LDFLAGS) -lz
# Build tool to convert image bitmaps to source code.
#
$(TOOLROOT)/convert_image: utils/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: utils/convert_font.c $(TOOLROOT)/created
$(VQ)echo "BUILD CC: $@"
$(Q)$(BUILD_CC) $(BUILD_CFLAGS) -o $@ $<
# idna
#
IDNA_UNICODE_MAJOR=11
utils/DerivedJoiningType.txt:
curl -o $@ "https://www.unicode.org/Public/$(IDNA_UNICODE_MAJOR).0.0/ucd/extracted/DerivedJoiningType.txt"
utils/IdnaMappingTable.txt:
curl -o $@ "https://www.unicode.org/Public/idna/$(IDNA_UNICODE_MAJOR).0.0/IdnaMappingTable.txt"
utils/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: utils/DerivedJoiningType.txt utils/idna-tables-properties.csv
$(VQ)echo " IDNA: $@"
$(Q)$(PERL) utils/idna-derived-props-gen.pl -o $@ -p utils/idna-tables-properties.csv -j utils/DerivedJoiningType.txt
endif