[{"id":35733,"web_url":"https://patchwork.libcamera.org/comment/35733/","msgid":"<d6032adb-7628-45dc-9d2e-57d160cc8aaa@ideasonboard.com>","date":"2025-09-09T07:50:44","subject":"Re: [PATCH] Documentation: Use standard ordering for Doxyfile\n\tvariables","submitter":{"id":216,"url":"https://patchwork.libcamera.org/api/people/216/","name":"Barnabás Pőcze","email":"barnabas.pocze@ideasonboard.com"},"content":"Hi\n\n2025. 09. 08. 20:52 keltezéssel, Laurent Pinchart írta:\n> Order the variables in Doxyfiles as in the template generated by\n> 'doxygen -g'. This doesn't have any functional change, but provides a\n> standard order when adding new variables.\n\nWas this change generated \"manually\"? Or does doxygen have a feature to format\na doxyfile like this?\n\n\nRegards,\nBarnabás Pőcze\n\n\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> ---\n>   Documentation/Doxyfile-common.in   | 6 +++---\n>   Documentation/Doxyfile-internal.in | 9 +++++----\n>   Documentation/Doxyfile-public.in   | 9 +++++----\n>   3 files changed, 13 insertions(+), 11 deletions(-)\n> \n> diff --git a/Documentation/Doxyfile-common.in b/Documentation/Doxyfile-common.in\n> index 58afea1cd70d..c9527da03ed5 100644\n> --- a/Documentation/Doxyfile-common.in\n> +++ b/Documentation/Doxyfile-common.in\n> @@ -29,6 +29,8 @@ FILE_PATTERNS          = *.c \\\n>   \n>   RECURSIVE              = YES\n>   \n> +EXCLUDE_SYMLINKS       = YES\n> +\n>   EXCLUDE_PATTERNS       = @TOP_BUILDDIR@/include/libcamera/ipa/*_serializer.h \\\n>                            @TOP_BUILDDIR@/include/libcamera/ipa/*_proxy.h \\\n>                            @TOP_BUILDDIR@/include/libcamera/ipa/ipu3_*.h \\\n> @@ -50,7 +52,7 @@ EXCLUDE_SYMBOLS        = libcamera::BoundMethodArgs \\\n>                            *::details \\\n>                            std::*\n>   \n> -EXCLUDE_SYMLINKS       = YES\n> +IMAGE_PATH             = \"@TOP_SRCDIR@/Documentation/images\"\n>   \n>   GENERATE_LATEX         = NO\n>   \n> @@ -61,8 +63,6 @@ INCLUDE_PATH           = \"@TOP_BUILDDIR@/include\" \\\n>                            \"@TOP_SRCDIR@/include\"\n>   INCLUDE_FILE_PATTERNS  = *.h\n>   \n> -IMAGE_PATH             = \"@TOP_SRCDIR@/Documentation/images\"\n> -\n>   PREDEFINED             = __DOXYGEN__ \\\n>                            __cplusplus \\\n>                            __attribute__(x)= \\\n> diff --git a/Documentation/Doxyfile-internal.in b/Documentation/Doxyfile-internal.in\n> index a422bb0719da..aeaa06e9d9d3 100644\n> --- a/Documentation/Doxyfile-internal.in\n> +++ b/Documentation/Doxyfile-internal.in\n> @@ -3,11 +3,8 @@\n>   @INCLUDE_PATH          = @TOP_BUILDDIR@/Documentation\n>   @INCLUDE               = Doxyfile-common\n>   \n> -GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/internal-api-html/tagfile.xml\n> -\n> -HIDE_UNDOC_CLASSES     = NO\n>   HIDE_UNDOC_MEMBERS     = NO\n> -HTML_OUTPUT            = internal-api-html\n> +HIDE_UNDOC_CLASSES     = NO\n>   INTERNAL_DOCS          = YES\n>   ENABLED_SECTIONS       = internal\n>   \n> @@ -33,3 +30,7 @@ EXCLUDE                = @TOP_SRCDIR@/include/libcamera/base/span.h \\\n>                            @TOP_BUILDDIR@/include/libcamera/internal/tracepoints.h \\\n>                            @TOP_BUILDDIR@/include/libcamera/ipa/soft_ipa_interface.h \\\n>                            @TOP_BUILDDIR@/src/libcamera/proxy/\n> +\n> +HTML_OUTPUT            = internal-api-html\n> +\n> +GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/internal-api-html/tagfile.xml\n> diff --git a/Documentation/Doxyfile-public.in b/Documentation/Doxyfile-public.in\n> index c3a8b0dd003a..917f24008579 100644\n> --- a/Documentation/Doxyfile-public.in\n> +++ b/Documentation/Doxyfile-public.in\n> @@ -3,11 +3,8 @@\n>   @INCLUDE_PATH          = @TOP_BUILDDIR@/Documentation\n>   @INCLUDE               = Doxyfile-common\n>   \n> -GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/api-html/tagfile.xml\n> -\n> -HIDE_UNDOC_CLASSES     = YES\n>   HIDE_UNDOC_MEMBERS     = YES\n> -HTML_OUTPUT            = api-html\n> +HIDE_UNDOC_CLASSES     = YES\n>   INTERNAL_DOCS          = NO\n>   \n>   INPUT                  = \"@TOP_SRCDIR@/Documentation\" \\\n> @@ -19,4 +16,8 @@ EXCLUDE                = @TOP_SRCDIR@/include/libcamera/base/class.h \\\n>                            @TOP_SRCDIR@/src/libcamera/base/class.cpp \\\n>                            @TOP_SRCDIR@/src/libcamera/base/object.cpp\n>   \n> +HTML_OUTPUT            = api-html\n> +\n>   PREDEFINED            += __DOXYGEN_PUBLIC__\n> +\n> +GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/api-html/tagfile.xml\n> \n> base-commit: b8d332cdcc130c27232f61369e7bab2d954e7ac6","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 274C9C324E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  9 Sep 2025 07:51:11 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9C78969366;\n\tTue,  9 Sep 2025 09:51:09 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 81FAF69339\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  9 Sep 2025 09:50:49 +0200 (CEST)","from [192.168.33.22] (185.221.142.115.nat.pool.zt.hu\n\t[185.221.142.115])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id F17A96A6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  9 Sep 2025 09:49:35 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"M6p/6YLK\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1757404176;\n\tbh=ja9T9XlUCf536XaOSphuSMQT5wQijIZc9rSzuCvbJp0=;\n\th=Date:Subject:To:References:From:In-Reply-To:From;\n\tb=M6p/6YLKG3Q+z747f1t8aIIOXM5mXKVMt8K84XD1IawbKucWkwVxDS3R9ejYxzqsL\n\t+mx7m3rIxs0MnnUL982JVO6iZIpa4ccOsb8Kp4Lbcqq1z1sMn/PYUkwgDg4qvoASMJ\n\t/l5rC5nzTeyl5cR5Iu2iMTQrwkcGTry12pPxmuWc=","Message-ID":"<d6032adb-7628-45dc-9d2e-57d160cc8aaa@ideasonboard.com>","Date":"Tue, 9 Sep 2025 09:50:44 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH] Documentation: Use standard ordering for Doxyfile\n\tvariables","To":"libcamera-devel@lists.libcamera.org","References":"<20250908185230.25287-1-laurent.pinchart@ideasonboard.com>","From":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Content-Language":"en-US, hu-HU","In-Reply-To":"<20250908185230.25287-1-laurent.pinchart@ideasonboard.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":35759,"web_url":"https://patchwork.libcamera.org/comment/35759/","msgid":"<20250909173515.GI18349@pendragon.ideasonboard.com>","date":"2025-09-09T17:35:15","subject":"Re: [PATCH] Documentation: Use standard ordering for Doxyfile\n\tvariables","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Tue, Sep 09, 2025 at 09:50:44AM +0200, Barnabás Pőcze wrote:\n> 2025. 09. 08. 20:52 keltezéssel, Laurent Pinchart írta:\n> > Order the variables in Doxyfiles as in the template generated by\n> > 'doxygen -g'. This doesn't have any functional change, but provides a\n> > standard order when adding new variables.\n> \n> Was this change generated \"manually\"? Or does doxygen have a feature to format\n> a doxyfile like this?\n\nSemi-manually :-) I ran\n\ndoxygen -g /dev/stdout | grep \"^\\($(cat Documentation/Doxyfile-common.in | grep '^[A-Z]' | sed 's/ .*//' | awk 'ORS=\"\\\\|\"' | head -c -2)\\)\" | sed 's/ .*//'\n\nwhich prints the order in which the fields should be ordered. I'm sure\nthis could be further scripted to reorder a file.\n\n> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> > ---\n> >   Documentation/Doxyfile-common.in   | 6 +++---\n> >   Documentation/Doxyfile-internal.in | 9 +++++----\n> >   Documentation/Doxyfile-public.in   | 9 +++++----\n> >   3 files changed, 13 insertions(+), 11 deletions(-)\n> > \n> > diff --git a/Documentation/Doxyfile-common.in b/Documentation/Doxyfile-common.in\n> > index 58afea1cd70d..c9527da03ed5 100644\n> > --- a/Documentation/Doxyfile-common.in\n> > +++ b/Documentation/Doxyfile-common.in\n> > @@ -29,6 +29,8 @@ FILE_PATTERNS          = *.c \\\n> >   \n> >   RECURSIVE              = YES\n> >   \n> > +EXCLUDE_SYMLINKS       = YES\n> > +\n> >   EXCLUDE_PATTERNS       = @TOP_BUILDDIR@/include/libcamera/ipa/*_serializer.h \\\n> >                            @TOP_BUILDDIR@/include/libcamera/ipa/*_proxy.h \\\n> >                            @TOP_BUILDDIR@/include/libcamera/ipa/ipu3_*.h \\\n> > @@ -50,7 +52,7 @@ EXCLUDE_SYMBOLS        = libcamera::BoundMethodArgs \\\n> >                            *::details \\\n> >                            std::*\n> >   \n> > -EXCLUDE_SYMLINKS       = YES\n> > +IMAGE_PATH             = \"@TOP_SRCDIR@/Documentation/images\"\n> >   \n> >   GENERATE_LATEX         = NO\n> >   \n> > @@ -61,8 +63,6 @@ INCLUDE_PATH           = \"@TOP_BUILDDIR@/include\" \\\n> >                            \"@TOP_SRCDIR@/include\"\n> >   INCLUDE_FILE_PATTERNS  = *.h\n> >   \n> > -IMAGE_PATH             = \"@TOP_SRCDIR@/Documentation/images\"\n> > -\n> >   PREDEFINED             = __DOXYGEN__ \\\n> >                            __cplusplus \\\n> >                            __attribute__(x)= \\\n> > diff --git a/Documentation/Doxyfile-internal.in b/Documentation/Doxyfile-internal.in\n> > index a422bb0719da..aeaa06e9d9d3 100644\n> > --- a/Documentation/Doxyfile-internal.in\n> > +++ b/Documentation/Doxyfile-internal.in\n> > @@ -3,11 +3,8 @@\n> >   @INCLUDE_PATH          = @TOP_BUILDDIR@/Documentation\n> >   @INCLUDE               = Doxyfile-common\n> >   \n> > -GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/internal-api-html/tagfile.xml\n> > -\n> > -HIDE_UNDOC_CLASSES     = NO\n> >   HIDE_UNDOC_MEMBERS     = NO\n> > -HTML_OUTPUT            = internal-api-html\n> > +HIDE_UNDOC_CLASSES     = NO\n> >   INTERNAL_DOCS          = YES\n> >   ENABLED_SECTIONS       = internal\n> >   \n> > @@ -33,3 +30,7 @@ EXCLUDE                = @TOP_SRCDIR@/include/libcamera/base/span.h \\\n> >                            @TOP_BUILDDIR@/include/libcamera/internal/tracepoints.h \\\n> >                            @TOP_BUILDDIR@/include/libcamera/ipa/soft_ipa_interface.h \\\n> >                            @TOP_BUILDDIR@/src/libcamera/proxy/\n> > +\n> > +HTML_OUTPUT            = internal-api-html\n> > +\n> > +GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/internal-api-html/tagfile.xml\n> > diff --git a/Documentation/Doxyfile-public.in b/Documentation/Doxyfile-public.in\n> > index c3a8b0dd003a..917f24008579 100644\n> > --- a/Documentation/Doxyfile-public.in\n> > +++ b/Documentation/Doxyfile-public.in\n> > @@ -3,11 +3,8 @@\n> >   @INCLUDE_PATH          = @TOP_BUILDDIR@/Documentation\n> >   @INCLUDE               = Doxyfile-common\n> >   \n> > -GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/api-html/tagfile.xml\n> > -\n> > -HIDE_UNDOC_CLASSES     = YES\n> >   HIDE_UNDOC_MEMBERS     = YES\n> > -HTML_OUTPUT            = api-html\n> > +HIDE_UNDOC_CLASSES     = YES\n> >   INTERNAL_DOCS          = NO\n> >   \n> >   INPUT                  = \"@TOP_SRCDIR@/Documentation\" \\\n> > @@ -19,4 +16,8 @@ EXCLUDE                = @TOP_SRCDIR@/include/libcamera/base/class.h \\\n> >                            @TOP_SRCDIR@/src/libcamera/base/class.cpp \\\n> >                            @TOP_SRCDIR@/src/libcamera/base/object.cpp\n> >   \n> > +HTML_OUTPUT            = api-html\n> > +\n> >   PREDEFINED            += __DOXYGEN_PUBLIC__\n> > +\n> > +GENERATE_TAGFILE       = @TOP_BUILDDIR@/Documentation/api-html/tagfile.xml\n> > \n> > base-commit: b8d332cdcc130c27232f61369e7bab2d954e7ac6","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 3D49EBDB13\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  9 Sep 2025 17:35:42 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2447869367;\n\tTue,  9 Sep 2025 19:35:41 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 5237B6934B\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  9 Sep 2025 19:35:39 +0200 (CEST)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id D33EF5B3;\n\tTue,  9 Sep 2025 19:34:25 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"G5u0tc/C\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1757439266;\n\tbh=BrlG+xdJrEANKPo91xwuWd8lHA3ftDuZILfltc37xbY=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=G5u0tc/CZNtkao/5fPSOmcdoOCxFedwllyFD5r9GjVaeQznX6gfgPwSD35snrw+8e\n\t+rlwyWzwl/2Rp9UYbYXUyrbzqjcusf2ppFr7fYJKK/vJGXtxOBJ2FL5Q9+j4ZihvCa\n\tbsUdsvNoF5cQLWLvwjSnaPX3GWmrTgX7aB85wdZI=","Date":"Tue, 9 Sep 2025 20:35:15 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [PATCH] Documentation: Use standard ordering for Doxyfile\n\tvariables","Message-ID":"<20250909173515.GI18349@pendragon.ideasonboard.com>","References":"<20250908185230.25287-1-laurent.pinchart@ideasonboard.com>\n\t<d6032adb-7628-45dc-9d2e-57d160cc8aaa@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<d6032adb-7628-45dc-9d2e-57d160cc8aaa@ideasonboard.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]