util-src/GNUmakefile
author Matthew Wild <mwild1@gmail.com>
Wed, 27 Mar 2024 15:35:15 +0000
branch0.12
changeset 13469 54a936345aaa
parent 12358 3ce3633527af
child 12697 7c5afbdcbc77
permissions -rw-r--r--
prosodyctl check: Warn about invalid domain names in the config file This ensures that domain names of virtual hosts and components are valid in XMPP, and that they are encoded correctly.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
442
722f63c70a77 Makefile now works on windows with Microsoft's compiler
Waqas Hussain <waqas20@gmail.com>
parents: 418
diff changeset
     1
463
a2452d3bd828 Add a top-level Makefile and ./configure script. Update util-src Makefile for this.
Matthew Wild <mwild1@gmail.com>
parents: 445
diff changeset
     2
include ../config.unix
418
004c278154dc Add rough Makefile for util-src/
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     3
7618
940603e99032 configure: Move -ggdb flag here from util-src/Make
Kim Alvefur <zash@zash.se>
parents: 7616
diff changeset
     4
CFLAGS+=-I$(LUA_INCDIR)
418
004c278154dc Add rough Makefile for util-src/
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     5
6880
020ededc84a6 util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents: 6879
diff changeset
     6
INSTALL_DATA=install -m644
020ededc84a6 util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents: 6879
diff changeset
     7
TARGET?=../util/
020ededc84a6 util-src/Makefile: Use variables for install binary and target directory
Kim Alvefur <zash@zash.se>
parents: 6879
diff changeset
     8
9564
cfc7b2f7251e util.xpcall, util.compat: Add non-hacky multi-argument xpcall() for Lua 5.1
Matthew Wild <mwild1@gmail.com>
parents: 9316
diff changeset
     9
ALL=encodings.so hashes.so net.so pposix.so signal.so table.so \
12358
3ce3633527af util.struct: Import Roberto 'struct' library v0.3
Matthew Wild <mwild1@gmail.com>
parents: 11170
diff changeset
    10
    ringbuffer.so time.so poll.so compat.so strbitop.so \
3ce3633527af util.struct: Import Roberto 'struct' library v0.3
Matthew Wild <mwild1@gmail.com>
parents: 11170
diff changeset
    11
    struct.so
6879
d1fc95d22f33 util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents: 6613
diff changeset
    12
7190
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    13
ifdef RANDOM
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    14
ALL+=crand.so
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    15
endif
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    16
4396
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3964
diff changeset
    17
.PHONY: all install clean
2319
8dca45e17438 util-src/Makefile: Clean up makefile (re-commit because MattJ shouldn't commit anything at 3AM)
Brian Cully <bjc@junctionnetworks.com>
parents: 2022
diff changeset
    18
.SUFFIXES: .c .o .so
8dca45e17438 util-src/Makefile: Clean up makefile (re-commit because MattJ shouldn't commit anything at 3AM)
Brian Cully <bjc@junctionnetworks.com>
parents: 2022
diff changeset
    19
6879
d1fc95d22f33 util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents: 6613
diff changeset
    20
all: $(ALL)
4396
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3964
diff changeset
    21
6879
d1fc95d22f33 util-src/Makefile: Move list of .so files in a variable
Kim Alvefur <zash@zash.se>
parents: 6613
diff changeset
    22
install: $(ALL)
8595
bd4f8a2b72c7 Rename Makefile -> GNUmakefile to reflect dependency on GNU Make
Kim Alvefur <zash@zash.se>
parents: 7618
diff changeset
    23
	$(INSTALL_DATA) $? $(TARGET)
4396
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3964
diff changeset
    24
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3964
diff changeset
    25
clean:
7190
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    26
	rm -f $(ALL) $(patsubst %.so,%.o,$(ALL))
4396
03b59a511671 Makefile, util-src/Makefile: Add .PHONY, reorganise util-src/Makefile
Matthew Wild <mwild1@gmail.com>
parents: 3964
diff changeset
    27
11013
74ef9f2334f3 configure: Pass compiler flag to enable ICU only when building util.encodings
Kim Alvefur <zash@zash.se>
parents: 9564
diff changeset
    28
encodings.o: CFLAGS+=$(IDNA_FLAGS)
6884
5886efd95c11 util-src/Makefile: Don't make exceptions for how to build .so for util.hashes and util.encodings
Kim Alvefur <zash@zash.se>
parents: 6883
diff changeset
    29
encodings.so: LDLIBS+=$(IDNA_LIBS)
3963
18b82491dc88 util-src/Makefile: Clean up and remove unnecessary all linking
Matthew Wild <mwild1@gmail.com>
parents: 3769
diff changeset
    30
6889
27f5a76e3fa5 configure,util-src/Makefile: Make a variable that includes -l for OpenSSL (like with IDNA_LIBS)
Kim Alvefur <zash@zash.se>
parents: 6885
diff changeset
    31
hashes.so: LDLIBS+=$(OPENSSL_LIBS)
3762
f02bac902a1e util.encodings: Support for ICU for IDNA operations.
Tobias Markmann <tm@ayena.de>
parents: 3334
diff changeset
    32
7190
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    33
crand.o: CFLAGS+=-DWITH_$(RANDOM)
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    34
crand.so: LDLIBS+=$(RANDOM_LIBS)
3d2c2f0809ee util.crand: C binding to one of OpenSSL, Linux getrandom() or OpenBSD arc4random() CSPRNG
Kim Alvefur <zash@zash.se>
parents: 7120
diff changeset
    35
6883
8678def0e53b util-src/Makefile: Tell Make how to build .so from .o in a modern way (Let built-in rules handle .o)
Kim Alvefur <zash@zash.se>
parents: 6882
diff changeset
    36
%.so: %.o
8678def0e53b util-src/Makefile: Tell Make how to build .so from .o in a modern way (Let built-in rules handle .o)
Kim Alvefur <zash@zash.se>
parents: 6882
diff changeset
    37
	$(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)