Re: git: 857e6ea25c90 - main - devel/libiec61850: New port: open-source library for the IEC 61850 protocols
Date: Sun, 18 Feb 2024 20:31:01 UTC
On 2024-02-18T20:29:42.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=857e6ea25c9022f36be11745ee32a6ca3dfac549
>
> commit 857e6ea25c9022f36be11745ee32a6ca3dfac549
>
> Author: Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
>
> AuthorDate: 2024-02-18 19:28:57 +0000
>
> Commit: Jose Alonso Cardenas Marquez <acm@FreeBSD.org>
>
> CommitDate: 2024-02-18 19:28:57 +0000
>
> devel/libiec61850: New port: open-source library for the IEC 61850 protocols
>
>
>
> libiec61850 is an open-source (GPLv3) implementation of an IEC 61850 client and
>
> server library implementing the protocols MMS, GOOSE and SV. It is implemented
>
> in C (according to the C99 standard) to provide maximum portability. It can be
>
> used to implement IEC 61850 compliant client and server applications on
>
> embedded systems and PCs running FreeBSD, Linux, Windows, and MacOS. Included
>
> is a set of simple example applications that can be used as a starting point to
>
> implement own IEC 61850 compliant devices or to communicate with IEC 61850
>
> devices. The library has been successfully used in many commercial software
>
> products and devices.
>
> ---
>
> devel/Makefile | 1 +
>
> devel/libiec61850/Makefile | 20 ++++++++++++++++++++
>
> devel/libiec61850/distinfo | 3 +++
>
> devel/libiec61850/pkg-descr | 9 +++++++++
>
> devel/libiec61850/pkg-plist | 35 +++++++++++++++++++++++++++++++++++
>
> 5 files changed, 68 insertions(+)
>
> diff --git a/devel/Makefile b/devel/Makefile
>
> index ad7af082168d..ad7ed6b60dd3 100644
>
> --- a/devel/Makefile
>
> +++ b/devel/Makefile
>
> @@ -1295,6 +1295,7 @@
>
> SUBDIR += libhtp
>
> SUBDIR += libibuddy
>
> SUBDIR += libical
>
> + SUBDIR += libiec61850
>
> SUBDIR += libindicator
>
> SUBDIR += libinjection
>
> SUBDIR += libinotify
>
> diff --git a/devel/libiec61850/Makefile b/devel/libiec61850/Makefile
>
> new file mode 100644
>
> index 000000000000..445dbbb2cd71
>
> --- /dev/null
>
> +++ b/devel/libiec61850/Makefile
>
> @@ -0,0 +1,20 @@
>
> +PORTNAME= libiec61850
>
> +DISTVERSIONPREFIX= v
>
> +DISTVERSION= 1.5.3
>
> +CATEGORIES= devel
>
> +
>
> +MAINTAINER= acm@FreeBSD.org
>
> +COMMENT= open-source library for the IEC 61850 protocols
>
> +WWW= http://libiec61850.com/libiec61850
>
> +
>
> +LICENSE= GPLv3
>
> +LICENSE_FILE= ${WRKSRC}/COPYING
>
> +
>
> +USES= cmake compiler:c++11-lang
>
> +USE_GITHUB= yes
>
> +GH_ACCOUNT= mz-automation
>
> +GH_PROJECT= libiec61850
>
> +
>
> +LDFLAGS= -lm
>
> +
>
> +.include <bsd.port.mk> [http://bsd.port.mk>];
>
> diff --git a/devel/libiec61850/distinfo b/devel/libiec61850/distinfo
>
> new file mode 100644
>
> index 000000000000..1122b9ef4fcd
>
> --- /dev/null
>
> +++ b/devel/libiec61850/distinfo
>
> @@ -0,0 +1,3 @@
>
> +TIMESTAMP = 1708210457
>
> +SHA256 (mz-automation-libiec61850-v1.5.3_GH0.tar.gz) = a0f396a5e2249398f2432bb9698e3aecdb9de11b28e5af68f7fb8b14bc3b2f44
>
> +SIZE (mz-automation-libiec61850-v1.5.3_GH0.tar.gz) = 1402548
>
> diff --git a/devel/libiec61850/pkg-descr b/devel/libiec61850/pkg-descr
>
> new file mode 100644
>
> index 000000000000..3b333f544c54
>
> --- /dev/null
>
> +++ b/devel/libiec61850/pkg-descr
>
> @@ -0,0 +1,9 @@
>
> +libiec61850 is an open-source (GPLv3) implementation of an IEC 61850 client and
>
> +server library implementing the protocols MMS, GOOSE and SV. It is implemented
>
> +in C (according to the C99 standard) to provide maximum portability. It can be
>
> +used to implement IEC 61850 compliant client and server applications on
>
> +embedded systems and PCs running FreeBSD, Linux, Windows, and MacOS. Included
>
> +is a set of simple example applications that can be used as a starting point to
>
> +implement own IEC 61850 compliant devices or to communicate with IEC 61850
>
> +devices. The library has been successfully used in many commercial software
>
> +products and devices.
>
> diff --git a/devel/libiec61850/pkg-plist b/devel/libiec61850/pkg-plist
>
> new file mode 100644
>
> index 000000000000..b47853360231
>
> --- /dev/null
>
> +++ b/devel/libiec61850/pkg-plist
>
> @@ -0,0 +1,35 @@
>
> +include/libiec61850/goose_publisher.h
>
> +include/libiec61850/goose_receiver.h
>
> +include/libiec61850/goose_subscriber.h
>
> +include/libiec61850/hal_base.h
>
> +include/libiec61850/hal_ethernet.h
>
> +include/libiec61850/hal_filesystem.h
>
> +include/libiec61850/hal_socket.h
>
> +include/libiec61850/hal_thread.h
>
> +include/libiec61850/hal_time.h
>
> +include/libiec61850/iec61850_cdc.h
>
> +include/libiec61850/iec61850_client.h
>
> +include/libiec61850/iec61850_common.h
>
> +include/libiec61850/iec61850_config_file_parser.h
>
> +include/libiec61850/iec61850_dynamic_model.h
>
> +include/libiec61850/iec61850_model.h
>
> +include/libiec61850/iec61850_server.h
>
> +include/libiec61850/iso_connection_parameters.h
>
> +include/libiec61850/libiec61850_common_api.h
>
> +include/libiec61850/linked_list.h
>
> +include/libiec61850/logging_api.h
>
> +include/libiec61850/mms_client_connection.h
>
> +include/libiec61850/mms_common.h
>
> +include/libiec61850/mms_server.h
>
> +include/libiec61850/mms_type_spec.h
>
> +include/libiec61850/mms_types.h
>
> +include/libiec61850/mms_value.h
>
> +include/libiec61850/sv_publisher.h
>
> +include/libiec61850/sv_subscriber.h
>
> +include/libiec61850/tls_config.h
>
> +lib/libhal-shared.a
>
> +lib/libhal.a
>
> +lib/libiec61850.a
>
> +lib/libiec61850.so [http://libiec61850.so]
>
> +lib/libiec61850.so.1.5.3 [http://libiec61850.so.1.5.3]
>
> +share/pkgconfig/libiec61850.pc
Hi,
Please do a more careful review
* GH_PROJECT and LDFLAGS are unnecessary
* Why are we wasting time building examples?
* Port also looking for doxygen which should handled
* .pc file is installed in wrong location
lib/libhal-shared.a looks suspcious
You want something at least like the follow regarding CMAKE options
CMAKE_OFF= BUILD_EXAMPLES
CMAKE_ON= CMAKE_DISABLE_FIND_PACKAGE_Doxygen
Best regards,
Daniel