[vlc-devel] [PATCH v2] configure: don't put the CONFIGURE_LINE in config.h
Steve Lhomme
robux4 at ycbcr.xyz
Wed Jan 29 11:58:47 CET 2020
On 2020-01-29 11:40, Rémi Denis-Courmont wrote:
> You could make the same argument with any preprocessor definition in any
> header. That's exactly what ccache is for, and it is both less
> constrained and much easier to set up than moving each and every
> definition in a dedicated source module.
I agree there's potentially more things in config.h that should not be
in there. That's not an excuse not to start cleaning it.
> And neither your manual nor the systematic ccache approaches really work
> once LTO is taken into use anyway, because you can't prevent relinking.
> So it's doubly pointless kludge at this point.
>
> Le 29 janvier 2020 11:31:03 GMT+02:00, Steve Lhomme <robux4 at ycbcr.xyz> a
> écrit :
>
> On 2020-01-29 10:26, Rémi Denis-Courmont wrote:
>
> You can ask the TC to bring you better hardware. I'm pretty sure
> we'll
> say it's not the TC's problem.
>
> The community is not responsible for maintaining your hacks for
> your
> choice of under-provisioned hardwared.
>
> Meanwhile this patch neither solves the problem that you need to
> recompile when config.h changes, unlike ccache.
>
>
> You misunderstood the issue. When config.h changes the code is rebuilt
> just like before. The point is that is doesn't change unnecessarily if
> the configure line changed but the actual code configuration didn't change.
>
> Le 29 janvier 2020 11:21:54 GMT+02:00, Steve Lhomme
> <robux4 at ycbcr.xyz> a
> écrit :
>
> On 2020-01-29 10:13, Rémi Denis-Courmont wrote:
>
> Use ccache.
>
>
> Buy me more storage.
> (is as useful an answer)
>
> -1
>
> Le 29 janvier 2020 09:42:51 GMT+02:00, Steve Lhomme
> <robux4 at ycbcr.xyz> a
> écrit :
>
> If the configure call changed but the built files are the same
> and the rest
> of the config.h file has not changed, no need to rebuild everything.
> ------------------------------------------------------------------------
> configure.ac | 3 ++-
> src/Makefile.am | 2 ++
> src/misc/gen_messages.c.in | 46
> ++++++++++++++++++++++++++++++++++++++
> src/misc/messages.c | 9 +-------
> 4 files changed, 51 insertions(+), 9 deletions(-)
> create mode 100644 src/misc/gen_messages.c.in
>
> diff --git a/configure.ac b/configure.ac
> index ad2c55aeeb0..390721866b0 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -4505,7 +4505,6 @@ COPYRIGHT_MESSAGE="Copyright ©
> ${COPYRIGHT_YEARS} the VideoLAN team"
> AC_DEFINE_UNQUOTED([VERSION_MESSAGE], "${VERSION_MESSAGE}",
> [Simple version string])
> AC_DEFINE_UNQUOTED([COPYRIGHT_MESSAGE], "${COPYRIGHT_MESSAGE}",
> [Copyright string])
> AC_DEFINE_UNQUOTED([COPYRIGHT_YEARS], "${COPYRIGHT_YEARS}", [The
> copyright years])
> -AC_DEFINE_UNQUOTED([CONFIGURE_LINE], "${CONFIGURE_LINE}", [The
> ./configure command line])
> AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],${VERSION_MAJOR},
> [version major number])
> AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],${VERSION_MINOR},
> [version minor number])
> AC_DEFINE_UNQUOTED([PACKAGE_VERSION_REVISION],${VERSION_REVISION},
> [version revision number])
> @@ -4513,6 +4512,7 @@
> AC_DEFINE_UNQUOTED([PACKAGE_VERSION_EXTRA],${VERSION_EXTRA},
> [version extra numb
> AC_DEFINE_UNQUOTED([PACKAGE_VERSION_DEV],"${VERSION_DEV}",
> [version development string])
> AC_SUBST([COPYRIGHT_MESSAGE])
> AC_SUBST([VERSION_MESSAGE])
> +AC_SUBST([CONFIGURE_LINE])
> AC_SUBST([VERSION_MAJOR])
> AC_SUBST([VERSION_MINOR])
> AC_SUBST([VERSION_REVISION])
> @@ -4558,6 +4558,7 @@ AC_CONFIG_FILES([
> test/Makefile
> modules/hw/mmal/Makefile
> share/vlc.appdata.xml.in
> + src/misc/gen_messages.c
> ])
>
> AM_COND_IF([HAVE_WIN32], [
> diff --git a/src/Makefile.am b/src/Makefile.am
> index b6c59968370..2fd69aeb989 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -390,6 +390,8 @@ libvlccore_la_SOURCES = \
> misc/subpicture.h \
> misc/medialibrary.c \
> misc/viewpoint.c
> +nodist_libvlccore_la_SOURCES = misc/gen_messages.c
> +CLEANFILES += misc/gen_messages.c
> libvlccore_la_LIBADD = $(LIBS_libvlccore) \
> ../compat/libcompat.la \
> $(LTLIBINTL) $(LTLIBICONV) \
> diff --git a/src/misc/gen_messages.c.in b/src/misc/gen_messages.c.in
> new file mode 100644
> index 00000000000..da92de80e23
> --- /dev/null
> +++ b/src/misc/gen_messages.c.in
> @@ -0,0 +1,46 @@
> +/*****************************************************************************
> + * messages.c: messages interface
> + * This library provides an interface to the message queue to
> be used by other
> + * modules, especially intf modules. See vlc_config.h for
> output configuration.
> +
> *****************************************************************************
> + * Copyright (C) 1998-2005 VLC authors and VideoLAN
> + *
> + * Authors: Vincent Seguin <seguin at via.ecp.fr>
> + * Samuel Hocevar <sam at zoy.org>
> + *
> + * This program is free software; you can redistribute it
> and/or modify it
> + * under the terms of the GNU Lesser General Public License as
> published by
> + * the Free Software Foundation; either version 2.1 of the
> License, or
> + * (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU Lesser General Public License for more details.
> + *
> + * You should have received a copy of the GNU Lesser General
> Public License
> + * along with this program; if not, write to the Free Software
> Foundation,
> + * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301,
> USA.
> +
> *****************************************************************************/
> +
> +/*****************************************************************************
> + * Preamble
> +
> *****************************************************************************/
> +
> +#ifdef HAVE_CONFIG_H
> +# include "config.h"
> +#endif
> +
> +#include <vlc_common.h>
> +
> +extern const char psz_vlc_changeset[];
> +void vlc_LogSpam(vlc_object_t *obj);
> +
> +void vlc_LogSpam(vlc_object_t *obj)
> +{
> + /* Announce who we are */
> + msg_Dbg(obj, "VLC media player - @VERSION_MESSAGE@");
> + msg_Dbg(obj, "@COPYRIGHT_MESSAGE@");
> + msg_Dbg(obj, "revision %s", psz_vlc_changeset);
> + msg_Dbg(obj, "configured with @CONFIGURE_LINE@");
> +}
> diff --git a/src/misc/messages.c b/src/misc/messages.c
> index 08725113897..623d7616a07 100644
> --- a/src/misc/messages.c
> +++ b/src/misc/messages.c
> @@ -42,14 +42,7 @@
> #include <vlc_modules.h>
> #include "../libvlc.h"
>
> -static void vlc_LogSpam(vlc_object_t *obj)
> -{
> - /* Announce who we are */
> - msg_Dbg(obj, "VLC media player - %s", VERSION_MESSAGE);
> - msg_Dbg(obj, "%s", COPYRIGHT_MESSAGE);
> - msg_Dbg(obj, "revision %s", psz_vlc_changeset);
> - msg_Dbg(obj, "configured with %s", CONFIGURE_LINE);
> -}
> +void vlc_LogSpam(vlc_object_t *obj);
>
> struct vlc_logger {
> const struct vlc_logger_operations *ops;
>
>
> --
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez
> excuser
> ma brièveté.
> ------------------------------------------------------------------------
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
> ------------------------------------------------------------------------
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
>
> --
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez
> excuser
> ma brièveté.
> ------------------------------------------------------------------------
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
> ------------------------------------------------------------------------
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
>
> --
> Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser
> ma brièveté.
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
>
More information about the vlc-devel
mailing list