3 months agosigrok-fwextract-kingst-la2016: concentrate RCC flags in one spot master
Gerhard Sittig [Sun, 29 Jan 2023 07:38:04 +0000 (08:38 +0100)]
sigrok-fwextract-kingst-la2016: concentrate RCC flags in one spot

Move the symbolic identifiers for RCC flag bits to one common location
in the Qt resource handling support code. Previous versions kept them
local to individual methods which referenced them.

3 months agosigrok-fwextract-kingst-la2016: handle compressed Qt resources
Dave Platt [Sun, 29 Jan 2023 04:38:39 +0000 (20:38 -0800)]
sigrok-fwextract-kingst-la2016: handle compressed Qt resources

Qt resources in executable images support optional compression. Recent
vendor software uses this feature. Uncompress firmware images during
extraction of their blobs.

This handles the Qt resource compression part of bug #1825.

5 months agonew-driver: split assignment and conditional
fenugrec [Wed, 30 Nov 2022 20:58:01 +0000 (15:58 -0500)]
new-driver: split assignment and conditional

Arguably, code is slightly easier to analyze this way, with less risk of
mistaking a typo for "==" and an assignment.

6 months agocross-compile/mingw: comment on sigrok specific "MXE fixes" patch
Gerhard Sittig [Wed, 23 Nov 2022 15:15:37 +0000 (16:15 +0100)]
cross-compile/mingw: comment on sigrok specific "MXE fixes" patch

No change in behaviour, just comments and grouping and whitespace fixup.
Separate the binutils downgrade from the glib downgrade. Provide empty
lines for faster editor navigation. Provide comments for human readers.
Keep MXE's style of indentation when disabling warnings.

This patch no longer applies to recent MXE versions, but might as well
have become obsolete. A build without these "MXE fixes" patches is
attempted, the result is yet to get determined. Needs more consideration.

6 months agocross-compile/mingw: update sigrok specific libusb patch
Gerhard Sittig [Wed, 23 Nov 2022 15:12:47 +0000 (16:12 +0100)]
cross-compile/mingw: update sigrok specific libusb patch

Catch up with recent mainline MXE as of 2022-11-23. Unbreak the
autoreconf(1) invocation before the configure call. Don't force
a specific libusb version any longer (MXE ships 1.0.26 by now).

7 months agosigrok-cross-mingw: pass PREFIX to sigrok-dumps install command
Gerhard Sittig [Sun, 2 Oct 2022 12:38:58 +0000 (14:38 +0200)]
sigrok-cross-mingw: pass PREFIX to sigrok-dumps install command

Catch up with recent sigrok-dumps Makefile adjustment. The DESTDIR
variable traditionally serves a different purpose. Prefer PREFIX to
specify the in-filesystem base path where share/... is located.

8 months agocross-compile/macosx: Set DYLD_LIBRARY_PATH
Brian 'Redbeard' Harrington [Sat, 10 Sep 2022 21:44:07 +0000 (14:44 -0700)]
cross-compile/macosx: Set DYLD_LIBRARY_PATH

After a prior change to the dynamic library path location users have
reported issues of nightly builds crashing on MacOS:

 - #1633
 - #1627
 - #1651
 - #1744

This change, mentioned by Andrea Leofreddi in #1633, hints PulseView and
sigrok-cli as to the correct location of dynamic libraries through the
addition of an environment variable to the startup script.

14 months agocross-compile/macosx: install IRMP dylib in library directory (DMG creation)
Gerhard Sittig [Tue, 8 Mar 2022 17:59:31 +0000 (18:59 +0100)]
cross-compile/macosx: install IRMP dylib in library directory (DMG creation)

15 months agosigrok-cross-mingw: update comments in the MXE libusb patch set
Gerhard Sittig [Sat, 26 Feb 2022 19:00:03 +0000 (20:00 +0100)]
sigrok-cross-mingw: update comments in the MXE libusb patch set

The file content did switch to libusb1 version 1.0.25. The comments
haven't caught up yet. Update them to match reality.

15 months agosigrok-cross-mingw: upgrade libusb1 to version 1.0.25 for MXE builds
Gerhard Sittig [Sat, 26 Feb 2022 13:55:47 +0000 (14:55 +0100)]
sigrok-cross-mingw: upgrade libusb1 to version 1.0.25 for MXE builds

15 months agosigrok-cross-mingw: use libusb1 version 1.0.24 for MXE builds
Gerhard Sittig [Sat, 26 Feb 2022 12:53:08 +0000 (13:53 +0100)]
sigrok-cross-mingw: use libusb1 version 1.0.24 for MXE builds

Stick with libusb1 version 1.0.24 which is provided by current MXE (the
patch "changes" from 1.0.24 to 1.0.24, remains in place in case version
1.0.25 is needed or desired later). Don't force a modified 1.0.20-rc3
any longer.

Use a RAW_IO commit which is authored by jpa@ and which is discussed in
libusb PR 1069.

15 months agosigrok-cross-mingw: group and sort libusb1 patches for MXE
Gerhard Sittig [Sat, 26 Feb 2022 12:46:05 +0000 (13:46 +0100)]
sigrok-cross-mingw: group and sort libusb1 patches for MXE

Order the different types of patches which are applied to MXE's libusb.
Unbreak autotools use first, switch the library version then, enable
RAW_IO after that. Comment on these groups to help casual readers.

15 months agosigrok-cross-mingw: move libusb1 manipulation out of "MXE fixes"
Gerhard Sittig [Sat, 26 Feb 2022 10:48:40 +0000 (11:48 +0100)]
sigrok-cross-mingw: move libusb1 manipulation out of "MXE fixes"

Factor the libusb1 related tweaking out of the "MXE fixes" patch file.
It is assumed that binutils and glib issues are rather different from
the libusb manipulation. A separate libusb patch also simplifies its

Add comments discussing how the "event abstraction" branch reference
may have become obsolete when libusb1 1.0.24 was released. Which only
leaves RAW_IO as an essential motivation for a modified version (which
is also being submitted towards mainline libusb).

15 months agosigrok-cross-mingw: patch for boost numeric literals issue in MXE builds
Gerhard Sittig [Sat, 26 Feb 2022 10:27:44 +0000 (11:27 +0100)]
sigrok-cross-mingw: patch for boost numeric literals issue in MXE builds

Patch the pulseview cmake instructions within sigrok-util until the
pulseview.git repository builds out of the box. General applicability
of the compiler switch on all platforms is yet to get determined.

15 months agosigrok-cross-mingw: Update MXE patch to new libusb version.
Frank Stettner [Fri, 8 Jan 2021 22:25:38 +0000 (23:25 +0100)]
sigrok-cross-mingw: Update MXE patch to new libusb version.

15 months agosigrok-cross-linux: Add a couple of missing deps to README
John Beard [Fri, 25 Feb 2022 10:21:36 +0000 (10:21 +0000)]
sigrok-cross-linux: Add a couple of missing deps to README

15 months agosigrok-fwextract-kingst-la2016: rephrase resource file writer
Gerhard Sittig [Sat, 19 Feb 2022 12:34:25 +0000 (13:34 +0100)]
sigrok-fwextract-kingst-la2016: rephrase resource file writer

Rearrange the res_writer class of the KingstVis firmware extractor.

Separate the bytes/hexfile handling from file writing. Get the CRC
in that data handing part. Which leaves data processing to internal
helpers, while the calling public routine has all details available,
to provide a more helpful log message to users.

Separate the resource enumeration from the output file creation. Which
prettifies the output (sorted order), and allows future implementations
to easier filter the output if desired.

15 months agosigrok-fwextract-kingst-la2016: extract more blobs (all of them)
Gerhard Sittig [Sat, 19 Feb 2022 12:01:27 +0000 (13:01 +0100)]
sigrok-fwextract-kingst-la2016: extract more blobs (all of them)

The previous implementation exclusively extracted the 01a2 MCU firmware
and the LA1016 and LA2016 FPGA bitstreams. The sigrok device driver
already supports more devices, and may easily support even more similar
devices when their firmware becomes available. Simplify users' reports
for currently unsupported devices by just extracting all blobs from the
KingstVis executable. This eliminates the necessity to manipulate the
extractor script (including regexes), raising the application's diag
verbosity is sufficient. Users decide how many of the extracted blobs
they copy to the firmware directory, keeping unused files is non-fatal.

15 months agosigrok-fwextract-kingst-la2016: comment nits
Gerhard Sittig [Sat, 19 Feb 2022 11:48:53 +0000 (12:48 +0100)]
sigrok-fwextract-kingst-la2016: comment nits

Move the comment on the script's purpose and compatibility with vendor
firmware versions to the top of the file. Adress style nits in other
comments (start with capital, end in punctuation).

The ihex format conversion code most probably doesn't support "\r\n*"
(any number of trailing newlines), and neither needs to. Split on LF and
trim trailing whitespace is good enough (as the code already does). Make
the comment catch up with the implementation.

15 months agosigrok-fwextract-kingst-la2016: use argparse(3) for commandline options
Gerhard Sittig [Sat, 19 Feb 2022 11:43:36 +0000 (12:43 +0100)]
sigrok-fwextract-kingst-la2016: use argparse(3) for commandline options

Neither open code the access to the sys.argv[] detail nor indices of
positional arguments. Use the argparse(3) Python module instead, which
transparently handles presence checks and provides a help text.

15 months agosource/new-driver: support short command line option names (-u et al)
Gerhard Sittig [Sat, 9 Jan 2021 16:34:04 +0000 (17:34 +0100)]
source/new-driver: support short command line option names (-u et al)

15 months agofirmware: update SEE ALSO in firmware extraction utility manpages
Gerhard Sittig [Mon, 10 Jan 2022 19:21:32 +0000 (20:21 +0100)]
firmware: update SEE ALSO in firmware extraction utility manpages

Add SEE ALSO items which reference the kingst-la2016 utility to other
existing manpages. Alpha-sort items in the kingst-la2016 page.

15 months agofirmware/kingst-la: remove redundant manpage conversion output
Gerhard Sittig [Mon, 10 Jan 2022 19:10:29 +0000 (20:10 +0100)]
firmware/kingst-la: remove redundant manpage conversion output

The sigrok-fwextract-kingst-la2016(1) manpage source code is sufficient,
there is no benefit in keeping a groff rendered text incarnation of that
manpage as well. No other firmware/ utility has this either.

This undoes the redundant part of commit 625617b09c84 which should not
have gone here in the first place.

16 months agosigrok-cross-mingw: Fixup shell syntax error in progress message
Gerhard Sittig [Sun, 23 Jan 2022 07:46:46 +0000 (08:46 +0100)]
sigrok-cross-mingw: Fixup shell syntax error in progress message

Remove an excess double quote in the final progress message which was
introduced in commit 81a786537c1c7.

16 months agosigrok-cross-mingw: Temporarily skip Pulseview PDF manual for Windows CI builds.
Gerhard Sittig [Sat, 22 Jan 2022 15:56:10 +0000 (16:56 +0100)]
sigrok-cross-mingw: Temporarily skip Pulseview PDF manual for Windows CI builds.

Currently Windows CI jobs fail on build machines in the
Pulseview 'make manual-pdf' step. Intentionally break the lookup of the
external utility from the cross MinGW script, to skip the PDF creation.

This temporary evil hack needs to get reverted when the actual cause of
the failed build got addressed. The approach of the sigrok-util patch
keeps all other Pulseview builds unaffected.

16 months agosigrok-cross-mingw: Temporarily unbreak Windows CI builds in dirty ways.
Gerhard Sittig [Mon, 17 Jan 2022 18:44:24 +0000 (19:44 +0100)]
sigrok-cross-mingw: Temporarily unbreak Windows CI builds in dirty ways.

A typical use of the cross-compile scripts are CI builds, which currently
fail in the Python tarball download step. Disable certificate checks when build machines fetch data from the site. Keep the
Zadig download unaffected.

Another typical use is the convenient local compilation from source at
users' sites, which should be rare since nightlies are available, while
developers don't run the cross-compile scripts which are designed for
single shots instead of multiple iterations including local source code
modifications. Which should make this change acceptable for this use
case as well, and happens to unbreak it, too.

Add a TODO comment, ideally this commit soon gets reverted.

16 months agosigrok-cross-mingw: Optionally emit progress messages.
Gerhard Sittig [Fri, 14 Jan 2022 16:18:17 +0000 (17:18 +0100)]
sigrok-cross-mingw: Optionally emit progress messages.

The cross compile script executes a lot of steps, some of them rather
expensive and complex, before first output from child processes appears
on screen (libserialport clone being the first typical output). Prepare
to optionally emit progress messages for developers' awareness. Just set
the $ECHO environment variable to suppress these.

16 months agomacosx: create_dmg: also install the C language IRMP shared library
Gerhard Sittig [Mon, 3 Jan 2022 20:28:37 +0000 (21:28 +0100)]
macosx: create_dmg: also install the C language IRMP shared library

Have the install_name_tool also massage the build output and
thus have the shared library added to the resulting package. It was
missing before and the Python part of IR_IRMP failed to load.

Add a comment for developers' awareness, the application's executable
and the data files are handled in a different section of the script than
the shared libraries were. Drop trailing whitespace from a text line.

20 months agosigrok-fwextract-kingst-la2016: update documentation and add a generated README file
Kevin Grant [Mon, 5 Apr 2021 13:32:10 +0000 (14:32 +0100)]
sigrok-fwextract-kingst-la2016: update documentation and add a generated README file

20 months agosigrok-fwextract-kingst-la2016: fix fpga bitstream extraction, add device support
Kevin Grant [Mon, 5 Apr 2021 13:07:07 +0000 (14:07 +0100)]
sigrok-fwextract-kingst-la2016: fix fpga bitstream extraction, add device support

Firmware extraction is trivially broken, probably due to a change of stream name
in the vendor resource file. Fixed that issue and also extracted more files to
support different hardware variations; the two existing hardware revisions of
LA2016 & LA1016 each require different bitstreams. The crc32 of extracted
files is now shown to help track any vendor changes.

23 months agodoc: update IRC reference to Libera.Chat
Gerhard Sittig [Wed, 16 Jun 2021 18:53:04 +0000 (20:53 +0200)]
doc: update IRC reference to Libera.Chat

2 years agoFix build description in cross-compile/mingw/README
Helge Kruse [Tue, 20 Oct 2020 04:46:56 +0000 (06:46 +0200)]
Fix build description in cross-compile/mingw/README

2 years agosigrok-cross-mingw: Fix for installing 64bit programs into 'Program Files'
xorloser [Thu, 10 Sep 2020 05:30:23 +0000 (15:30 +1000)]
sigrok-cross-mingw: Fix for installing 64bit programs into 'Program Files'

This fixes bug #1082.

2 years agosigrok-cross-mingw: Update MXE patch to fix various issues.
Uwe Hermann [Mon, 28 Sep 2020 21:12:01 +0000 (23:12 +0200)]
sigrok-cross-mingw: Update MXE patch to fix various issues.

 - Update the URL of the custom libusb branch we use (for now), until
   we've switched to mainline libusb.

 - Integrate the libusb RAW_IO patch directly in MXE's libusb build,
   so that we don't have to build a custom libusb in sigrok-cross-mingw.

 - Bump MXE's binutils to version 2.35, which added -mbig-obj support
   for 32bit Windows (64bit was supported already). Required for PulseView.

2 years agosigrok-native-macosx: Copy all translations, not just DE.
Uwe Hermann [Thu, 16 Jul 2020 21:06:39 +0000 (23:06 +0200)]
sigrok-native-macosx: Copy all translations, not just DE.

Avoid a hardcoded list that we'd need to update manually, just copy
all Qt/system translation files.

2 years agosigrok-native-macosx: Fix a command-line handling issue.
Uwe Hermann [Thu, 16 Jul 2020 21:04:52 +0000 (23:04 +0200)]
sigrok-native-macosx: Fix a command-line handling issue.

Previously "./create_dmg" and "./create_dmg pulseview" would not
have the same behaviour.

2 years agosigrok-fwextract-kingst-la2016: do not zero pad fpga bitstream
Florian Schmidt [Sun, 7 Jun 2020 17:04:08 +0000 (19:04 +0200)]
sigrok-fwextract-kingst-la2016: do not zero pad fpga bitstream

zero padding to 180224 will be done by uploader(/libsigrok).
to get same behaviour as vendors software uploader will need to know this
exact file-size without zero padding.

[related to bug #1559]

2 years agosigrok-fwextract-kingst-la2016: Drop stray whitespace.
Uwe Hermann [Sat, 6 Jun 2020 16:45:53 +0000 (18:45 +0200)]
sigrok-fwextract-kingst-la2016: Drop stray whitespace.

2 years agosigrok-fwextract-kingst-la2016: pad fpga fw to expected 180224 bytes
Florian Schmidt [Sat, 11 Apr 2020 10:16:45 +0000 (12:16 +0200)]
sigrok-fwextract-kingst-la2016: pad fpga fw to expected 180224 bytes

2 years agosigrok-fwextract-kingst-la2016: fpga bitstream and uC fw from vendor
Florian Schmidt [Sat, 21 Mar 2020 10:20:01 +0000 (11:20 +0100)]
sigrok-fwextract-kingst-la2016: fpga bitstream and uC fw from vendor

2 years agosigrok-native-macosx: Add missing sigrok-cli.icns file.
Uwe Hermann [Sat, 30 May 2020 14:50:27 +0000 (16:50 +0200)]
sigrok-native-macosx: Add missing sigrok-cli.icns file.

2 years agosigrok-native-macosx: Add sigrok-cli DMG creation support.
Uwe Hermann [Sat, 30 May 2020 13:54:22 +0000 (15:54 +0200)]
sigrok-native-macosx: Add sigrok-cli DMG creation support.

2 years agosigrok-cross-mingw: Mention libieee1284 package.
Uwe Hermann [Sun, 10 May 2020 14:27:58 +0000 (16:27 +0200)]
sigrok-cross-mingw: Mention libieee1284 package.

3 years agosigrok-native-macosx: Fix a Python finding issue.
Uwe Hermann [Sat, 2 May 2020 18:50:40 +0000 (20:50 +0200)]
sigrok-native-macosx: Fix a Python finding issue.

3 years agosigrok-native-macosx: Fix an issue with recent boost versions.
Uwe Hermann [Sat, 2 May 2020 15:33:21 +0000 (17:33 +0200)]
sigrok-native-macosx: Fix an issue with recent boost versions.

3 years agosigrok-cross-android: Update Qt download location.
Uwe Hermann [Thu, 16 Apr 2020 20:20:39 +0000 (22:20 +0200)]
sigrok-cross-android: Update Qt download location.

3 years agosigrok-cross-mingw: Update MXE patch for libusb1.
Uwe Hermann [Mon, 13 Apr 2020 16:06:22 +0000 (18:06 +0200)]
sigrok-cross-mingw: Update MXE patch for libusb1.

3 years agosigrok-cross-mingw: Ship Python stdlib *.pyd files.
Uwe Hermann [Wed, 22 Jan 2020 22:03:58 +0000 (23:03 +0100)]
sigrok-cross-mingw: Ship Python stdlib *.pyd files.

This fixes bug #1409.

3 years agosigrok-cross-android: Drop unused/obsolete MIPS support.
Uwe Hermann [Sat, 18 Jan 2020 17:50:07 +0000 (18:50 +0100)]
sigrok-cross-android: Drop unused/obsolete MIPS support.

We haven't ever successfully built MIPS APKs, and MIPS support has been
dropped in later NDK versions anyway.

3 years agosigrok-native-macosx: Add Qt translations to generated DMG file.
Uwe Hermann [Sat, 18 Jan 2020 17:47:31 +0000 (18:47 +0100)]
sigrok-native-macosx: Add Qt translations to generated DMG file.

3 years agosigrok-cross-android: Enable Qt translations support.
Uwe Hermann [Sat, 18 Jan 2020 13:36:41 +0000 (14:36 +0100)]
sigrok-cross-android: Enable Qt translations support.

An additional workaround is needed in android-qt.patch, since there
is an (upstream) build issue in "qtplugininfo" from qttools.

3 years agosigrok-cross-mingw: README: Update for Qt translations.
Uwe Hermann [Sat, 18 Jan 2020 13:31:32 +0000 (14:31 +0100)]
sigrok-cross-mingw: README: Update for Qt translations.

3 years agosigrok-native-appimage: README: Update status and download location.
Uwe Hermann [Sat, 18 Jan 2020 13:31:10 +0000 (14:31 +0100)]
sigrok-native-appimage: README: Update status and download location.

3 years agosigrok-cross-linux: Set BUILD_SIGROK_FIRMWARE_FX2LAFW=1.
Uwe Hermann [Thu, 3 Oct 2019 13:32:28 +0000 (15:32 +0200)]
sigrok-cross-linux: Set BUILD_SIGROK_FIRMWARE_FX2LAFW=1.

3 years agosigrok-cross-android: Fix Qt download URL.
Uwe Hermann [Thu, 3 Oct 2019 13:26:12 +0000 (15:26 +0200)]
sigrok-cross-android: Fix Qt download URL.

3 years agosigrok-native-appimage: Bump local AppImageKit files.
Uwe Hermann [Thu, 3 Oct 2019 13:18:36 +0000 (15:18 +0200)]
sigrok-native-appimage: Bump local AppImageKit files.

Bump and excludelist to the latest upstream versions from:

3 years agosigrok-native-appimage: Bump to use Ubuntu 16.04 as base OS.
Uwe Hermann [Thu, 3 Oct 2019 13:06:22 +0000 (15:06 +0200)]
sigrok-native-appimage: Bump to use Ubuntu 16.04 as base OS.

Until recently, the sigrok AppImages were built on Ubuntu 14.04
Trusty Tahr (originally released 2014, Canonical support ended 04/2019).

We're now building on Ubuntu 16.04 Xenial Xerus (originally released
2016, Canonical support will end 04/2021).

This release is still old enough so that the generated AppImages should
run on the majority of modern Linux distros, but also recent enough so
we somewhat recent versions of all libraries. In the case of Qt, we get
a recent enough version to be able to build PulseView (which currently
needs Qt >= 5.3) at all: Qt 5.5.1.

3 years agosigrok-native-msys2: Add hidapi in "prepare" target.
Uwe Hermann [Sat, 29 Jun 2019 19:54:13 +0000 (21:54 +0200)]
sigrok-native-msys2: Add hidapi in "prepare" target.

3 years agomingw: README: Add hidapi.
Uwe Hermann [Sat, 29 Jun 2019 18:23:44 +0000 (20:23 +0200)]
mingw: README: Add hidapi.

3 years agomingw: Update mxe_fixes.patch to work with latest MXE.
Uwe Hermann [Sat, 29 Jun 2019 10:58:15 +0000 (12:58 +0200)]
mingw: Update mxe_fixes.patch to work with latest MXE.

3 years agoConsistently use the "Sysclk" spelling everywhere.
Uwe Hermann [Mon, 22 Apr 2019 11:30:34 +0000 (13:30 +0200)]
Consistently use the "Sysclk" spelling everywhere.

We use this spelling (not "SysClk") in most of the rest of the code-base,
as well as in the wiki.

4 years agosigrok-native-macosx: Fix Homebrew package paths
Ryan Govostes [Mon, 18 Mar 2019 16:17:40 +0000 (12:17 -0400)]
sigrok-native-macosx: Fix Homebrew package paths

Use a more reliable method of determining paths to Homebrew formula prefixes,
`brew --prefix`. Use this to find pkg-config files for keg-only formulae,
now including libffi, which is required for glibmm.

This fixes bug #1367.

4 years agoappimage: pass $ARCH to appimagetool
Gerhard Sittig [Sun, 13 Jan 2019 10:43:27 +0000 (11:43 +0100)]
appimage: pass $ARCH to appimagetool

More recent appimagetool(1) implementations require an ARCH spec, since
auto-detection finds several architectures in the application directory.
This addresses part of bug #1349 (newer AppImageKit versions are
required to unbreak the magic bytes in the ELF header).

4 years agosigrok-cross-linux: Add $BUILD_SIGROK_FIRMWARE_FX2LAFW.
Uwe Hermann [Sun, 13 Jan 2019 18:30:16 +0000 (19:30 +0100)]
sigrok-cross-linux: Add $BUILD_SIGROK_FIRMWARE_FX2LAFW.

4 years agosigrok-cross-mingw: Fix broken Zadig download URLs.
Uwe Hermann [Fri, 11 Jan 2019 23:45:48 +0000 (00:45 +0100)]
sigrok-cross-mingw: Fix broken Zadig download URLs.

Due to upstream URL changes, the old ones no longer work.

We grab the latest releases currently available:
 - 2.2 for Windows XP (released 02/2016)
 - 2.4 for all other Windows versions (released 07/2018)

4 years agonew-driver: keep driver_info local to the api.c source file
Gerhard Sittig [Sat, 17 Nov 2018 19:32:25 +0000 (20:32 +0100)]
new-driver: keep driver_info local to the api.c source file

There is a circular reference between the driver info structure (which
lists callback routines) and a driver's routines (one of them may have
to reference the driver info). Add a forward declaration, and keep the
declaration and the implementation 'static' within the api.c source
file. Otherwise linker issues may arise should developers put the
declaration into protocol.h since it's marked as SR_PRIV in the template.

4 years agosigrok-native-macosx: Change DMG name to PulseView-NIGHTLY.dmg.
Uwe Hermann [Mon, 29 Oct 2018 12:09:50 +0000 (13:09 +0100)]
sigrok-native-macosx: Change DMG name to PulseView-NIGHTLY.dmg.

This is more consistent with the binary builds for other OSes.

4 years agosigrok-cross-mingw: Also build PV manual
Soeren Apel [Sun, 28 Oct 2018 22:14:07 +0000 (23:14 +0100)]
sigrok-cross-mingw: Also build PV manual

4 years agoeevblog-121gw: introduce BLE to UART gateway (EEVBlog 121GW comm helper)
Gerhard Sittig [Tue, 9 Oct 2018 17:27:06 +0000 (19:27 +0200)]
eevblog-121gw: introduce BLE to UART gateway (EEVBlog 121GW comm helper)

Introduce a Python script which relays data which is received via BLE
communication to a UART. This enables immediate use of the serial-dmm
device driver for the EEVBlog 121GW multimeter, until sigrok's serial
communication layer grows (better) support for this physical layer.

Prefer the bluepy(3) Python module over the external gatttool(1) process
since this enables automatic scan for the device's address, and graceful
handling of lost communication, including re-connecting to the device.

4 years agosigrok-native-appimage: Add bugfix patch for AppImageKit.
Uwe Hermann [Thu, 11 Oct 2018 19:28:40 +0000 (21:28 +0200)]
sigrok-native-appimage: Add bugfix patch for AppImageKit.

The problem was that relative paths would not work, since AppRun
(part of the AppImage) would chdir() into the AppImage mount point
(/tmp/.mount_xxxxx/usr), which would make glib's g_get_current_dir() return
that path, so all glib functions calling that would do the wrong thing.

For now, we fix this by patching away the chdir() in AppRun.


This fixes bug #1300.

4 years agosigrok-native-appimage: Update README.
Uwe Hermann [Thu, 11 Oct 2018 18:58:28 +0000 (20:58 +0200)]
sigrok-native-appimage: Update README.

4 years agosigrok-native-appimage: Update APPIMAGEKIT_OUTDIR for current paths.
Uwe Hermann [Thu, 11 Oct 2018 18:46:30 +0000 (20:46 +0200)]
sigrok-native-appimage: Update APPIMAGEKIT_OUTDIR for current paths.

4 years agosigrok-native-appimage: Bump upstream files in contrib/.
Uwe Hermann [Thu, 11 Oct 2018 18:44:32 +0000 (20:44 +0200)]
sigrok-native-appimage: Bump upstream files in contrib/.

4 years agosigrok-cross-mingw: Patch MXE's glib to fix compiler warnings.
Uwe Hermann [Wed, 3 Oct 2018 15:03:58 +0000 (17:03 +0200)]
sigrok-cross-mingw: Patch MXE's glib to fix compiler warnings.

This fixes parts of bug #986.

This seems to have been fixed upstream recently:

Until MXE uses a recent enough glib, we're applying a similar (ported) patch.

This fixes the following compiler warnings:

  src/usb.c: In function 'usb_pollfd_removed':
  src/usb.c:34:20: warning: format '%i' expects argument of type 'int', but argument 3 has type 'long long int' [-Wformat=]
   #define LOG_PREFIX "usb"
  src/libsigrok-internal.h:764:41: note: in expansion of macro 'LOG_PREFIX'
   #define sr_err(...) sr_log(SR_LOG_ERR,  LOG_PREFIX ": " __VA_ARGS__)
  src/usb.c:222:2: note: in expansion of macro 'sr_err'
    sr_err("FD to be removed (%" G_GINTPTR_FORMAT

  src/input/input.c: In function 'sr_input_free':
  src/input/input.c:29:20: warning: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'gsize {aka long long unsigned int}' [-Wformat=]
   #define LOG_PREFIX "input"
  ./src/libsigrok-internal.h:763:42: note: in expansion of macro 'LOG_PREFIX'
   #define sr_warn(...) sr_log(SR_LOG_WARN, LOG_PREFIX ": " __VA_ARGS__)
  src/input/input.c:686:3: note: in expansion of macro 'sr_warn'
     sr_warn("Found %" G_GSIZE_FORMAT

  src/output/analog.c: In function 'receive':
  src/output/analog.c:118:34: warning: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'guint64 {aka long long unsigned int}' [-Wformat=]
       g_string_append_printf(*out, "%"

  src/scpi/scpi.c: In function 'sr_scpi_get_string':
  src/scpi/scpi.c:28:20: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'gsize {aka long long unsigned int}' [-Wformat=]
   #define LOG_PREFIX "scpi"
  ./src/libsigrok-internal.h:760:42: note: in expansion of macro 'LOG_PREFIX'
   #define sr_spew(...) sr_log(SR_LOG_SPEW, LOG_PREFIX ": " __VA_ARGS__)
  src/scpi/scpi.c:623:2: note: in expansion of macro 'sr_spew'
    sr_spew("Got response: '%.70s', length %" G_GSIZE_FORMAT ".",

  In file included from session.c:22:0:
  session.c: In function 'srd_session_metadata_set':
  session.c:190:10: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'guint64 {aka long long unsigned int}' [-Wformat=]
    srd_dbg("Setting session %d samplerate to %"G_GUINT64_FORMAT".",
  libsigrokdecode-internal.h:101:44: note: in definition of macro 'srd_dbg'
   #define srd_dbg(...) srd_log(SRD_LOG_DBG,  __VA_ARGS__)

4 years agosigrok-cross-mingw: Drop apparently obsolete libzip patch.
Uwe Hermann [Wed, 3 Oct 2018 14:15:24 +0000 (16:15 +0200)]
sigrok-cross-mingw: Drop apparently obsolete libzip patch.

Initial tests with MinGW 5.0.4 and libzip 1.5.1 from recent MXE suggest
that this issue is no longer reproducible. It was probably fixed in
either of the packages in the mean time.

4 years agosigrok-cross-mingw: Update README.
Uwe Hermann [Wed, 3 Oct 2018 14:14:39 +0000 (16:14 +0200)]
sigrok-cross-mingw: Update README.

4 years agosigrok-native-msys2: Update README.
Uwe Hermann [Tue, 2 Oct 2018 20:19:24 +0000 (22:19 +0200)]
sigrok-native-msys2: Update README.

4 years agosigrok-cross-mingw: Fix broken Windows 64bit decoding (bug #1195).
Uwe Hermann [Sat, 29 Sep 2018 16:55:20 +0000 (18:55 +0200)]
sigrok-cross-mingw: Fix broken Windows 64bit decoding (bug #1195).

4 years agomacosx: Hardcode the Qt version to 5.5 for now.
Uwe Hermann [Sun, 19 Aug 2018 16:59:01 +0000 (18:59 +0200)]
macosx: Hardcode the Qt version to 5.5 for now.

The latest Qt version available in Homebrew is 5.11.x currently, but
this version no longer supports older Mac OS X versions:

In order for the DMG build to remain compatible with some more older
Mac OS X versions, we hardcode the scripts to use Qt 5.5 for now.

This requires the following on the build box:

 $ brew install qt@5.5
 $ brew unlink qt
 $ brew link --force qt@5.5

With this change the DMG should work on at least Mac OS X 10.8, 10.9,
and 10.10 according to Qt docs (only tested on 10.11.6 / El Capitan).

The DMG also currently uses Python 3.7, which should work fine for
Mac OS X 10.9 (Mavericks) and later, according to Python docs
(again, only tested on 10.11.6 / El Capitan).

4 years agomacosx: Fix another instance that needs the Python 3.6 -> 3.7 bump.
Uwe Hermann [Sun, 19 Aug 2018 16:48:37 +0000 (18:48 +0200)]
macosx: Fix another instance that needs the Python 3.6 -> 3.7 bump.

4 years agocreate_dmg: Bump PYVER to 3.7 to match current Homebrew.
Uwe Hermann [Sun, 12 Aug 2018 19:58:52 +0000 (21:58 +0200)]
create_dmg: Bump PYVER to 3.7 to match current Homebrew.

4 years agosigrok-cross-mingw: Revert to glib 2.44.1 for now (fixes bug #1232).
Uwe Hermann [Fri, 20 Jul 2018 18:06:13 +0000 (20:06 +0200)]
sigrok-cross-mingw: Revert to glib 2.44.1 for now (fixes bug #1232).

4 years agosigrok-cross-mingw: Add required libusb patch for MXE.
Uwe Hermann [Sat, 16 Jun 2018 14:01:34 +0000 (16:01 +0200)]
sigrok-cross-mingw: Add required libusb patch for MXE.

4 years agoREADME: Fix incorrect content.
Uwe Hermann [Wed, 30 May 2018 21:43:35 +0000 (23:43 +0200)]
README: Fix incorrect content.

5 years agosigrok-native-macosx: Fix incorrect Python 3.6 install_name.
Uwe Hermann [Fri, 11 May 2018 13:42:41 +0000 (15:42 +0200)]
sigrok-native-macosx: Fix incorrect Python 3.6 install_name.

This fixes bug #1192.

5 years agosigrok-native-msys2: Don't override PKG_CONFIG_PATH.
Uwe Hermann [Sat, 7 Apr 2018 17:53:50 +0000 (19:53 +0200)]
sigrok-native-msys2: Don't override PKG_CONFIG_PATH.

Instead, prepend to it. Otherwise certain pkg-config files might
not be found correctly.

5 years agosigrok-native-appimage: Don't add the glibc version to the filename.
Uwe Hermann [Sat, 7 Apr 2018 17:44:14 +0000 (19:44 +0200)]
sigrok-native-appimage: Don't add the glibc version to the filename.

This is not really needed or useful in most cases, also not sure whether
it's actually even correct in all cases.

5 years agosigrok-native-appimage: Support building a sigrok-cli AppImage.
Uwe Hermann [Sat, 7 Apr 2018 17:36:04 +0000 (19:36 +0200)]
sigrok-native-appimage: Support building a sigrok-cli AppImage.

5 years agoREADME: Update to current AppImage status.
Uwe Hermann [Sat, 7 Apr 2018 16:39:26 +0000 (18:39 +0200)]
README: Update to current AppImage status.

5 years agosigrok-cross-android: Set CMAKE_MAKE_PROGRAM to fix libftdi build.
Uwe Hermann [Fri, 23 Mar 2018 08:24:02 +0000 (09:24 +0100)]
sigrok-cross-android: Set CMAKE_MAKE_PROGRAM to fix libftdi build.

The libftdi build was failing (for quite a while now) like this:

  CMake Error: CMake was unable to find a build program corresponding
  to "Unix Makefiles".  CMAKE_MAKE_PROGRAM is not set.  You probably need
  to select a different build tool.

Explicitly setting CMAKE_MAKE_PROGRAM seems to fix this.

5 years agoDisable the host PYTHONPATH environment variable to avoid build confusion.
Cenkron [Sun, 18 Feb 2018 20:38:54 +0000 (14:38 -0600)]
Disable the host PYTHONPATH environment variable to avoid build confusion.

5 years agosigrok-native-msys2: Fix a typo.
Uwe Hermann [Sat, 10 Feb 2018 19:07:25 +0000 (20:07 +0100)]
sigrok-native-msys2: Fix a typo.

5 years agosigrok-native-msys2: Abort if run in an "MSYS2 MSYS" shell.
Uwe Hermann [Sat, 10 Feb 2018 17:46:32 +0000 (18:46 +0100)]
sigrok-native-msys2: Abort if run in an "MSYS2 MSYS" shell.

5 years agosigrok-cross-android: Bump VER_SIGROK_FIRMWARE_FX2LAFW to 0.1.6.
Uwe Hermann [Sat, 10 Feb 2018 17:42:17 +0000 (18:42 +0100)]
sigrok-cross-android: Bump VER_SIGROK_FIRMWARE_FX2LAFW to 0.1.6.

5 years agosigrok-native-msys2: Bump VER_SIGROK_FIRMWARE_FX2LAFW to 0.1.6.
Uwe Hermann [Sun, 28 Jan 2018 17:22:32 +0000 (18:22 +0100)]
sigrok-native-msys2: Bump VER_SIGROK_FIRMWARE_FX2LAFW to 0.1.6.

5 years agosigrok-cross-mingw: Drop obsolete/unused SF_MIRROR variable.
Uwe Hermann [Tue, 16 Jan 2018 22:37:54 +0000 (23:37 +0100)]
sigrok-cross-mingw: Drop obsolete/unused SF_MIRROR variable.

5 years agosigrok-native-msys2: Bump fx2lafw tarball version to 0.1.5.
Uwe Hermann [Tue, 16 Jan 2018 22:37:19 +0000 (23:37 +0100)]
sigrok-native-msys2: Bump fx2lafw tarball version to 0.1.5.

5 years agomingw/msys2: Make build directory names reflect debug/release and 32/64
Cenkron [Tue, 16 Jan 2018 21:35:26 +0000 (15:35 -0600)]
mingw/msys2: Make build directory names reflect debug/release and 32/64

For mingw and msys2 builds, both the install and build directory names
now reflect the build characteristics.
This makes it possible to do debug and release builds simultaneously.

5 years agosigrok-native-msys2: Fix a typo in the "prepare" target.
Uwe Hermann [Sat, 13 Jan 2018 17:13:24 +0000 (18:13 +0100)]
sigrok-native-msys2: Fix a typo in the "prepare" target.

5 years agomxe/msys2: Use -DCMAKE_BUILD_TYPE in favor of a patch.
Cenkron [Fri, 12 Jan 2018 19:05:29 +0000 (13:05 -0600)]
mxe/msys2: Use -DCMAKE_BUILD_TYPE in favor of a patch.

Direct cmake to apply the -mwindows linker switch based on a cmake
command line argument rather than by using a patch file. The command
line argument is -DCMAKE_BUILD_TYPE=xxxxx and applies the linker switch
only to WIN32 builds that are not Debug.