From: Bert Vermeulen Date: Wed, 27 Nov 2013 15:47:04 +0000 (+0100) Subject: Automate protocol decoder installation. X-Git-Tag: libsigrokdecode-0.3.0~215 X-Git-Url: https://sigrok.org/gitaction?a=commitdiff_plain;h=03d6d746b742fb21ca22086ba6b72943a845ecc9;p=libsigrokdecode.git 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 --- 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) + +