summaryrefslogtreecommitdiff
path: root/utils/Makefile
blob: 430edf9b46a4cc575b943e42c5127cce768caacd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# utils sources

S_UTILS := \
	bloom.c \
	corestrings.c \
	file.c \
	filename.c \
	filepath.c \
	hashmap.c \
	hashtable.c \
	idna.c \
	libdom.c \
	log.c \
	messages.c \
	nscolour.c \
	nsoption.c \
	punycode.c \
	ssl_certs.c \
	talloc.c \
	time.c \
	url.c \
	useragent.c \
	utf8.c \
	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"


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