From 402f78f998fece2197214236a1cee732bf0682ff Mon Sep 17 00:00:00 2001 From: chunhui ouyang Date: Wed, 8 Jun 2022 22:19:35 +0800 Subject: [PATCH] dev-libs/libmodbus: Merge libmodbus required by linuxcnc, ebuild modified from linuxcnc community sci-misc/linuxcnc: Merge libcnc required by linuxcnc, ebuild modified from linuxcnc community Signed-off-by: chunhui ouyang --- dev-libs/libmodbus/Manifest | 1 + dev-libs/libmodbus/libmodbus-3.0.6.ebuild | 25 +++++ dev-libs/libmodbus/metadata.xml | 8 ++ sci-misc/linuxcnc/linuxcnc-9999.ebuild | 128 ++++++++++++++++++++++ sci-misc/linuxcnc/metadata.xml | 14 +++ 5 files changed, 176 insertions(+) create mode 100644 dev-libs/libmodbus/Manifest create mode 100644 dev-libs/libmodbus/libmodbus-3.0.6.ebuild create mode 100644 dev-libs/libmodbus/metadata.xml create mode 100644 sci-misc/linuxcnc/linuxcnc-9999.ebuild create mode 100644 sci-misc/linuxcnc/metadata.xml diff --git a/dev-libs/libmodbus/Manifest b/dev-libs/libmodbus/Manifest new file mode 100644 index 0000000000..f062bb47bb --- /dev/null +++ b/dev-libs/libmodbus/Manifest @@ -0,0 +1 @@ +DIST libmodbus-3.0.6.tar.gz 504757 SHA256 046d63f10f755e2160dc56ef681e5f5ad3862a57c1955fd82e0ce036b69471b6 SHA512 47a271b3677822701bac924f3e3245e3db72dbadfe1d860ae5d8171b32d2dbb1c761a351d055eafc661a15bc13cb60b793b2b0f9654bbafcf01b457d51991dca WHIRLPOOL f586f4e98083d9eccda7bc49dfda2ff24b167e50fb7cbf9a515066cef179b8a43190daecbf2de0871d09d443ff5d1ec871a77590b8d6f0d992354912a80d5215 diff --git a/dev-libs/libmodbus/libmodbus-3.0.6.ebuild b/dev-libs/libmodbus/libmodbus-3.0.6.ebuild new file mode 100644 index 0000000000..52a8c9267f --- /dev/null +++ b/dev-libs/libmodbus/libmodbus-3.0.6.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# Thanks to the original author for the code, xmw@gentoo.org for the code + +EAPI=8 + +DESCRIPTION="Modbus library which supports RTU communication over a serial line or a TCP link" +HOMEPAGE="http://libmodbus.org/" +SRC_URI="http://libmodbus.org/releases/${P}.tar.gz" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="static-libs" + +src_configure() { + econf \ + --disable-silent-rules \ + $(use_enable static-libs static) +} + +src_install() { + emake install DESTDIR="${D}" + use static-libs || rm "${D}"/usr/*/libmodbus.la +} diff --git a/dev-libs/libmodbus/metadata.xml b/dev-libs/libmodbus/metadata.xml new file mode 100644 index 0000000000..f5359f51cf --- /dev/null +++ b/dev-libs/libmodbus/metadata.xml @@ -0,0 +1,8 @@ + + + + +jack9603301@163.com +Michael Weber + + diff --git a/sci-misc/linuxcnc/linuxcnc-9999.ebuild b/sci-misc/linuxcnc/linuxcnc-9999.ebuild new file mode 100644 index 0000000000..00d229f692 --- /dev/null +++ b/sci-misc/linuxcnc/linuxcnc-9999.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ +# Thanks to the original author's code, slis@gentoo.org's code, because the original code is outdated, this ebuild has been modified portably + +EAPI="7" + +PYTHON_COMPAT=( python3_10 ) + +inherit autotools eutils flag-o-matic multilib python-single-r1 git-r3 + +DESCRIPTION="LinuxCNC " +HOMEPAGE="http://linuxcnc.org/" +#SRC_URI="mirror://sourceforge/gentoocnc/distfiles/${P}.tar.gz" +#SRC_URI="https://github.com/LinuxCNC/linuxcnc/archive/2.7.zip" +EGIT_REPO_URI="https://github.com/LinuxCNC/linuxcnc.git https://gitclone.com/github.com/LinuxCNC/linuxcnc.git" + +S="${WORKDIR}"/linuxcnc-9999/src + +LICENSE="LGPL-3" +SLOT="linuxcnc-9999" +KEYWORDS="~amd64 ~x86" +IUSE="+python +uspace +X +gtk -rt gstreamer modbus simulator usb" +# TODO: add shmdrv use flag + +# --disable-python uses python anyways and fails so python is a required use flag +REQUIRED_USE=" + python + python? ( ${PYTHON_REQUIRED_USE} ) + rt? ( !simulator ) + " + +DEPEND="dev-lang/tcl + dev-lang/tk + dev-tcltk/tkimg + dev-tcltk/tclx + dev-libs/boost[python] + modbus? ( "${envd}" <<-EOF + LDPATH="${EPREFIX}/usr/$(get_libdir)/linuxcnc" + EOF + doenvd "${envd}" + + insinto "/usr/share/linuxcnc/" + doins Makefile.inc + + insinto "/etc/linuxcnc/" + doins "../scripts/rtapi.conf" + + insinto "/usr/bin/" + doins "../scripts/rip-environment" + + doicon "../linuxcncicon.png" + make_desktop_entry linuxcnc LinuxCNC linuxcnc 'Science;Robotics' +} + +pkg_postinst() { + elog "The compiled software may not be redistributed due to use of packages with incompatible licenses." + elog "Opening machine configuration files from older Versions can crash the application as it cannot load old named modules, e.g. probe_parport.so not found" + elog "This is not a Gentoo- or build related error. It looks like linuxcnc 2.8 will have some kind of converter for them." + elog "If you created them with stepconf. You can just open the stepconf file and create them new. Don't forget to backup any manual changes (e.g. backlash!) from the .hal and .ini files and make them again." +} diff --git a/sci-misc/linuxcnc/metadata.xml b/sci-misc/linuxcnc/metadata.xml new file mode 100644 index 0000000000..49ea295fe0 --- /dev/null +++ b/sci-misc/linuxcnc/metadata.xml @@ -0,0 +1,14 @@ + + + + + jack9603301@163.com + + + Build with RT_PREEMPT threads modules + Build with posix threads (no realtime) + Build modbus libraries + Build with xenomai userland threads + Build with realtime threads support + +