.gear/minipro.spec | 51 +++++++++++++++++++ .gear/rules | 4 ++ .../tags/5012001c68d2a6b0d3d8cfbff127e4ade025c9c5 | 6 +++ .gear/tags/list | 1 + .gear/upstream/remotes | 3 ++ Makefile | 2 + bash_completion.d/minipro | 58 ++++++++++------------ 7 files changed, 92 insertions(+), 33 deletions(-) diff --git a/.gear/minipro.spec b/.gear/minipro.spec new file mode 100644 index 0000000..78a9272 --- /dev/null +++ b/.gear/minipro.spec @@ -0,0 +1,51 @@ +%define _unpackaged_files_terminate_build 1 + +Name: minipro +Version: 0.5 +Release: alt2 +Summary: Program for controlling the MiniPRO TL866xx series of chip programmers +License: GPLv3 +Group: Engineering +Packager: Dmitriy Voropaev +URL: https://gitlab.com/DavidGriffith/minipro +Source: %name-%version.tar +Patch: %name-%version-%release.patch +BuildRequires: libusb-devel + +%description +Software for Minipro TL866XX series of programmers from autoelectric.cn. +Used to program flash, EEPROM, etc. + +%prep +%setup +%autopatch -p1 + +%build +%make_build PREFIX=%_prefix + +%install +make install DESTDIR=%buildroot PREFIX=%_prefix +install -D -p -m 0644 udev/60-minipro.rules %buildroot%_udevrulesdir/60-minipro.rules +install -D -p -m 0644 udev/61-minipro-uaccess.rules %buildroot%_udevrulesdir/61-minipro-uaccess.rules +# see https://gitlab.com/DavidGriffith/minipro/-/issues/161 +install -D -p -m 0644 bash_completion.d/minipro %buildroot%_sysconfdir/bash_completion.d/minipro + + +%files +%_bindir/minipro +%_bindir/miniprohex +%_man1dir/%name.* +%_udevrulesdir/60-minipro.rules +%_udevrulesdir/61-minipro-uaccess.rules +%_datadir/%name/ +%_sysconfdir/bash_completion.d/* + + +%changelog +* Thu Apr 08 2021 Dmitriy Voropaev 0.5-alt2 +- fixed paths, so that the/usr/share/minipro/directory is not left when + the package is removed + +* Thu Feb 04 2021 Dmitriy Voropaev 0.5-alt1 +- initial build + diff --git a/.gear/rules b/.gear/rules new file mode 100644 index 0000000..a79a611 --- /dev/null +++ b/.gear/rules @@ -0,0 +1,4 @@ +#tar: . name=@name@-@version@-@release@ base=@name@-@version@ +tar: @version@:. name=@name@-@version@ base=@name@-@version@ +diff: @version@:. . name=@name@-@version@-@release@.patch +spec: .gear/minipro.spec diff --git a/.gear/tags/5012001c68d2a6b0d3d8cfbff127e4ade025c9c5 b/.gear/tags/5012001c68d2a6b0d3d8cfbff127e4ade025c9c5 new file mode 100644 index 0000000..539c42e --- /dev/null +++ b/.gear/tags/5012001c68d2a6b0d3d8cfbff127e4ade025c9c5 @@ -0,0 +1,6 @@ +object 8be592c954264afdc3a2cb596ee45517cc5dc621 +type commit +tag 0.5 +tagger David Griffith 1604554557 -0800 + +Even more fixes! diff --git a/.gear/tags/list b/.gear/tags/list new file mode 100644 index 0000000..6c952a5 --- /dev/null +++ b/.gear/tags/list @@ -0,0 +1 @@ +5012001c68d2a6b0d3d8cfbff127e4ade025c9c5 0.5 diff --git a/.gear/upstream/remotes b/.gear/upstream/remotes new file mode 100644 index 0000000..c4ad7f6 --- /dev/null +++ b/.gear/upstream/remotes @@ -0,0 +1,3 @@ +[remote "upstream"] + url = https://gitlab.com/DavidGriffith/minipro + fetch = +refs/heads/*:refs/remotes/upstream/* diff --git a/Makefile b/Makefile index b3807b4..3fc2f5e 100644 --- a/Makefile +++ b/Makefile @@ -117,6 +117,8 @@ $(VERSION_STRINGS): @echo "#include \"minipro.h\"" >> $@ @echo "#include \"version.h\"" >> $@ +$(OBJECTS): version_header + minipro: $(VERSION_HEADER) $(VERSION_STRINGS) $(COMMON_OBJECTS) main.o $(CC) $(COMMON_OBJECTS) main.o $(LIBS) -o $(MINIPRO) diff --git a/bash_completion.d/minipro b/bash_completion.d/minipro index 0d9ea85..a421a36 100644 --- a/bash_completion.d/minipro +++ b/bash_completion.d/minipro @@ -1,41 +1,33 @@ + _minipro () { COMPREPLY=() local cur="${COMP_WORDS[COMP_CWORD]}" local prev=${COMP_WORDS[COMP_CWORD-1]} - if [ "$prev" = "-p" ] && [ "$cur" != "" ] - then - TXT=$(minipro -L $cur) - COMPREPLY=( $(compgen -W '$TXT' -- ${cur}) ) - return 0 - fi - - if [ "$prev" = "-c" ] - then - TXT="code data config" - COMPREPLY=( $(compgen -W '$TXT' -- ${cur}) ) - return 0 - fi - - if [ "$prev" = "-r" ] || [ "$prev" = "-w" ] - then - _filedir - return 0 - fi - - COMPREPLY=( $(compgen -W 'r -w -p -c -i' -- ${cur}) ) -} - -_minipro () { - COMPREPLY=() - local cur="${COMP_WORDS[COMP_CWORD]}" - if [ "$cur" != "" ] - then - local cur="${COMP_WORDS[COMP_CWORD]}" - TXT=$(minipro -L $cur) - COMPREPLY=( $(compgen -W '$TXT' -- ${cur}) ) - return 0 - fi + case "$prev" in + -p|--device|-d|--get_info) + if [ "$cur" != "" ]; then + TXT=$(minipro -L "$cur" < /dev/null 2>/dev/null ||:) + COMPREPLY=($(compgen -W '$TXT' -- ${cur})) + fi + ;; + -c|--page) + TXT="code data config" + COMPREPLY=($(compgen -W '$TXT' -- ${cur})) + ;; + -r|--read|-w|--write|--verify|-m|--update|-F) + _filedir + ;; + *) + case "$cur" in + -*) + TXT=$(minipro --help 2>&1 < /dev/null | grep -o -e '\(--[a-z_-]\+\)') + COMPREPLY=($(compgen -W '$TXT' -- ${cur})) + ;; + *) _filedir ;; + esac + ;; + esac } complete -F _minipro minipro