From 03d6d746b742fb21ca22086ba6b72943a845ecc9 Mon Sep 17 00:00:00 2001 From: Bert Vermeulen Date: Wed, 27 Nov 2013 16:47:04 +0100 Subject: [PATCH] Automate protocol decoder installation. This automatically figures out the files to install for each protocol decoder, without involving autotools. All python files (filenames ending in .py) are always installed. If a protocol decoder requires installation of a non-python file, a small file called 'config' can be created in that protocol decoder's directory, with the following content: # comments are ok extra-install vendorlist.txt commands.txt --- Makefile.am | 8 +- decoders/Makefile.am | 58 ------------- decoders/avr_isp/Makefile.am | 26 ------ decoders/can/Makefile.am | 26 ------ decoders/dcf77/Makefile.am | 26 ------ decoders/ds1307/Makefile.am | 26 ------ decoders/edid/Makefile.am | 26 ------ decoders/guess_bitrate/Makefile.am | 26 ------ decoders/i2c/Makefile.am | 26 ------ decoders/i2cdemux/Makefile.am | 26 ------ decoders/i2cfilter/Makefile.am | 25 ------ decoders/i2s/Makefile.am | 26 ------ decoders/i2s_dump/Makefile.am | 26 ------ decoders/jtag/Makefile.am | 26 ------ decoders/jtag_stm32/Makefile.am | 26 ------ decoders/lm75/Makefile.am | 26 ------ decoders/lpc/Makefile.am | 26 ------ decoders/maxim_ds28ea00/Makefile.am | 26 ------ decoders/midi/Makefile.am | 26 ------ decoders/mlx90614/Makefile.am | 26 ------ decoders/mx25lxx05d/Makefile.am | 26 ------ decoders/mxc6225xu/Makefile.am | 26 ------ decoders/nunchuk/Makefile.am | 26 ------ decoders/onewire_link/Makefile.am | 26 ------ decoders/onewire_network/Makefile.am | 26 ------ decoders/pan1321/Makefile.am | 26 ------ decoders/parallel/Makefile.am | 26 ------ decoders/rtc8564/Makefile.am | 26 ------ decoders/sdcard_spi/Makefile.am | 26 ------ decoders/spi/Makefile.am | 26 ------ decoders/tlc5620/Makefile.am | 26 ------ decoders/transitioncounter/Makefile.am | 26 ------ decoders/uart/Makefile.am | 26 ------ decoders/uart_dump/Makefile.am | 26 ------ decoders/usb_packet/Makefile.am | 26 ------ decoders/usb_signalling/Makefile.am | 26 ------ decoders/xfp/Makefile.am | 26 ------ tools/install-decoders | 109 +++++++++++++++++++++++++ 38 files changed, 116 insertions(+), 968 deletions(-) delete mode 100644 decoders/Makefile.am delete mode 100644 decoders/avr_isp/Makefile.am delete mode 100644 decoders/can/Makefile.am delete mode 100644 decoders/dcf77/Makefile.am delete mode 100644 decoders/ds1307/Makefile.am delete mode 100644 decoders/edid/Makefile.am delete mode 100644 decoders/guess_bitrate/Makefile.am delete mode 100644 decoders/i2c/Makefile.am delete mode 100644 decoders/i2cdemux/Makefile.am delete mode 100644 decoders/i2cfilter/Makefile.am delete mode 100644 decoders/i2s/Makefile.am delete mode 100644 decoders/i2s_dump/Makefile.am delete mode 100644 decoders/jtag/Makefile.am delete mode 100644 decoders/jtag_stm32/Makefile.am delete mode 100644 decoders/lm75/Makefile.am delete mode 100644 decoders/lpc/Makefile.am delete mode 100644 decoders/maxim_ds28ea00/Makefile.am delete mode 100644 decoders/midi/Makefile.am delete mode 100644 decoders/mlx90614/Makefile.am delete mode 100644 decoders/mx25lxx05d/Makefile.am delete mode 100644 decoders/mxc6225xu/Makefile.am delete mode 100644 decoders/nunchuk/Makefile.am delete mode 100644 decoders/onewire_link/Makefile.am delete mode 100644 decoders/onewire_network/Makefile.am delete mode 100644 decoders/pan1321/Makefile.am delete mode 100644 decoders/parallel/Makefile.am delete mode 100644 decoders/rtc8564/Makefile.am delete mode 100644 decoders/sdcard_spi/Makefile.am delete mode 100644 decoders/spi/Makefile.am delete mode 100644 decoders/tlc5620/Makefile.am delete mode 100644 decoders/transitioncounter/Makefile.am delete mode 100644 decoders/uart/Makefile.am delete mode 100644 decoders/uart_dump/Makefile.am delete mode 100644 decoders/usb_packet/Makefile.am delete mode 100644 decoders/usb_signalling/Makefile.am delete mode 100644 decoders/xfp/Makefile.am create mode 100755 tools/install-decoders diff --git a/Makefile.am b/Makefile.am index 6a5d6cf..c265331 100644 --- a/Makefile.am +++ b/Makefile.am @@ -20,7 +20,7 @@ ACLOCAL_AMFLAGS = -I autostuff -SUBDIRS = contrib decoders tests +SUBDIRS = contrib tests lib_LTLIBRARIES = libsigrokdecode.la @@ -59,3 +59,9 @@ ChangeLog: dist-hook: ChangeLog +install-decoders: + $(MKDIR_P) $(DECODERS_DIR) + tools/install-decoders -o $(DECODERS_DIR) + +install-data-hook: install-decoders + diff --git a/decoders/Makefile.am b/decoders/Makefile.am deleted file mode 100644 index bf433a0..0000000 --- a/decoders/Makefile.am +++ /dev/null @@ -1,58 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2010 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -# Please keep this list in alphabetical order. -SUBDIRS = \ - avr_isp \ - can \ - dcf77 \ - ds1307 \ - edid \ - guess_bitrate \ - i2c \ - i2cdemux \ - i2cfilter \ - i2s \ - i2s_dump \ - jtag \ - jtag_stm32 \ - lm75 \ - lpc \ - maxim_ds28ea00 \ - midi \ - mlx90614 \ - mx25lxx05d \ - mxc6225xu \ - nunchuk \ - onewire_link \ - onewire_network \ - pan1321 \ - parallel \ - rtc8564 \ - sdcard_spi \ - spi \ - tlc5620 \ - transitioncounter \ - uart \ - uart_dump \ - usb_packet \ - usb_signalling \ - xfp - diff --git a/decoders/avr_isp/Makefile.am b/decoders/avr_isp/Makefile.am deleted file mode 100644 index a6bd858..0000000 --- a/decoders/avr_isp/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/avr_isp - -dist_pkgdata_DATA = __init__.py pd.py parts.py - -CLEANFILES = *.pyc - diff --git a/decoders/can/Makefile.am b/decoders/can/Makefile.am deleted file mode 100644 index fd077d5..0000000 --- a/decoders/can/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/can - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/dcf77/Makefile.am b/decoders/dcf77/Makefile.am deleted file mode 100644 index a506be7..0000000 --- a/decoders/dcf77/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/dcf77 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/ds1307/Makefile.am b/decoders/ds1307/Makefile.am deleted file mode 100644 index 16d2ab8..0000000 --- a/decoders/ds1307/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Matt Ranostay -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/ds1307 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/edid/Makefile.am b/decoders/edid/Makefile.am deleted file mode 100644 index c9261f4..0000000 --- a/decoders/edid/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Bert Vermeulen -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/edid - -dist_pkgdata_DATA = __init__.py pd.py pnpids.txt - -CLEANFILES = *.pyc - diff --git a/decoders/guess_bitrate/Makefile.am b/decoders/guess_bitrate/Makefile.am deleted file mode 100644 index 7c162f6..0000000 --- a/decoders/guess_bitrate/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/guess_bitrate - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/i2c/Makefile.am b/decoders/i2c/Makefile.am deleted file mode 100644 index 7185628..0000000 --- a/decoders/i2c/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/i2c - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/i2cdemux/Makefile.am b/decoders/i2cdemux/Makefile.am deleted file mode 100644 index 10ea7e1..0000000 --- a/decoders/i2cdemux/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/i2cdemux - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/i2cfilter/Makefile.am b/decoders/i2cfilter/Makefile.am deleted file mode 100644 index b5f67e7..0000000 --- a/decoders/i2cfilter/Makefile.am +++ /dev/null @@ -1,25 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Bert Vermeulen -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 3 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, see . -## - -pkgdatadir = $(DECODERS_DIR)/i2cfilter - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/i2s/Makefile.am b/decoders/i2s/Makefile.am deleted file mode 100644 index c109a21..0000000 --- a/decoders/i2s/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Joel Holdsworth -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/i2s - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/i2s_dump/Makefile.am b/decoders/i2s_dump/Makefile.am deleted file mode 100644 index fda1fff..0000000 --- a/decoders/i2s_dump/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/i2s_dump - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/jtag/Makefile.am b/decoders/jtag/Makefile.am deleted file mode 100644 index 8faa165..0000000 --- a/decoders/jtag/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/jtag - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/jtag_stm32/Makefile.am b/decoders/jtag_stm32/Makefile.am deleted file mode 100644 index 7d450a2..0000000 --- a/decoders/jtag_stm32/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/jtag_stm32 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/lm75/Makefile.am b/decoders/lm75/Makefile.am deleted file mode 100644 index 60acc6f..0000000 --- a/decoders/lm75/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/lm75 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/lpc/Makefile.am b/decoders/lpc/Makefile.am deleted file mode 100644 index d7572f2..0000000 --- a/decoders/lpc/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/lpc - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/maxim_ds28ea00/Makefile.am b/decoders/maxim_ds28ea00/Makefile.am deleted file mode 100644 index a66d647..0000000 --- a/decoders/maxim_ds28ea00/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/maxim_ds28ea00 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/midi/Makefile.am b/decoders/midi/Makefile.am deleted file mode 100644 index f45d086..0000000 --- a/decoders/midi/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/midi - -dist_pkgdata_DATA = __init__.py pd.py lists.py - -CLEANFILES = *.pyc - diff --git a/decoders/mlx90614/Makefile.am b/decoders/mlx90614/Makefile.am deleted file mode 100644 index babae0c..0000000 --- a/decoders/mlx90614/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/mlx90614 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/mx25lxx05d/Makefile.am b/decoders/mx25lxx05d/Makefile.am deleted file mode 100644 index 6f9cf1b..0000000 --- a/decoders/mx25lxx05d/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/mx25lxx05d - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/mxc6225xu/Makefile.am b/decoders/mxc6225xu/Makefile.am deleted file mode 100644 index 4908c6b..0000000 --- a/decoders/mxc6225xu/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/mxc6225xu - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/nunchuk/Makefile.am b/decoders/nunchuk/Makefile.am deleted file mode 100644 index 561281e..0000000 --- a/decoders/nunchuk/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/nunchuk - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/onewire_link/Makefile.am b/decoders/onewire_link/Makefile.am deleted file mode 100644 index f1be7b8..0000000 --- a/decoders/onewire_link/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/onewire_link - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/onewire_network/Makefile.am b/decoders/onewire_network/Makefile.am deleted file mode 100644 index 81c2fd1..0000000 --- a/decoders/onewire_network/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/onewire_network - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/pan1321/Makefile.am b/decoders/pan1321/Makefile.am deleted file mode 100644 index e501936..0000000 --- a/decoders/pan1321/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/pan1321 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/parallel/Makefile.am b/decoders/parallel/Makefile.am deleted file mode 100644 index 2371d10..0000000 --- a/decoders/parallel/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/parallel - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/rtc8564/Makefile.am b/decoders/rtc8564/Makefile.am deleted file mode 100644 index 3c08bef..0000000 --- a/decoders/rtc8564/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/rtc8564 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/sdcard_spi/Makefile.am b/decoders/sdcard_spi/Makefile.am deleted file mode 100644 index 3cf829b..0000000 --- a/decoders/sdcard_spi/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/sdcard_spi - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/spi/Makefile.am b/decoders/spi/Makefile.am deleted file mode 100644 index e63c32b..0000000 --- a/decoders/spi/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/spi - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/tlc5620/Makefile.am b/decoders/tlc5620/Makefile.am deleted file mode 100644 index 1eb5520..0000000 --- a/decoders/tlc5620/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/tlc5620 - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/transitioncounter/Makefile.am b/decoders/transitioncounter/Makefile.am deleted file mode 100644 index 39b4b3c..0000000 --- a/decoders/transitioncounter/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/transitioncounter - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/uart/Makefile.am b/decoders/uart/Makefile.am deleted file mode 100644 index 89d90ec..0000000 --- a/decoders/uart/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/uart - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/uart_dump/Makefile.am b/decoders/uart_dump/Makefile.am deleted file mode 100644 index 1b7d780..0000000 --- a/decoders/uart_dump/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/uart_dump - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/usb_packet/Makefile.am b/decoders/usb_packet/Makefile.am deleted file mode 100644 index f095957..0000000 --- a/decoders/usb_packet/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/usb_packet - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/usb_signalling/Makefile.am b/decoders/usb_signalling/Makefile.am deleted file mode 100644 index 39c56ad..0000000 --- a/decoders/usb_signalling/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2012 Uwe Hermann -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/usb_signalling - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/decoders/xfp/Makefile.am b/decoders/xfp/Makefile.am deleted file mode 100644 index 68d982c..0000000 --- a/decoders/xfp/Makefile.am +++ /dev/null @@ -1,26 +0,0 @@ -## -## This file is part of the libsigrokdecode project. -## -## Copyright (C) 2013 Bert Vermeulen -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -## - -pkgdatadir = $(DECODERS_DIR)/xfp - -dist_pkgdata_DATA = __init__.py pd.py - -CLEANFILES = *.pyc - diff --git a/tools/install-decoders b/tools/install-decoders new file mode 100755 index 0000000..8134539 --- /dev/null +++ b/tools/install-decoders @@ -0,0 +1,109 @@ +#!/usr/bin/env python3 +# +# This file is part of the libsigrokdecode project. +# +# Copyright (C) 2012 Bert Vermeulen +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# + +import os +import sys +from shutil import copy +from getopt import getopt + + +def install(srcdir, dstdir): + worklist = [] + for pd in os.listdir(srcdir): + pd_dir = srcdir + '/' + pd + if not os.path.isdir(pd_dir): + continue + install_list = [] + for f in os.listdir(pd_dir): + pd_file = pd_dir + '/' + f + if not os.path.isfile(pd_file): + continue + if f == 'config': + install_list.extend(config_get_extra_install(pd_file)) + elif f[-3:] == '.py': + install_list.append(f) + worklist.append((pd, pd_dir, install_list)) + + print("Installing %d protocol decoders:" % len(worklist)) + col = 0 + for pd, pd_dir, install_list in worklist: + msg = pd + ' ' + if (col + len(msg) > 80): + print() + col = 0 + print(msg, end='') + col += len(msg) + pd_dst = dstdir + '/' + pd + try: + os.mkdir(pd_dst) + except FileExistsError: + pass + for f in install_list: + copy(pd_dir + '/' + f, pd_dst) + print() + + +def config_get_extra_install(config_file): + install_list = [] + for line in open(config_file).read().split('\n'): + line = line.strip() + if len(line) == 0 or line[0] == '#': + continue + words = line.split() + if words[0] != 'extra-install': + continue + install_list.extend(words[1:]) + + return install_list + + +def usage(msg=None): + if msg: + print(msg) + ret = 1 + else: + ret = 0 + print("""Usage: + install-decoders [-i ] -o """) + sys.exit(ret) + + +# +# main +# + +src = 'decoders' +dst = None +try: + opts, args = getopt(sys.argv[1:], 'i:o:') + for opt, arg in opts: + if opt == '-i': + src = arg + elif opt == '-o': + dst = arg +except Exception as e: + usage(str(e)) + +if len(args) != 0 or dst is None: + usage() + +install(src, dst) + + -- 2.30.2