git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 3/7] gitweb/Makefile: clear up and de-duplicate the gitweb.{css,js} vars

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
May 31, 2022, 17:45 UTC
Message-ID
<patch-v2-3.7-e14a5b73061-20220531T173805Z-avarab@gmail.com>
In-Reply-To
<cover-v2-0.7-00000000000-20220531T173805Z-avarab@gmail.com>

Change the variable definitions for the $(GITWEB_CSS) and $(GITWEB_JS) so that we have a clear separation between what we use as "in" files, v.s. our "min" files. We can now make the appending to $(GITWEB_FILES) unconditional, since $(GITWEB_{JS,CSS}) is either the "min" or non-"min" version. This reduces the duplication within the file.

While we're at it let's initialize "GITWEB_JSLIB_FILES" as we normally do with such variables.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
---
 gitweb/Makefile | 35 ++++++++++++++++++-----------------
 1 file changed, 18 insertions(+), 17 deletions(-)
diff --git a/gitweb/Makefile b/gitweb/Makefile
index 733b60f925e..a8752c1f11c 100644
--- a/gitweb/Makefile
+++ b/gitweb/Makefile
@@ -31,10 +31,12 @@ GITWEB_STRICT_EXPORT =
 GITWEB_BASE_URL =
 GITWEB_LIST =
 GITWEB_HOMETEXT = indextext.html
-GITWEB_CSS = static/gitweb.css
+GITWEB_CSS_IN = static/gitweb.css
+GITWEB_CSS = $(GITWEB_CSS_IN)
 GITWEB_LOGO = static/git-logo.png
 GITWEB_FAVICON = static/git-favicon.png
-GITWEB_JS = static/gitweb.js
+GITWEB_JS_IN = static/gitweb.js
+GITWEB_JS = $(GITWEB_JS_IN)
 GITWEB_SITE_HTML_HEAD_STRING =
 GITWEB_SITE_HEADER =
 GITWEB_SITE_FOOTER =
@@ -57,7 +59,7 @@ endif
 # What targets we'll add to 'all' for "make gitweb"
 GITWEB_ALL =
 GITWEB_ALL += gitweb.cgi
-GITWEB_ALL += static/gitweb.js
+GITWEB_ALL += $(GITWEB_JS)
 
 ### Build rules
 
@@ -101,25 +103,23 @@ all:: $(GITWEB_ALL)
 
 GITWEB_PROGRAMS = gitweb.cgi
 
+GITWEB_JS_MIN = static/gitweb.min.js
 ifdef JSMIN
-GITWEB_FILES += static/gitweb.min.js
-GITWEB_JS = static/gitweb.min.js
-all:: static/gitweb.min.js
-static/gitweb.min.js: static/gitweb.js GITWEB-BUILD-OPTIONS
+GITWEB_JS = $(GITWEB_JS_MIN)
+all:: $(GITWEB_JS_MIN)
+$(GITWEB_JS_MIN): $(GITWEB_JS_IN) GITWEB-BUILD-OPTIONS
 	$(QUIET_GEN)$(JSMIN) <$< >$@
-else
-GITWEB_FILES += static/gitweb.js
 endif
+GITWEB_FILES += $(GITWEB_JS)
 
+GITWEB_CSS_MIN = static/gitweb.min.css
 ifdef CSSMIN
-GITWEB_FILES += static/gitweb.min.css
-GITWEB_CSS = static/gitweb.min.css
-all:: static/gitweb.min.css
-static/gitweb.min.css: static/gitweb.css GITWEB-BUILD-OPTIONS
+GITWEB_CSS = $(GITWEB_CSS_MIN)
+all:: $(GITWEB_CSS_MIN)
+$(GITWEB_CSS_MIN): $(GITWEB_CSS_IN) GITWEB-BUILD-OPTIONS
 	$(QUIET_GEN)$(CSSMIN) <$< >$@
-else
-GITWEB_FILES += static/gitweb.css
 endif
+GITWEB_FILES += $(GITWEB_CSS)
 
 GITWEB_FILES += static/git-logo.png static/git-favicon.png
 
@@ -127,6 +127,7 @@ GITWEB_FILES += static/git-logo.png static/git-favicon.png
 #
 # js/lib/common-lib.js should be always first, then js/lib/*.js,
 # then the rest of files; js/gitweb.js should be last (if it exists)
+GITWEB_JSLIB_FILES =
 GITWEB_JSLIB_FILES += static/js/lib/common-lib.js
 GITWEB_JSLIB_FILES += static/js/lib/datetime.js
 GITWEB_JSLIB_FILES += static/js/lib/cookies.js
@@ -201,6 +202,6 @@ install: all
 
 .PHONY: clean
 clean:
-	$(RM) gitweb.cgi static/gitweb.js \
-		static/gitweb.min.js static/gitweb.min.css \
+	$(RM) gitweb.cgi $(GITWEB_JS_IN) \
+		$(GITWEB_JS_MIN) $(GITWEB_CSS_MIN) \
 		GITWEB-BUILD-OPTIONS
-- 
2.36.1.1103.g036c05811b0
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 9 of 31 in “Makefile: build 'gitweb' in the default target”
  1. Makefile: build 'gitweb' in the default targetSZEDER Gábor, May 25, 2022
  2. Ævar Arnfjörð BjarmasonMay 26, 2022
  3. Jeff KingMay 26, 2022
  4. SZEDER GáborMay 26, 2022
  5. Ævar Arnfjörð BjarmasonMay 27, 2022
  6. 0/7 gitweb: fix "make" not including "gitweb" without NOOP run slowdownsÆvar Arnfjörð Bjarmason, May 31, 2022
  7. 1/7 gitweb/Makefile: define all .PHONY prerequisites inlineÆvar Arnfjörð Bjarmason, May 31, 2022
  8. 2/7 gitweb/Makefile: add a $(GITWEB_ALL) variableÆvar Arnfjörð Bjarmason, May 31, 2022
  9. 3/7 gitweb/Makefile: clear up and de-duplicate the gitweb.{css,js} varsÆvar Arnfjörð Bjarmason, May 31, 2022
  10. 4/7 gitweb/Makefile: prepare to merge into top-level MakefileÆvar Arnfjörð Bjarmason, May 31, 2022
  11. 5/7 gitweb: remove "test" and "test-installed" targetsÆvar Arnfjörð Bjarmason, May 31, 2022
  12. 7/7 Makefile: build 'gitweb' in the default targetÆvar Arnfjörð Bjarmason, May 31, 2022
  13. 6/7 gitweb/Makefile: include in top-level MakefileÆvar Arnfjörð Bjarmason, May 31, 2022
  14. Junio C HamanoJun 6, 2022
  15. SZEDER GáborJun 20, 2022
  16. Jeff KingJun 21, 2022
  17. Ævar Arnfjörð BjarmasonJun 22, 2022
  18. Junio C HamanoJun 22, 2022
  19. Ævar Arnfjörð BjarmasonJun 23, 2022
  20. Junio C HamanoJun 23, 2022
  21. Ævar Arnfjörð BjarmasonJun 23, 2022
  22. Junio C HamanoJun 24, 2022
  23. 0/8 gitweb: fix "make" not including "gitweb" without NOOP run slowdownsÆvar Arnfjörð Bjarmason, Jun 28, 2022
  24. 1/8 gitweb/Makefile: define all .PHONY prerequisites inlineÆvar Arnfjörð Bjarmason, Jun 28, 2022
  25. 2/8 gitweb/Makefile: add a $(GITWEB_ALL) variableÆvar Arnfjörð Bjarmason, Jun 28, 2022
  26. 3/8 gitweb/Makefile: clear up and de-duplicate the gitweb.{css,js} varsÆvar Arnfjörð Bjarmason, Jun 28, 2022
  27. 4/8 gitweb/Makefile: prepare to merge into top-level MakefileÆvar Arnfjörð Bjarmason, Jun 28, 2022
  28. 5/8 gitweb: remove "test" and "test-installed" targetsÆvar Arnfjörð Bjarmason, Jun 28, 2022
  29. 6/8 gitweb/Makefile: include in top-level MakefileÆvar Arnfjörð Bjarmason, Jun 28, 2022
  30. 7/8 Makefile: build 'gitweb' in the default targetÆvar Arnfjörð Bjarmason, Jun 28, 2022
  31. 8/8 gitweb/Makefile: add a "NO_GITWEB" parameterÆvar Arnfjörð Bjarmason, Jun 28, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.