]> git.tue.mpg.de Git - paraslash.git/commitdiff
build: Merge version.{c,h} into string.{c,h}.
authorAndre Noll <maan@tuebingen.mpg.de>
Tue, 31 Dec 2024 23:48:26 +0000 (00:48 +0100)
committerAndre Noll <maan@tuebingen.mpg.de>
Mon, 20 Jan 2025 21:06:33 +0000 (22:06 +0100)
This is a preparatory patch for the upcoming revamp of the git
version script. The revamped script generates version.c, a file
which is currently tracked by git. We can easily get rid of it (and
of version.h) since all paraslash executables link in both string.o
and version.o. So let's move the three small functions of version.c
to string.c and their declarations from version.h to string.h.

20 files changed:
Makefile.real
afh.c
audioc.c
audiod.c
audiod_command.c
client.c
client_common.c
command.c
filter.c
gui.c
mixer.c
play.c
recv.c
server.c
string.c
string.h
upgrade_db.c
version.c [deleted file]
version.h [deleted file]
write.c

index a5492d6632eb39727e6b1d2d6bb25c9281a7dc95..33b9ba464c090a4991dcef947c1acf9cb3f084bc 100644 (file)
@@ -47,7 +47,7 @@ ifneq ($(CRYPTOLIB),)
                        crypt_common base64 ipc dccp_send fd user_list \
                        chunk_queue afs aft mood mp score attribute blob \
                        playlist sched acl send_common udp_send color fec \
-                       wma_afh wma_common sideband version lsu \
+                       wma_afh wma_common sideband lsu \
                )
                ifeq ($(CRYPTOLIB),openssl)
                        server_objs += openssl.o
@@ -73,14 +73,14 @@ ifneq ($(CRYPTOLIB),)
                        server_objs += aac_afh.o mp4.o
                endif
                upgrade_db_objs := $(addsuffix .o, crypt_common exec fd string \
-                       upgrade_db version base64)
+                       upgrade_db base64)
        endif
 endif
 ifneq ($(CRYPTOLIB),)
        executables += client audiod
        client_objs := $(addsuffix .o, \
                client net string fd lsu sched stdin stdout time sideband client_common \
-               buffer_tree crypt_common base64 version $(CRYPTOLIB) \
+               buffer_tree crypt_common base64 $(CRYPTOLIB) \
        )
        ifeq ($(HAVE_READLINE),yes)
                client_objs += interactive.o
@@ -90,7 +90,7 @@ ifneq ($(CRYPTOLIB),)
                time grab_client filter_common wav_filter compress_filter amp_filter \
                http_recv dccp_recv recv_common fd sched write_common file_write \
                audiod_command fecdec_filter client_common udp_recv color fec \
-               prebuffer_filter version bitstream imdct wma_common wmadec_filter \
+               prebuffer_filter bitstream imdct wma_common wmadec_filter \
                buffer_tree sync_filter lsu $(CRYPTOLIB) \
        )
        audiod_audio_formats := "wma"
@@ -133,7 +133,7 @@ ifneq ($(CRYPTOLIB),)
 endif
 ifneq ($(HAVE_OSS)-$(HAVE_ALSA),no-no)
        executables += mixer
-       mixer_objs := $(addsuffix .o, mixer exec string fd time lsu version)
+       mixer_objs := $(addsuffix .o, mixer exec string fd time lsu)
        ifeq ($(HAVE_OSS),yes)
                mixer_objs += oss_mix.o
        endif
@@ -144,11 +144,11 @@ endif
 ifeq ($(HAVE_CURSES),yes)
        executables += gui
        gui_objs := $(addsuffix .o, exec signal string stat ringbuffer fd \
-               gui gui_theme lsu time sched version)
+               gui gui_theme lsu time sched)
 endif
 filter_objs := $(addsuffix .o, \
        filter_common wav_filter compress_filter filter string stdin stdout \
-       sched fd amp_filter fecdec_filter fec lsu version prebuffer_filter \
+       sched fd amp_filter fecdec_filter fec lsu prebuffer_filter \
        time bitstream imdct wma_common wmadec_filter buffer_tree net \
        sync_filter \
 )
@@ -177,7 +177,6 @@ endif
 recv_objs := $(addsuffix .o, \
        http_recv recv_common recv time string net dccp_recv fd sched stdout \
        udp_recv buffer_tree afh_recv afh_common wma_afh wma_common mp3_afh \
-       version \
 )
 ifeq ($(NEED_OGG_OBJECTS),yes)
        recv_objs += ogg_afh_common.o
@@ -200,7 +199,7 @@ endif
 
 audio_format_handlers := mp3 wma
 afh_objs := $(addsuffix .o, afh string fd mp3_afh afh_common time wma_afh \
-       wma_common version)
+       wma_common)
 ifeq ($(NEED_OGG_OBJECTS),yes)
        afh_objs += ogg_afh_common.o
 endif
@@ -232,7 +231,7 @@ ifeq ($(HAVE_READLINE),yes)
                wma_afh wma_common mp3_afh recv_common udp_recv http_recv dccp_recv \
                filter_common fec bitstream imdct wav_filter compress_filter \
                amp_filter prebuffer_filter fecdec_filter wmadec_filter write_common \
-               file_write version sync_filter lsu interactive \
+               file_write sync_filter lsu interactive \
        )
        ifeq ($(NEED_OGG_OBJECTS),yes)
                play_objs += ogg_afh_common.o
@@ -270,7 +269,7 @@ ifeq ($(HAVE_READLINE),yes)
 endif
 
 write_objs := $(addsuffix .o, write write_common file_write time fd \
-       string sched stdin buffer_tree check_wav version)
+       string sched stdin buffer_tree check_wav)
 ifeq ($(NEED_AO_OBJECTS),yes)
        write_objs += ao_write.o
 endif
@@ -281,7 +280,7 @@ ifeq ($(HAVE_ALSA),yes)
        write_objs += alsa_write.o
 endif
 
-audioc_objs := $(addsuffix .o, audioc string lsu net fd time version)
+audioc_objs := $(addsuffix .o, audioc string lsu net fd time)
 ifeq ($(HAVE_READLINE),yes)
        audioc_objs += buffer_tree.o interactive.o sched.o
 endif
diff --git a/afh.c b/afh.c
index e419d2708d7224aaa5330515b11d45947c0d5fab..92ce54a54ecc76dc0cca28f1744d9bd85b38e0ba 100644 (file)
--- a/afh.c
+++ b/afh.c
@@ -11,7 +11,6 @@
 #include "fd.h"
 #include "afh.h"
 #include "error.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index f2e4cb91de228dcd78cae534e08d76e8514b6d88..be9cc8588057cedc0eac51a38ea58e7c81598c7f 100644 (file)
--- a/audioc.c
+++ b/audioc.c
@@ -21,7 +21,6 @@
 #include "net.h"
 #include "string.h"
 #include "fd.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index 3e86af537431ff67b00a47694fcaa506dea41837..53112d594be1a9488450e74f4d8b8e935f6b56fa 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -33,7 +33,6 @@
 #include "fd.h"
 #include "write.h"
 #include "signal.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index 5f0b35a5dc0f3e4f02d134faa2ef828c6b357763..699cf97bba2576333e72f236879095ab9336666b 100644 (file)
@@ -27,7 +27,6 @@
 #include "string.h"
 #include "write.h"
 #include "fd.h"
-#include "version.h"
 
 extern struct sched sched;
 extern char *stat_item_values[NUM_STAT_ITEMS];
index d2d11fd34344d5b4f5186daf568850fe153cbacb..eb1e275f9aa636857dabf7033842e49844300720 100644 (file)
--- a/client.c
+++ b/client.c
@@ -17,7 +17,6 @@
 #include "client.h"
 #include "buffer_tree.h"
 #include "error.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index 396fd88c894cda20e4f55a7955a9a4fe77e9633d..5d60e7fb7a157cdcb3ffa3c3d61c6e336f3ae3e7 100644 (file)
@@ -24,7 +24,6 @@
 #include "string.h"
 #include "client.h"
 #include "buffer_tree.h"
-#include "version.h"
 
 /** The size of the receiving buffer. */
 #define CLIENT_BUFSIZE 4000
index 78c9106c9ff84062e874b326a386f7073e09aeca..7bf8cbe4380338dd6d41f88f6b9b951cdc98b645 100644 (file)
--- a/command.c
+++ b/command.c
@@ -30,7 +30,6 @@
 #include "server_cmd.lsg.h"
 #include "user_list.h"
 #include "signal.h"
-#include "version.h"
 
 /** \cond server_cmd_aux_info */
 #define SERVER_CMD_AUX_INFO(_arg) _arg,
index 50447ec0cd2a165c974e4fea68e288e98a1713e3..63e5c7b8276faf2ed086a1c06d43ffc30998d394 100644 (file)
--- a/filter.c
+++ b/filter.c
@@ -18,7 +18,6 @@
 #include "stdout.h"
 #include "error.h"
 #include "fd.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
diff --git a/gui.c b/gui.c
index feb65c0f8883372326525dc13531cbceeef4d50f..6133b6ca91f5c03bca6ac02f8e98a46642f8ce21 100644 (file)
--- a/gui.c
+++ b/gui.c
@@ -21,7 +21,6 @@
 #include "list.h"
 #include "sched.h"
 #include "signal.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
diff --git a/mixer.c b/mixer.c
index 787a72574242e46dd09552bce5534e826a3288ba..dc6af7676bb7bc3d26c61dda28f64b637cecfd74 100644 (file)
--- a/mixer.c
+++ b/mixer.c
@@ -13,7 +13,6 @@
 #include "string.h"
 #include "mix.h"
 #include "error.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
diff --git a/play.c b/play.c
index 596b4b6dd70402dcd261061d8b39f97e7b722ac8..6dd89696dc8b2c30dd95733dd3517e10e0716f66 100644 (file)
--- a/play.c
+++ b/play.c
@@ -16,7 +16,6 @@
 #include "list.h"
 #include "error.h"
 #include "buffer_tree.h"
-#include "version.h"
 #include "string.h"
 #include "sched.h"
 #include "filter.h"
diff --git a/recv.c b/recv.c
index 68417187348b058b375993b9a74eb6c2ca7d826b..f914821e5e2eed18ef80428a9043974324f1ba67 100644 (file)
--- a/recv.c
+++ b/recv.c
@@ -17,7 +17,6 @@
 #include "string.h"
 #include "error.h"
 #include "stdout.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index ea9cc9c003616762a96aa546c381d54417fd34a2..991301baf064dd17bbf933d9b7f0559375c81598 100644 (file)
--- a/server.c
+++ b/server.c
@@ -35,7 +35,6 @@
 #include "signal.h"
 #include "user_list.h"
 #include "color.h"
-#include "version.h"
 
 /** Array of error strings. */
 DEFINE_PARA_ERRLIST;
index d8bd027b7010a149be59b8883b3e5ee685fb3c01..5e8d72bc0efe2e734d2a9060a331be5b9dd579b8 100644 (file)
--- a/string.c
+++ b/string.c
@@ -13,6 +13,7 @@
 
 #include "string.h"
 #include "error.h"
+#include "git-version.h"
 
 /**
  * Reallocate an array, abort on failure or bugs.
@@ -1093,3 +1094,65 @@ __must_check int sanitize_str(const char *src, size_t max_width,
        free(wcs);
        return 1;
 }
+
+/**
+ * Get the version string for an executable.
+ *
+ * \param pfx The program name (without the leading "para_").
+ *
+ * \return A statically allocated string which contains the program name and
+ * the git version. It must not be freed by the caller.
+ */
+const char *version_single_line(const char *pfx)
+{
+       static char buf[100];
+       snprintf(buf, sizeof(buf) - 1,
+               "para_%s " GIT_VERSION, pfx);
+       return buf;
+}
+
+/**
+ * Get the full version text.
+ *
+ * \param pfx See \ref version_single_line().
+ *
+ * \return A string containing the same text as returned by \ref
+ * version_single_line(), augmented by additional build information, a
+ * copyright text and the email address of the author.
+ *
+ * Like \ref version_single_line(), this string is stored in a statically
+ * allocated buffer and must not be freed.
+ */
+const char *version_text(const char *pfx)
+{
+       static char buf[512];
+
+       snprintf(buf, sizeof(buf) - 1, "%s\n"
+               "Copyright (C) " COPYRIGHT_YEAR " Andre Noll\n"
+               "This is free software with ABSOLUTELY NO WARRANTY."
+               " See COPYING for details.\n"
+               "Report bugs to <maan@tuebingen.mpg.de>.\n"
+               "build date: " BUILD_DATE ",\n"
+               "build system: " UNAME_RS ",\n"
+               "compiler: " CC_VERSION ".\n",
+               version_single_line(pfx)
+       );
+       return buf;
+}
+
+/**
+ * Print the version text and exit successfully.
+ *
+ * \param pfx See \ref version_single_line().
+ * \param flag Whether --version was given.
+ *
+ * If \a flag is false, this function does nothing. Otherwise it prints the
+ * full version text as returned by \ref version_text() and exits successfully.
+ */
+void version_handle_flag(const char *pfx, bool flag)
+{
+       if (!flag)
+               return;
+       printf("%s", version_text(pfx));
+       exit(EXIT_SUCCESS);
+}
index d773600fbf0a0168584235a5098beabb110a3416..fe1f49cbbad2ca85813d09c91a3d05686d7f2c05 100644 (file)
--- a/string.h
+++ b/string.h
@@ -98,3 +98,6 @@ int skip_cells(const char *s, size_t cells_to_skip, size_t *result);
 __must_check int strwidth(const char *s, size_t *result);
 __must_check int sanitize_str(const char *src, size_t max_width,
                char **result, size_t *width);
+const char *version_single_line(const char *pfx);
+const char *version_text(const char *pfx);
+void version_handle_flag(const char *pfx, bool flag);
index 487d46c06f2ce1df61630aaa34ca44dc99fb1d86..faadc9226a3de36f2e0a0f469007f4c81f42ddd1 100644 (file)
@@ -12,7 +12,6 @@
 #include "string.h"
 #include "fd.h"
 #include "crypt.h"
-#include "version.h"
 
 #define CMD_PTR (lls_cmd(0, upgrade_db_suite))
 #define OPT_RESULT(_name, _lpr) \
diff --git a/version.c b/version.c
deleted file mode 100644 (file)
index d057f9c..0000000
--- a/version.c
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Copyright (C) 2013 Andre Noll <maan@tuebingen.mpg.de>, see file COPYING. */
-
-/** \file version.c Some helpers for printing version and copyright strings. */
-
-#include "para.h"
-#include "version.h"
-#include "git-version.h"
-
-/**
- * Get the version string for an executable.
- *
- * \param pfx The program name (without the leading "para_").
- *
- * \return A statically allocated string which contains the program name and
- * the git version. It must not be freed by the caller.
- */
-const char *version_single_line(const char *pfx)
-{
-       static char buf[100];
-       snprintf(buf, sizeof(buf) - 1,
-               "para_%s " GIT_VERSION, pfx);
-       return buf;
-}
-
-/**
- * Get the full version text.
- *
- * \param pfx See \ref version_single_line().
- *
- * \return A string containing the same text as returned by \ref
- * version_single_line(), augmented by additional build information, a
- * copyright text and the email address of the author.
- *
- * Like \ref version_single_line(), this string is stored in a statically
- * allocated buffer and must not be freed.
- */
-const char *version_text(const char *pfx)
-{
-       static char buf[512];
-
-       snprintf(buf, sizeof(buf) - 1, "%s\n"
-               "Copyright (C) " COPYRIGHT_YEAR " Andre Noll\n"
-               "This is free software with ABSOLUTELY NO WARRANTY."
-               " See COPYING for details.\n"
-               "Report bugs to <maan@tuebingen.mpg.de>.\n"
-               "build date: " BUILD_DATE ",\n"
-               "build system: " UNAME_RS ",\n"
-               "compiler: " CC_VERSION ".\n",
-               version_single_line(pfx)
-       );
-       return buf;
-}
-
-/**
- * Print the version text and exit successfully.
- *
- * \param pfx See \ref version_single_line().
- * \param flag Whether --version was given.
- *
- * If \a flag is false, this function does nothing. Otherwise it prints the
- * full version text as returned by \ref version_text() and exits successfully.
- */
-void version_handle_flag(const char *pfx, bool flag)
-{
-       if (!flag)
-               return;
-       printf("%s", version_text(pfx));
-       exit(EXIT_SUCCESS);
-}
diff --git a/version.h b/version.h
deleted file mode 100644 (file)
index f528285..0000000
--- a/version.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/** \file version.h Functions for printing the version string. */
-
-const char *version_single_line(const char *pfx);
-const char *version_text(const char *pfx);
-void version_handle_flag(const char *pfx, bool flag);
diff --git a/write.c b/write.c
index cb32d391eaa0f856414aa23318a7573def0d9eef..9fb981923388f5e8ac2b7c6a93b5f3504ecc06fc 100644 (file)
--- a/write.c
+++ b/write.c
@@ -17,7 +17,6 @@
 #include "write.h"
 #include "fd.h"
 #include "error.h"
-#include "version.h"
 #include "check_wav.h"
 
 /** Array of error strings. */