[master] 8937dae96 build: Install vmod_*.vcc files
Dridi Boukelmoune
dridi.boukelmoune at gmail.com
Mon May 15 16:39:07 UTC 2023
commit 8937dae9629866954f5260861681a363ebba3bad
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date: Wed Mar 29 16:13:23 2023 +0200
build: Install vmod_*.vcc files
This change adds a new /usr/share/varnish/vcc (or equivalent) directory
where the built-in VMOD descriptors are installed. Only vmod_debug.vcc
is omitted since vmod_debug is not installed. Shipping VCC files can be
useful to end users, for example, to implement VCL autocompletion in a
text editor.
This change does not even begin to manage this for third-party VMODs.
diff --git a/lib/libvcc/vmodtool.py b/lib/libvcc/vmodtool.py
index 270e64cb5..884ad4fa5 100755
--- a/lib/libvcc/vmodtool.py
+++ b/lib/libvcc/vmodtool.py
@@ -51,6 +51,10 @@ import time
AMBOILERPLATE = '''\
# Generated by vmodtool.py --boilerplate.
+vmod_XXX_vcc = $(srcdir)/VCC
+
+vmod_vcc_files += $(vmod_XXX_vcc)
+
vmod_LTLIBRARIES += libvmod_XXX.la
libvmod_XXX_la_SOURCES = \\
@@ -70,7 +74,7 @@ nodist_libvmod_XXX_la_SOURCES = PFX.c PFX.h
EXTRA_libvmod_XXX_la_DEPENDENCIES = $(nodist_libvmod_XXX_la_SOURCES)
-EXTRA_DIST += $(srcdir)/VCC automake_boilerplate_XXX.am
+EXTRA_DIST += automake_boilerplate_XXX.am
$(libvmod_XXX_la_OBJECTS): PFX.h
diff --git a/vmod/Makefile.am b/vmod/Makefile.am
index 197508b28..afe6614a0 100644
--- a/vmod/Makefile.am
+++ b/vmod/Makefile.am
@@ -17,7 +17,10 @@ AM_CPPFLAGS = \
# Use vmodtool.py generated automake boilerplate
#
+vccdir=$(datarootdir)/$(PACKAGE)/vcc
+
vmod_LTLIBRARIES =
+vmod_vcc_files =
include $(srcdir)/automake_boilerplate_blob.am
include $(srcdir)/automake_boilerplate_cookie.am
@@ -51,3 +54,9 @@ vmod_debug_symbols_regex = 'Vmod_.*_Data'
# not --strict
vmodtoolargs_debug = --boilerplate -o vcc_debug_if
+
+# unregister VCC file installation
+dist_noinst_DATA := $(srcdir)/vmod_debug.vcc
+vmod_debug_vcc =
+
+dist_vcc_DATA = $(vmod_vcc_files)
diff --git a/vmod/automake_boilerplate_blob.am b/vmod/automake_boilerplate_blob.am
index c49d42a6f..1b7c375a5 100644
--- a/vmod/automake_boilerplate_blob.am
+++ b/vmod/automake_boilerplate_blob.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_blob_vcc = $(srcdir)/vmod_blob.vcc
+
+vmod_vcc_files += $(vmod_blob_vcc)
+
vmod_LTLIBRARIES += libvmod_blob.la
libvmod_blob_la_SOURCES = \
@@ -26,7 +30,7 @@ nodist_libvmod_blob_la_SOURCES = vcc_blob_if.c vcc_blob_if.h
EXTRA_libvmod_blob_la_DEPENDENCIES = $(nodist_libvmod_blob_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_blob.vcc automake_boilerplate_blob.am
+EXTRA_DIST += automake_boilerplate_blob.am
$(libvmod_blob_la_OBJECTS): vcc_blob_if.h
diff --git a/vmod/automake_boilerplate_cookie.am b/vmod/automake_boilerplate_cookie.am
index fa3ccfb7f..1cb5c9f46 100644
--- a/vmod/automake_boilerplate_cookie.am
+++ b/vmod/automake_boilerplate_cookie.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_cookie_vcc = $(srcdir)/vmod_cookie.vcc
+
+vmod_vcc_files += $(vmod_cookie_vcc)
+
vmod_LTLIBRARIES += libvmod_cookie.la
libvmod_cookie_la_SOURCES = \
@@ -19,7 +23,7 @@ nodist_libvmod_cookie_la_SOURCES = vcc_cookie_if.c vcc_cookie_if.h
EXTRA_libvmod_cookie_la_DEPENDENCIES = $(nodist_libvmod_cookie_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_cookie.vcc automake_boilerplate_cookie.am
+EXTRA_DIST += automake_boilerplate_cookie.am
$(libvmod_cookie_la_OBJECTS): vcc_cookie_if.h
diff --git a/vmod/automake_boilerplate_debug.am b/vmod/automake_boilerplate_debug.am
index e97ac77da..b5c34f75e 100644
--- a/vmod/automake_boilerplate_debug.am
+++ b/vmod/automake_boilerplate_debug.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_debug_vcc = $(srcdir)/vmod_debug.vcc
+
+vmod_vcc_files += $(vmod_debug_vcc)
+
vmod_LTLIBRARIES += libvmod_debug.la
libvmod_debug_la_SOURCES = \
@@ -22,7 +26,7 @@ nodist_libvmod_debug_la_SOURCES = vcc_debug_if.c vcc_debug_if.h
EXTRA_libvmod_debug_la_DEPENDENCIES = $(nodist_libvmod_debug_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_debug.vcc automake_boilerplate_debug.am
+EXTRA_DIST += automake_boilerplate_debug.am
$(libvmod_debug_la_OBJECTS): vcc_debug_if.h
diff --git a/vmod/automake_boilerplate_directors.am b/vmod/automake_boilerplate_directors.am
index 6cec72ead..ed44678ac 100644
--- a/vmod/automake_boilerplate_directors.am
+++ b/vmod/automake_boilerplate_directors.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_directors_vcc = $(srcdir)/vmod_directors.vcc
+
+vmod_vcc_files += $(vmod_directors_vcc)
+
vmod_LTLIBRARIES += libvmod_directors.la
libvmod_directors_la_SOURCES = \
@@ -29,7 +33,7 @@ nodist_libvmod_directors_la_SOURCES = vcc_directors_if.c vcc_directors_if.h
EXTRA_libvmod_directors_la_DEPENDENCIES = $(nodist_libvmod_directors_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_directors.vcc automake_boilerplate_directors.am
+EXTRA_DIST += automake_boilerplate_directors.am
$(libvmod_directors_la_OBJECTS): vcc_directors_if.h
diff --git a/vmod/automake_boilerplate_proxy.am b/vmod/automake_boilerplate_proxy.am
index 24be960ea..61b54e785 100644
--- a/vmod/automake_boilerplate_proxy.am
+++ b/vmod/automake_boilerplate_proxy.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_proxy_vcc = $(srcdir)/vmod_proxy.vcc
+
+vmod_vcc_files += $(vmod_proxy_vcc)
+
vmod_LTLIBRARIES += libvmod_proxy.la
libvmod_proxy_la_SOURCES = \
@@ -19,7 +23,7 @@ nodist_libvmod_proxy_la_SOURCES = vcc_proxy_if.c vcc_proxy_if.h
EXTRA_libvmod_proxy_la_DEPENDENCIES = $(nodist_libvmod_proxy_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_proxy.vcc automake_boilerplate_proxy.am
+EXTRA_DIST += automake_boilerplate_proxy.am
$(libvmod_proxy_la_OBJECTS): vcc_proxy_if.h
diff --git a/vmod/automake_boilerplate_purge.am b/vmod/automake_boilerplate_purge.am
index 7d2186d11..de5cbc6c4 100644
--- a/vmod/automake_boilerplate_purge.am
+++ b/vmod/automake_boilerplate_purge.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_purge_vcc = $(srcdir)/vmod_purge.vcc
+
+vmod_vcc_files += $(vmod_purge_vcc)
+
vmod_LTLIBRARIES += libvmod_purge.la
libvmod_purge_la_SOURCES = \
@@ -19,7 +23,7 @@ nodist_libvmod_purge_la_SOURCES = vcc_purge_if.c vcc_purge_if.h
EXTRA_libvmod_purge_la_DEPENDENCIES = $(nodist_libvmod_purge_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_purge.vcc automake_boilerplate_purge.am
+EXTRA_DIST += automake_boilerplate_purge.am
$(libvmod_purge_la_OBJECTS): vcc_purge_if.h
diff --git a/vmod/automake_boilerplate_std.am b/vmod/automake_boilerplate_std.am
index 4900e4471..b4f62fde6 100644
--- a/vmod/automake_boilerplate_std.am
+++ b/vmod/automake_boilerplate_std.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_std_vcc = $(srcdir)/vmod_std.vcc
+
+vmod_vcc_files += $(vmod_std_vcc)
+
vmod_LTLIBRARIES += libvmod_std.la
libvmod_std_la_SOURCES = \
@@ -22,7 +26,7 @@ nodist_libvmod_std_la_SOURCES = vcc_std_if.c vcc_std_if.h
EXTRA_libvmod_std_la_DEPENDENCIES = $(nodist_libvmod_std_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_std.vcc automake_boilerplate_std.am
+EXTRA_DIST += automake_boilerplate_std.am
$(libvmod_std_la_OBJECTS): vcc_std_if.h
diff --git a/vmod/automake_boilerplate_unix.am b/vmod/automake_boilerplate_unix.am
index ab9ca4bca..aff2650f4 100644
--- a/vmod/automake_boilerplate_unix.am
+++ b/vmod/automake_boilerplate_unix.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_unix_vcc = $(srcdir)/vmod_unix.vcc
+
+vmod_vcc_files += $(vmod_unix_vcc)
+
vmod_LTLIBRARIES += libvmod_unix.la
libvmod_unix_la_SOURCES = \
@@ -20,7 +24,7 @@ nodist_libvmod_unix_la_SOURCES = vcc_unix_if.c vcc_unix_if.h
EXTRA_libvmod_unix_la_DEPENDENCIES = $(nodist_libvmod_unix_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_unix.vcc automake_boilerplate_unix.am
+EXTRA_DIST += automake_boilerplate_unix.am
$(libvmod_unix_la_OBJECTS): vcc_unix_if.h
diff --git a/vmod/automake_boilerplate_vtc.am b/vmod/automake_boilerplate_vtc.am
index cae60718d..202ad2257 100644
--- a/vmod/automake_boilerplate_vtc.am
+++ b/vmod/automake_boilerplate_vtc.am
@@ -1,5 +1,9 @@
# Generated by vmodtool.py --boilerplate.
+vmod_vtc_vcc = $(srcdir)/vmod_vtc.vcc
+
+vmod_vcc_files += $(vmod_vtc_vcc)
+
vmod_LTLIBRARIES += libvmod_vtc.la
libvmod_vtc_la_SOURCES = \
@@ -19,7 +23,7 @@ nodist_libvmod_vtc_la_SOURCES = vcc_vtc_if.c vcc_vtc_if.h
EXTRA_libvmod_vtc_la_DEPENDENCIES = $(nodist_libvmod_vtc_la_SOURCES)
-EXTRA_DIST += $(srcdir)/vmod_vtc.vcc automake_boilerplate_vtc.am
+EXTRA_DIST += automake_boilerplate_vtc.am
$(libvmod_vtc_la_OBJECTS): vcc_vtc_if.h
More information about the varnish-commit
mailing list