[master] a4812afc4 build: Let vmodtool generate the sources listing
Dridi Boukelmoune
dridi.boukelmoune at gmail.com
Thu Jan 7 14:16:08 UTC 2021
commit a4812afc4cb90d8de54217461812c58dd8b7e9da
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date: Thu Jan 7 12:21:32 2021 +0100
build: Let vmodtool generate the sources listing
Now that all VMOD sources are prefixed consistently we no longer need to
maintain the lists manually.
diff --git a/lib/libvcc/vmodtool.py b/lib/libvcc/vmodtool.py
index 8f2ec9ffb..7247b0bde 100755
--- a/lib/libvcc/vmodtool.py
+++ b/lib/libvcc/vmodtool.py
@@ -53,6 +53,9 @@ AMBOILERPLATE = '''\
vmod_LTLIBRARIES += libvmod_XXX.la
+libvmod_XXX_la_SOURCES = \\
+\tSRC
+
libvmod_XXX_la_CFLAGS = \\
\t at SAN_CFLAGS@
@@ -971,11 +974,14 @@ class vcc(object):
def amboilerplate(self):
''' Produce boilplate for autocrap tools '''
vcc = os.path.basename(self.inputfile)
+ src = glob.glob("vmod_" + self.modname + "*.[ch]")
+ src.sort()
fn = "automake_boilerplate_" + self.modname + ".am"
fo = self.openfile(fn)
fo.write(AMBOILERPLATE.replace("XXX", self.modname)
.replace("VCC", vcc)
- .replace("PFX", self.pfx))
+ .replace("PFX", self.pfx)
+ .replace("SRC", " \\\n\t".join(src)))
fo.close()
def mkdefs(self, fo):
diff --git a/vmod/Makefile.am b/vmod/Makefile.am
index 6557b366e..d204d9bc5 100644
--- a/vmod/Makefile.am
+++ b/vmod/Makefile.am
@@ -13,60 +13,6 @@ AM_CPPFLAGS = \
-I$(top_srcdir)/bin/varnishd \
-I$(top_builddir)/include
-#
-# Declare vmod sources
-#
-
-libvmod_blob_la_SOURCES = \
- vmod_blob.c \
- vmod_blob.h \
- vmod_blob_id.c \
- vmod_blob_base64.c \
- vmod_blob_hex.c \
- vmod_blob_url.c \
- vmod_blob_tbl_encodings.h \
- vmod_blob_tbl_case.h
-
-libvmod_cookie_la_SOURCES = \
- vmod_cookie.c
-
-libvmod_debug_la_SOURCES = \
- vmod_debug.c \
- vmod_debug_obj.c \
- vmod_debug_dyn.c
-
-libvmod_directors_la_SOURCES = \
- vmod_directors.c \
- vmod_directors.h \
- vmod_directors_fall_back.c \
- vmod_directors_hash.c \
- vmod_directors_random.c \
- vmod_directors_round_robin.c \
- vmod_directors_shard.c \
- vmod_directors_shard_cfg.c \
- vmod_directors_vmod_directors_shard_cfg.h \
- vmod_directors_shard_dir.c \
- vmod_directors_shard_dir.h
-
-libvmod_proxy_la_SOURCES = \
- vmod_proxy.c
-
-libvmod_purge_la_SOURCES = \
- vmod_purge.c
-
-libvmod_std_la_SOURCES = \
- vmod_std.c \
- vmod_std_conversions.c \
- vmod_std_fileread.c \
- vmod_std_querysort.c
-
-libvmod_unix_la_SOURCES = \
- vmod_unix.c \
- vmod_unix_cred_compat.h
-
-libvmod_vtc_la_SOURCES = \
- vmod_vtc.c
-
#
# Use vmodtool.py generated automake boilerplate
#
diff --git a/vmod/automake_boilerplate_blob.am b/vmod/automake_boilerplate_blob.am
index 81ec37e56..d604614ac 100644
--- a/vmod/automake_boilerplate_blob.am
+++ b/vmod/automake_boilerplate_blob.am
@@ -2,6 +2,16 @@
vmod_LTLIBRARIES += libvmod_blob.la
+libvmod_blob_la_SOURCES = \
+ vmod_blob.c \
+ vmod_blob.h \
+ vmod_blob_base64.c \
+ vmod_blob_hex.c \
+ vmod_blob_id.c \
+ vmod_blob_tbl_case.h \
+ vmod_blob_tbl_encodings.h \
+ vmod_blob_url.c
+
libvmod_blob_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_cookie.am b/vmod/automake_boilerplate_cookie.am
index fb9b156b5..a1509d920 100644
--- a/vmod/automake_boilerplate_cookie.am
+++ b/vmod/automake_boilerplate_cookie.am
@@ -2,6 +2,9 @@
vmod_LTLIBRARIES += libvmod_cookie.la
+libvmod_cookie_la_SOURCES = \
+ vmod_cookie.c
+
libvmod_cookie_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_debug.am b/vmod/automake_boilerplate_debug.am
index 950cf4ede..88f89a403 100644
--- a/vmod/automake_boilerplate_debug.am
+++ b/vmod/automake_boilerplate_debug.am
@@ -2,6 +2,11 @@
vmod_LTLIBRARIES += libvmod_debug.la
+libvmod_debug_la_SOURCES = \
+ vmod_debug.c \
+ vmod_debug_dyn.c \
+ vmod_debug_obj.c
+
libvmod_debug_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_directors.am b/vmod/automake_boilerplate_directors.am
index 5ba173349..2a3618a43 100644
--- a/vmod/automake_boilerplate_directors.am
+++ b/vmod/automake_boilerplate_directors.am
@@ -2,6 +2,19 @@
vmod_LTLIBRARIES += libvmod_directors.la
+libvmod_directors_la_SOURCES = \
+ vmod_directors.c \
+ vmod_directors.h \
+ vmod_directors_fall_back.c \
+ vmod_directors_hash.c \
+ vmod_directors_random.c \
+ vmod_directors_round_robin.c \
+ vmod_directors_shard.c \
+ vmod_directors_shard_cfg.c \
+ vmod_directors_shard_cfg.h \
+ vmod_directors_shard_dir.c \
+ vmod_directors_shard_dir.h
+
libvmod_directors_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_proxy.am b/vmod/automake_boilerplate_proxy.am
index 83f2217c0..d5873e989 100644
--- a/vmod/automake_boilerplate_proxy.am
+++ b/vmod/automake_boilerplate_proxy.am
@@ -2,6 +2,9 @@
vmod_LTLIBRARIES += libvmod_proxy.la
+libvmod_proxy_la_SOURCES = \
+ vmod_proxy.c
+
libvmod_proxy_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_purge.am b/vmod/automake_boilerplate_purge.am
index afe7bf60b..2146f4055 100644
--- a/vmod/automake_boilerplate_purge.am
+++ b/vmod/automake_boilerplate_purge.am
@@ -2,6 +2,9 @@
vmod_LTLIBRARIES += libvmod_purge.la
+libvmod_purge_la_SOURCES = \
+ vmod_purge.c
+
libvmod_purge_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_std.am b/vmod/automake_boilerplate_std.am
index a5760bf78..b035ba7b7 100644
--- a/vmod/automake_boilerplate_std.am
+++ b/vmod/automake_boilerplate_std.am
@@ -2,6 +2,12 @@
vmod_LTLIBRARIES += libvmod_std.la
+libvmod_std_la_SOURCES = \
+ vmod_std.c \
+ vmod_std_conversions.c \
+ vmod_std_fileread.c \
+ vmod_std_querysort.c
+
libvmod_std_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_unix.am b/vmod/automake_boilerplate_unix.am
index b2937a270..1b0274e54 100644
--- a/vmod/automake_boilerplate_unix.am
+++ b/vmod/automake_boilerplate_unix.am
@@ -2,6 +2,10 @@
vmod_LTLIBRARIES += libvmod_unix.la
+libvmod_unix_la_SOURCES = \
+ vmod_unix.c \
+ vmod_unix_cred_compat.h
+
libvmod_unix_la_CFLAGS = \
@SAN_CFLAGS@
diff --git a/vmod/automake_boilerplate_vtc.am b/vmod/automake_boilerplate_vtc.am
index e8479ba10..efe418b00 100644
--- a/vmod/automake_boilerplate_vtc.am
+++ b/vmod/automake_boilerplate_vtc.am
@@ -2,6 +2,9 @@
vmod_LTLIBRARIES += libvmod_vtc.la
+libvmod_vtc_la_SOURCES = \
+ vmod_vtc.c
+
libvmod_vtc_la_CFLAGS = \
@SAN_CFLAGS@
More information about the varnish-commit
mailing list