Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 May 2020 04:22:51 +0000 (UTC)
From:      Alex Kozlov <ak@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r536043 - in head/emulators/ods2reader: . files
Message-ID:  <202005210422.04L4MpuG054967@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ak
Date: Thu May 21 04:22:51 2020
New Revision: 536043
URL: https://svnweb.freebsd.org/changeset/ports/536043

Log:
  - Fix build on big-endian platforms
  
  Reported by:	linimon

Modified:
  head/emulators/ods2reader/Makefile
  head/emulators/ods2reader/files/vmsvlr2unix.sh

Modified: head/emulators/ods2reader/Makefile
==============================================================================
--- head/emulators/ods2reader/Makefile	Thu May 21 04:17:31 2020	(r536042)
+++ head/emulators/ods2reader/Makefile	Thu May 21 04:22:51 2020	(r536043)
@@ -13,9 +13,6 @@ EXTRACT_SUFX=	.ZIP
 MAINTAINER=	ak@FreeBSD.org
 COMMENT=	Copies files from VMS Files-11 (ODS2) file systems
 
-BROKEN_FreeBSD_12_powerpc64=	fails to build: ods-2-reader.new.c:60:1: error: unterminated #ifdef
-BROKEN_FreeBSD_13_powerpc64=	fails to build: ods-2-reader.new.c:3:687: error: expected identifier or '('
-
 USES=		zip
 NO_WRKSUBDIR=	yes
 PLIST_FILES=	bin/ods2reader

Modified: head/emulators/ods2reader/files/vmsvlr2unix.sh
==============================================================================
--- head/emulators/ods2reader/files/vmsvlr2unix.sh	Thu May 21 04:17:31 2020	(r536042)
+++ head/emulators/ods2reader/files/vmsvlr2unix.sh	Thu May 21 04:22:51 2020	(r536043)
@@ -17,13 +17,16 @@ fi
 
 while true; do
 	off=$((${off} + ${strlen}))
-	strlen=$(hexdump -s ${off} -n 2 -e '"%u"' ${file})
+	# read in 1-byte units
+	set -- $(od -An -tu1 -j${off} -N2 ${file})
 	# EoF
-	[ -z ${strlen} ] && break
+	[ -z "${1}" -o -z "${2}" ] && break
+	# assume little-endian, it's OpenVMS format
+	strlen=$(($2 * 256 + $1))
 	# print newline for zero-size records, as info-zip does
 	[ ${strlen} -eq 0 ] && echo
 	off=$((${off} + 2))
-	hexdump -s ${off} -n ${strlen} -e '1000/1 "%c""\n"' ${file}
+	hexdump -s ${off} -n ${strlen} -e '"'%.${strlen}s'"''"\n"' ${file}
 	# align 2
 	[ $((${strlen} % 2)) -ne 0 ] && off=$((${off} + 1))
 done



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202005210422.04L4MpuG054967>