summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Severance2018-11-14 21:47:50 -0500
committerChris Severance2018-11-14 21:47:50 -0500
commit2acbef48a7fc1394330b7e83b4760afb7e1774a3 (patch)
tree81167558df304596e41b9a6bf8090b22092b6246
parentd344b6dc0bf1d821482ea95a5f513588646c1211 (diff)
downloadaur-2acbef48a7fc1394330b7e83b4760afb7e1774a3.tar.gz
autu: Update to 1.9.39-1
-rw-r--r--.SRCINFO16
-rw-r--r--0000-Kernel-4-13-CLASS_ATTR_STRING.patch62
-rw-r--r--0001-Kernel-4-15-timers.patch145
-rw-r--r--PKGBUILD69
4 files changed, 40 insertions, 252 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 88650c2fd784..0751f18dd730 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,22 +1,22 @@
# Generated by mksrcinfo v8
-# Tue Jun 19 01:40:49 UTC 2018
+# Thu Nov 15 02:47:50 UTC 2018
pkgbase = dgrp
pkgdesc = tty driver for Digi RealPort ConnectPort EtherLite Flex One CM PortServer TS IBM RAN serial console terminal servers
- pkgver = 1.9.38
- pkgrel = 5
+ pkgver = 1.9.39
+ pkgrel = 1
url = https://www.digi.com/
install = dgrp-install.sh
arch = i686
arch = x86_64
license = GPL
license = custom
- depends = openssl-1.0
depends = grep
depends = awk
depends = systemd
depends = procps-ng
depends = psmisc
depends = perl
+ depends = openssl-1.0
depends = linux
depends = dkms
depends = linux-headers
@@ -27,7 +27,7 @@ pkgbase = dgrp
options = !docs
options = !emptydirs
backup = etc/dgrp.backing.store
- source = dgrp-1.9.38-81000137_Y.tgz::http://ftp1.digi.com/support/driver/81000137_Y.tgz
+ source = dgrp-1.9.39-40002086_Z.tgz::http://ftp1.digi.com/support/driver/40002086_Z.tgz
source = drpadmin
source = drpadmin.1
source = addp_perl-1.0.tgz::https://github.com/severach/addp/archive/f92a6fd2050c9f32a5a11cac18cd9def78138530.tar.gz
@@ -57,9 +57,7 @@ pkgbase = dgrp
source = http://ftp1.digi.com/support/utilities/40002709_C.mib
source = http://ftp1.digi.com/support/utilities/rfc1316.mib
source = http://ftp1.digi.com/support/utilities/rfc1317.mib
- source = 0000-Kernel-4-13-CLASS_ATTR_STRING.patch
- source = 0001-Kernel-4-15-timers.patch
- sha256sums = e474518da5b3feddd1f4dd0083ac8125e34ba07da9884cbd3ebd1955006891d7
+ sha256sums = 0db5204cc7d7806fde39b5ea7b6a465b4310739c380d7330131956e63af0f137
sha256sums = 42898b9d24262de27e9b1f3067d51d01373810b7c9e4991403a7f0a5dd7a26cf
sha256sums = 66f8b106a052b4807513ace92978e5e6347cef08eee39e4b4ae31c60284cc0a3
sha256sums = 9d79df8617e2bb1042a4b7d34311e73dc4afcdfe4dfa66703455ff54512427f5
@@ -89,8 +87,6 @@ pkgbase = dgrp
sha256sums = c471cafa43503a40d43b42acd8bc6ef49db29e55a74e0494c85f729ea45fe243
sha256sums = 5cac7ce2e6f043127f314b93694af021ae7820ffb5bf3de343da7a240d05e9c8
sha256sums = 8654496d83c083e457e8bb9bae2b1e71804d156a38c284d89872d0125eba947d
- sha256sums = 61500188b388fd1eb52ec970150cf098d855b8ba09a8efb8192803eebefaba03
- sha256sums = 46a87449cd316a621271def4147ba781424dd524ae2332cd55dd07f2ac9ab456
pkgname = dgrp
diff --git a/0000-Kernel-4-13-CLASS_ATTR_STRING.patch b/0000-Kernel-4-13-CLASS_ATTR_STRING.patch
deleted file mode 100644
index 72db944aa13f..000000000000
--- a/0000-Kernel-4-13-CLASS_ATTR_STRING.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-diff -pNaru5 dgrp-1.9.orig/driver/2.6.27/dgrp_sysfs.c dgrp-1.9/driver/2.6.27/dgrp_sysfs.c
---- dgrp-1.9.orig/driver/2.6.27/dgrp_sysfs.c 2017-07-11 13:01:13.000000000 -0400
-+++ dgrp-1.9/driver/2.6.27/dgrp_sysfs.c 2018-04-13 21:02:27.542053022 -0400
-@@ -57,21 +57,24 @@
-
- static struct class *dgrp_class;
- struct device *dgrp_class_nodes_dev;
- struct device *dgrp_class_global_settings_dev;
-
--
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,13,0)
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)
- static ssize_t dgrp_class_version_show(struct class *class, struct class_attribute *attr, char *buf)
- #else
- static ssize_t dgrp_class_version_show(struct class *class, char *buf)
- #endif
- {
- return snprintf(buf, PAGE_SIZE, "%s\n", DIGI_VERSION);
- }
- static CLASS_ATTR(driver_version, 0400, dgrp_class_version_show, NULL);
--
-+#else
-+// CLASS_ATTR_STRING first appeared in 2.6.34
-+static CLASS_ATTR_STRING(driver_version, 0400, __stringify(PAGE_SIZE) DIGI_VERSION);
-+#endif
-
- static ssize_t dgrp_class_register_with_sysfs_show(struct device *c, struct device_attribute *attr, char *buf)
- {
- return snprintf(buf, PAGE_SIZE, "1\n");
- }
-@@ -186,11 +189,15 @@ void dgrp_create_class_sysfs_files(void)
- {
- int ret = 0;
- int max_majors = 1U << (32 - MINORBITS);
-
- dgrp_class = class_create(THIS_MODULE, "digi_realport");
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,13,0)
- ret = class_create_file(dgrp_class, &class_attr_driver_version);
-+#else
-+ ret = class_create_file(dgrp_class, &class_attr_driver_version.attr);
-+#endif
-
- dgrp_class_global_settings_dev = device_create(dgrp_class, NULL,
- MKDEV(0, max_majors + 1), NULL, "driver_settings");
-
- ret = sysfs_create_group(&dgrp_class_global_settings_dev->kobj,
-@@ -218,11 +225,15 @@ void dgrp_remove_class_sysfs_files(void)
- }
-
- sysfs_remove_group(&dgrp_class_global_settings_dev->kobj,
- &dgrp_global_settings_attribute_group);
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,13,0)
- class_remove_file(dgrp_class, &class_attr_driver_version);
-+#else
-+ class_remove_file(dgrp_class, &class_attr_driver_version.attr);
-+#endif
-
- device_destroy(dgrp_class, MKDEV(0, max_majors + 1));
- device_destroy(dgrp_class, MKDEV(0, max_majors + 2));
- class_destroy(dgrp_class);
- }
diff --git a/0001-Kernel-4-15-timers.patch b/0001-Kernel-4-15-timers.patch
deleted file mode 100644
index c1227b2ecce7..000000000000
--- a/0001-Kernel-4-15-timers.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-diff -pNaru5 dgrp-1.9.orig/driver/2.6.27/dgrp_net_ops.c dgrp-1.9/driver/2.6.27/dgrp_net_ops.c
---- dgrp-1.9.orig/driver/2.6.27/dgrp_net_ops.c 2018-06-03 20:45:01.337174862 -0400
-+++ dgrp-1.9/driver/2.6.27/dgrp_net_ops.c 2018-06-03 20:45:01.417174550 -0400
-@@ -87,11 +87,15 @@ static long node_active_count; /* one
- * the poller
- */
- static long poll_round; /* Timer rouding factor */
- static ulong poll_time; /* Time of next poll */
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- static void poll_handler(ulong dummy);
-+#else
-+static void poll_handler(struct timer_list *dummy);
-+#endif
- static void poll_start_timer(ulong time);
- static struct timer_list poll_timer = { function: poll_handler };
-
-
- /*
-@@ -175,11 +179,15 @@ int register_net_device(struct nd_struct
- struct proc_dir_entry *de;
-
- if (!globals_initialized) {
- globals_initialized = 1;
- spin_lock_init(&GLBL(poll_lock));
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- init_timer(&poll_timer);
-+#else
-+ timer_setup(&poll_timer,poll_handler,0);
-+#endif
- }
-
- ID_TO_CHAR(node->nd_ID, buf);
-
- len = strlen(buf);
-@@ -4689,11 +4697,15 @@ static int test_perm(int mode, int op)
- * waiter needs to be woken up, and (b) whether the poller needs to
- * be rescheduled.
- *
- ******************************************************************************/
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- static void poll_handler(ulong dummy)
-+#else
-+static void poll_handler(struct timer_list *dummy)
-+#endif
- {
- struct nd_struct *nd;
- link_t *lk;
- ulong freq;
- ulong lock_flags;
-@@ -4933,13 +4945,17 @@ static void poll_handler(ulong dummy)
- return;
- }
-
- static void poll_start_timer(ulong time)
- {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- init_timer(&poll_timer);
- poll_timer.function = poll_handler;
- poll_timer.data = 0;
-+#else
-+ timer_setup(&poll_timer,poll_handler,0);
-+#endif
- poll_timer.expires = time;
- add_timer(&poll_timer);
- }
-
- /*
-diff -pNaru5 dgrp-1.9.orig/driver/2.6.27/dgrp_tty.c dgrp-1.9/driver/2.6.27/dgrp_tty.c
---- dgrp-1.9.orig/driver/2.6.27/dgrp_tty.c 2018-06-03 20:45:01.340508182 -0400
-+++ dgrp-1.9/driver/2.6.27/dgrp_tty.c 2018-06-03 20:46:37.953467319 -0400
-@@ -783,13 +783,25 @@ if (ttylock) tty_lock(ch->port.tty);
-
- /*
- * This function is just used as a callback for timeouts
- * waiting on the ch_sleep flag.
- */
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- static void wake_up_drp_sleep_timer(unsigned long ptr)
- {
- struct ch_struct *ch = (struct ch_struct *) ptr;
-+#else
-+struct ch_timer_list {
-+ struct timer_list tl;
-+ struct ch_struct *ch;
-+};
-+
-+static void wake_up_drp_sleep_timer(struct timer_list *ptr)
-+{
-+ struct ch_timer_list *chtl = (struct ch_timer_list *) ptr;
-+ struct ch_struct *ch = chtl->ch;
-+#endif
- if (ch)
- wake_up(&ch->ch_sleep);
- }
-
-
-@@ -797,11 +809,15 @@ static void wake_up_drp_sleep_timer(unsi
- * Set up our own sleep that can't be cancelled
- * until our timeout occurs.
- */
- static void drp_my_sleep(struct ch_struct *ch)
- {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- struct timer_list drp_wakeup_timer;
-+#else
-+ struct ch_timer_list drp_wakeup_timer_ch;
-+#endif
- DECLARE_WAITQUEUE(wait, current);
-
- /*
- * First make sure we're ready to receive the wakeup.
- */
-@@ -812,23 +828,29 @@ static void drp_my_sleep(struct ch_struc
- /*
- * Since we are uninterruptible, set a timer to
- * unset the uninterruptable state in 1 second.
- */
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,15,0)
- init_timer(&drp_wakeup_timer);
- drp_wakeup_timer.function = wake_up_drp_sleep_timer;
- drp_wakeup_timer.data = (unsigned long) ch;
-+#else
-+#define drp_wakeup_timer (drp_wakeup_timer_ch.tl)
-+ timer_setup(&drp_wakeup_timer,wake_up_drp_sleep_timer,0);
-+ drp_wakeup_timer_ch.ch=ch;
-+#endif
- drp_wakeup_timer.expires = jiffies + (1 * HZ);
- add_timer(&drp_wakeup_timer);
-
- schedule();
-
- del_timer(&drp_wakeup_timer);
-
- remove_wait_queue(&ch->ch_sleep, &wait);
- }
--
-+#undef drp_wakeup_timer
-
- /*****************************************************************************
- *
- * Function:
- *
diff --git a/PKGBUILD b/PKGBUILD
index 0261072cd47f..ca323ca83305 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -44,9 +44,6 @@
# The next section: ... Now onto the real install ...
-# Edit PKGBUILD.local after the first run
-if [ ! -s 'PKGBUILD.local' ]; then
- cat > 'PKGBUILD.local' << EOF
# Set the mode for all created devices.
_opt_defaultmode="0660" # default: 0600
_opt_defaultgroup="uucp" # default: root
@@ -59,9 +56,8 @@ _opt_defaultgroup="uucp" # default: root
_opt_RealPort='RealPort' # Can also be Realport
_opt_DKMS=1 # This can be toggled between installs
-EOF
-fi
-source 'PKGBUILD.local'
+
+_opt_SSL10=1
# Since the kernel module isn't loaded until you have a device
# configured, these services are automatically enabled and started
@@ -107,15 +103,19 @@ source 'PKGBUILD.local'
set -u
pkgname='dgrp'
#_pkgver='1.9-36'; _dl='81000137_X.tgz'
-_pkgver='1.9-38'; _dl='81000137_Y.tgz'
+#_pkgver='1.9-38'; _dl='81000137_Y.tgz'
+_pkgver='1.9-39'; _dl='40002086_Z.tgz'
pkgver="${_pkgver//-/.}"
-pkgrel='5'
+pkgrel='1'
pkgdesc="tty driver for Digi ${_opt_RealPort} ConnectPort EtherLite Flex One CM PortServer TS IBM RAN serial console terminal servers"
#_pkgdescshort="Digi ${_opt_RealPort} driver for Ethernet serial servers" # For when we used to generate the autorebuild from here
arch=('i686' 'x86_64')
url='https://www.digi.com/'
license=('GPL' 'custom') # OpenSSL=Apache. Arch is always new enough to not need their version.
-depends=('openssl-1.0' 'grep' 'awk' 'systemd' 'procps-ng' 'psmisc' 'perl')
+depends=('grep' 'awk' 'systemd' 'procps-ng' 'psmisc' 'perl')
+if [ "${_opt_SSL10}" -ne 0 ]; then
+ depends+=('openssl-1.0')
+fi
optdepends=(
{tk,gksu}': Digi RealPort Manager GUI'
'java-runtime: Digi Device Discovery Tool GUI'
@@ -124,7 +124,12 @@ optdepends=(
backup=('etc/dgrp.backing.store')
options=('!docs' '!emptydirs')
install="${pkgname}-install.sh"
-_verwatch=('https://www.digi.com/support/includes/drivers.aspx?pid=1954&osvid=218' '<li>.*RealPort Driver for Linux ver\. \([0-9\.]\+\), tgz version.*' 'f')
+_vercheck() {
+ local _versed2="${_verwatch[1]//:/\\:}" # Escape the two things that the PKGBUILD is not permitted to do
+ _versed2="${_versed2//$/\\$}" # End of line (though sed doesn't seem to require this), and end of search
+ curl -s -l "${_verwatch[0]}" | sed -ne "s:^${_versed2}"'$:\1:p' | sed -e 's:-:.:g' | sort -V
+}
+_verwatch=('https://www.digi.com/support/includes/drivers.aspx?pid=1954&osvid=218' '<li>.*Realport Driver for Linux ver\. \([^,]\+\), tgz version.*' 'f')
_mibs=(
'40002014_a.mib' # DIGI Connectware Manager Notifications
'40002194_H.mib' # Portserver TS MIB File
@@ -177,14 +182,14 @@ source=(
'addp_perl-1.0.tgz::https://github.com/severach/addp/archive/f92a6fd2050c9f32a5a11cac18cd9def78138530.tar.gz'
'ftp://ftp1.digi.com/support/utilities/AddpClient.zip'
"${_mibs[@]/#/${_mibsrc}}"
- '0000-Kernel-4-13-CLASS_ATTR_STRING.patch' # https://www.digi.com/support/forum/67157/realport-compile-error-with-fedora-27-kernel-4-14-14 https://www.digi.com/support/forum/65817/class_attr_driver_version-error-compiling-in-kernel-4-13
- '0001-Kernel-4-15-timers.patch' # https://forum.blackmagicdesign.com/viewtopic.php?uid=16&f=3&t=68382&start=0
+ #'0000-Kernel-4-13-CLASS_ATTR_STRING.patch' # https://www.digi.com/support/forum/67157/realport-compile-error-with-fedora-27-kernel-4-14-14 https://www.digi.com/support/forum/65817/class_attr_driver_version-error-compiling-in-kernel-4-13
+ #'0001-Kernel-4-15-timers.patch' # https://forum.blackmagicdesign.com/viewtopic.php?uid=16&f=3&t=68382&start=0
)
unset _mibsrc
#source_i686=('http://ftp1.digi.com/support/utilities/40002890_A.tgz')
#source_x86_64=('http://ftp1.digi.com/support/utilities/40002889_A.tgz') # compiled i686 therefore worthless
# addp and sddp are incomplete. I replaced them with addp.pl
-sha256sums=('e474518da5b3feddd1f4dd0083ac8125e34ba07da9884cbd3ebd1955006891d7'
+sha256sums=('0db5204cc7d7806fde39b5ea7b6a465b4310739c380d7330131956e63af0f137'
'42898b9d24262de27e9b1f3067d51d01373810b7c9e4991403a7f0a5dd7a26cf'
'66f8b106a052b4807513ace92978e5e6347cef08eee39e4b4ae31c60284cc0a3'
'9d79df8617e2bb1042a4b7d34311e73dc4afcdfe4dfa66703455ff54512427f5'
@@ -213,9 +218,7 @@ sha256sums=('e474518da5b3feddd1f4dd0083ac8125e34ba07da9884cbd3ebd1955006891d7'
'731e05fc551367faa6ad5dc317eedf305388ab12db196c0a1361a3d01bd35279'
'c471cafa43503a40d43b42acd8bc6ef49db29e55a74e0494c85f729ea45fe243'
'5cac7ce2e6f043127f314b93694af021ae7820ffb5bf3de343da7a240d05e9c8'
- '8654496d83c083e457e8bb9bae2b1e71804d156a38c284d89872d0125eba947d'
- '61500188b388fd1eb52ec970150cf098d855b8ba09a8efb8192803eebefaba03'
- '46a87449cd316a621271def4147ba781424dd524ae2332cd55dd07f2ac9ab456')
+ '8654496d83c083e457e8bb9bae2b1e71804d156a38c284d89872d0125eba947d')
if [ "${_opt_DKMS}" -ne 0 ]; then
depends+=('linux' 'dkms' 'linux-headers')
@@ -286,16 +289,6 @@ prepare() {
set -u
cd "${_srcdir}"
- #cp -pr "${srcdir}/${_srcdir}"{,.orig-0000}
- #diff -pNaru5 dgrp-1.9{.orig,} > '0000-Kernel-4-13-CLASS_ATTR_STRING.patch'
- patch -Nup1 -i "${srcdir}/0000-Kernel-4-13-CLASS_ATTR_STRING.patch"
- test ! -d "${srcdir}/${_srcdir}.orig-0000" || echo "${}"
-
- #cp -pr "${srcdir}/${_srcdir}"{,.orig-0001}
- #diff -pNaru5 dgrp-1.9{.orig-0001,} > '0001-Kernel-4-15-timers.patch'
- patch -Nup1 -i "${srcdir}/0001-Kernel-4-15-timers.patch"
- test ! -d "${srcdir}/${_srcdir}.orig-0001" || echo "${}"
-
# Version check
if [ "${_pkgver}" != "$(grep -e 'TRUE_VERSION=' ./Makefile.inc | cut -d'"' -f2)" ]; then
set +u
@@ -366,10 +359,12 @@ prepare() {
# Change insmod to modprobe
sed -e 's:\${INSMOD}.*$:modprobe "${DGRP_DRIVER}" # &:g' -i 'config/dgrp_cfg_node'
- # drpd makefile does not honor --with-ssl-dir. We convert the bogus folder to the one we need.
- sed -e 's:/usr/local/ssl/include:/usr/include/openssl-1.0:g' \
- -e 's:/usr/local/ssl/lib:/usr/lib/openssl-1.0:g' \
- -i 'daemon/Makefile.in'
+ if [ "${_opt_SSL10}" -ne 0 ]; then
+ # drpd makefile does not honor --with-ssl-dir. We convert the bogus folder to the one we need.
+ sed -e 's:/usr/local/ssl/include:/usr/include/openssl-1.0:g' \
+ -e 's:/usr/local/ssl/lib:/usr/lib/openssl-1.0:g' \
+ -i 'daemon/Makefile.in'
+ fi
# new folder in gcc 8
sed -e 's/^clean:$/&\n\trm -f .cache.mk/g' -i driver/*/Makefile*
@@ -385,11 +380,15 @@ prepare() {
_configure() {
if [ ! -s 'Makefile' ]; then
# this generates a harmless error as it tries to make a folder in /usr/lib/modules...
- # --with-ssl-dir supplies to -I but mainly for configure. CFLAGS goes everywhere.
- # --with-ssl-dir is supplied to -L too which is worthless. We amend with LDFLAGS.
- CFLAGS="${CFLAGS} -I/usr/include/openssl-1.0" \
- LDFLAGS="${LDFLAGS} -L/usr/lib/openssl-1.0" \
- ./configure -q --sbindir='/usr/bin' --prefix='/usr' --mandir='/usr/share/man' --with-ssl-dir='/usr/include/openssl-1.0'
+ if [ "${_opt_SSL10}" -ne 0 ]; then
+ # --with-ssl-dir supplies to -I but mainly for configure. CFLAGS goes everywhere.
+ # --with-ssl-dir is supplied to -L too which is worthless. We amend with LDFLAGS.
+ CFLAGS="${CFLAGS} -I/usr/include/openssl-1.0" \
+ LDFLAGS="${LDFLAGS} -L/usr/lib/openssl-1.0" \
+ ./configure -q --sbindir='/usr/bin' --prefix='/usr' --mandir='/usr/share/man' --with-ssl-dir='/usr/include/openssl-1.0'
+ else
+ ./configure -q --sbindir='/usr/bin' --prefix='/usr' --mandir='/usr/share/man'
+ fi
fi
}