Re: git: ae019109714d - main - devel/argtable3: New port: ANSI C library that parses GNU-style command-line options

From: Daniel Engberg <daniel.engberg.lists_at_pyret.net>
Date: Sun, 18 Feb 2024 20:47:59 UTC
On 2024-02-18T20:27:51.000+01:00, Jose Alonso Cardenas Marquez
<acm@FreeBSD.org> wrote:

> The branch main has been updated by acm:
> 
> URL: https://cgit.FreeBSD.org/ports/commit/?id=ae019109714da1f499ea9c73be29c74dab44377f
> 
> commit ae019109714da1f499ea9c73be29c74dab44377f
> 
> Author:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
> 
> AuthorDate: 2024-02-18 19:26:43 +0000
> 
> Commit:     Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
> 
> CommitDate: 2024-02-18 19:26:43 +0000
> 
>     devel/argtable3: New port: ANSI C library that parses GNU-style command-line options
> 
>     
> 
>     Argtable3 is an open source ANSI C library that parses GNU-style command-line
> 
>     options with the getopt library. It simplifies command-line parsing by defining
> 
>     a declarative-style API that you can use to specify what your command-line
> 
>     syntax looks like. Argtable3 will automatically generate consistent error
> 
>     handling logic and textual descriptions of the command line syntax, which are
> 
>     essential but tedious to implement for a robust CLI program.
> 
> ---
> 
>  devel/Makefile            |  1 +
> 
>  devel/argtable3/Makefile  | 24 ++++++++++++++++++++++++
> 
>  devel/argtable3/distinfo  |  3 +++
> 
>  devel/argtable3/pkg-descr |  6 ++++++
> 
>  devel/argtable3/pkg-plist |  5 +++++
> 
>  5 files changed, 39 insertions(+)
> 
> diff --git a/devel/Makefile b/devel/Makefile
> 
> index 00b47b2f905c..ad7af082168d 100644
> 
> --- a/devel/Makefile
> 
> +++ b/devel/Makefile
> 
> @@ -210,6 +210,7 @@
> 
>      SUBDIR += argparse
> 
>      SUBDIR += args
> 
>      SUBDIR += argtable
> 
> +    SUBDIR += argtable3
> 
>      SUBDIR += arm-elf-binutils
> 
>      SUBDIR += arm-none-eabi-gcc
> 
>      SUBDIR += arm-none-eabi-newlib
> 
> diff --git a/devel/argtable3/Makefile b/devel/argtable3/Makefile
> 
> new file mode 100644
> 
> index 000000000000..40c226aefab2
> 
> --- /dev/null
> 
> +++ b/devel/argtable3/Makefile
> 
> @@ -0,0 +1,24 @@
> 
> +PORTNAME=    argtable3
> 
> +DISTVERSION=    3.2.2
> 
> +CATEGORIES=    devel
> 
> +
> 
> +MAINTAINER=    acm@FreeBSD.org
> 
> +COMMENT=    ANSI C library that parses GNU-style command-line options
> 
> +WWW=        https://www.argtable.org
> 
> +
> 
> +LICENSE=    BSD3CLAUSE
> 
> +LICENSE_FILE=    ${WRKSRC}/LICENSE
> 
> +
> 
> +BUILD_DEPENDS=    bash>0:shells/bash
> 
> +
> 
> +USES=        cmake compiler:c++11-lang shebangfix
> 
> +USE_GITHUB=    yes
> 
> +GH_ACCOUNT=    argtable
> 
> +GH_TAGNAME=    f319bb66252c6d32a0657c774534ba409567aa62
> 
> +
> 
> +SHEBANG_FILES=    ${WRKSRC}/tools/build
> 
> +
> 
> +post-patch:
> 
> +    ${REINPLACE_CMD} '66d' ${WRKSRC}/tools/build
> 
> +
> 
> +.include <bsd.port.mk> [http://bsd.port.mk>];
> 
> diff --git a/devel/argtable3/distinfo b/devel/argtable3/distinfo
> 
> new file mode 100644
> 
> index 000000000000..fdee15f017e7
> 
> --- /dev/null
> 
> +++ b/devel/argtable3/distinfo
> 
> @@ -0,0 +1,3 @@
> 
> +TIMESTAMP = 1708211192
> 
> +SHA256 (argtable-argtable3-3.2.2-f319bb66252c6d32a0657c774534ba409567aa62_GH0.tar.gz) = caa17d2e992a4ba0e5ea8fb3a4c5cf4e4192d040e572ae583547c6886a4f12d1
> 
> +SIZE (argtable-argtable3-3.2.2-f319bb66252c6d32a0657c774534ba409567aa62_GH0.tar.gz) = 510632
> 
> diff --git a/devel/argtable3/pkg-descr b/devel/argtable3/pkg-descr
> 
> new file mode 100644
> 
> index 000000000000..c6e96b60e1a3
> 
> --- /dev/null
> 
> +++ b/devel/argtable3/pkg-descr
> 
> @@ -0,0 +1,6 @@
> 
> +Argtable3 is an open source ANSI C library that parses GNU-style command-line
> 
> +options with the getopt library. It simplifies command-line parsing by defining
> 
> +a declarative-style API that you can use to specify what your command-line
> 
> +syntax looks like. Argtable3 will automatically generate consistent error
> 
> +handling logic and textual descriptions of the command line syntax, which are
> 
> +essential but tedious to implement for a robust CLI program.
> 
> diff --git a/devel/argtable3/pkg-plist b/devel/argtable3/pkg-plist
> 
> new file mode 100644
> 
> index 000000000000..5acc3b510f53
> 
> --- /dev/null
> 
> +++ b/devel/argtable3/pkg-plist
> 
> @@ -0,0 +1,5 @@
> 
> +include/argtable3.h
> 
> +lib/cmake/argtable3/Argtable3Config-release.cmake
> 
> +lib/cmake/argtable3/Argtable3Config.cmake
> 
> +lib/cmake/argtable3/Argtable3ConfigVersion.cmake
> 
> +lib/libargtable3_static.a

Hi,

Same here, be more careful...

Why are we building tests and examples?

Why is bash a dependency?

You most likely wanted a shared library?

Why reason why GH_TAGNAME isn't the release tag?

You likely want something along the lines of the following:

CMAKE_ON=       BUILD_SHARED_LIBS

CMAKE_OFF=      ARGTABLE3_ENABLE_TESTS \

                ARGTABLE3_ENABLE_EXAMPLES

Best regards,

Daniel