update scripts to work with make install

This commit is contained in:
Philippe Teuwen 2019-08-30 23:35:29 +02:00
commit 595fde5312
9 changed files with 63 additions and 44 deletions

View file

@ -18,20 +18,24 @@ all clean install uninstall: %: client/% bootrom/% armsrc/% recovery/% mfkey/% n
INSTALLTOOLS=pm3_eml2lower.sh pm3_eml2upper.sh pm3_mfdread.py pm3_mfd2eml.py pm3_eml2mfd.py findbits.py rfidtest.pl xorcheck.py
INSTALLSIMFW=sim011.bin sim011.sha512.txt
INSTALLSCRIPTS=pm3 pm3-flash-all pm3-flash-bootrom pm3-flash-fullimage
INSTALLSHARES=tools/jtag_openocd traces
INSTALLDOCS=doc/*.md doc/md
install: all
$(info [@] Installing common resources to $(MYDESTDIR)$(PREFIX)...)
ifneq (,$(INSTALLSCRIPTS))
$(Q)$(MKDIR) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)
# TODO scripts must be adapted, they're currently broken
$(Q)$(CP) proxmark3.sh $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3
$(Q)$(CP) flash-all.sh $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-all
$(Q)$(CP) flash-bootrom.sh $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-bootrom
$(Q)$(CP) flash-fullimage.sh $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-fullimage
$(Q)$(CP) $(INSTALLSCRIPTS) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)
endif
ifneq (,$(INSTALLSHARES))
$(Q)$(MKDIR) $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)
$(Q)$(CP) tools/jtag_openocd $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)
$(Q)$(CP) traces $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)
$(Q)$(MKDIR) $(DESTDIR)$(PREFIX)$(INSTALLDOCRELPATH)
$(Q)$(CP) doc/* $(DESTDIR)$(PREFIX)$(INSTALLDOCRELPATH)
$(Q)$(CP) $(INSTALLSHARES) $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)
endif
ifneq (,$(INSTALLDOCS))
$(Q)$(MKDIR) $(DESTDIR)$(PREFIX)$(INSTALLDOCSRELPATH)
$(Q)$(CP) $(INSTALLDOCS) $(DESTDIR)$(PREFIX)$(INSTALLDOCSRELPATH)
endif
ifneq (,$(INSTALLTOOLS))
$(Q)$(MKDIR) $(DESTDIR)$(PREFIX)$(INSTALLTOOLSRELPATH)
$(Q)$(CP) $(foreach tool,$(INSTALLTOOLS),tools/$(tool)) $(DESTDIR)$(PREFIX)$(INSTALLTOOLSRELPATH)
@ -47,13 +51,16 @@ endif
uninstall:
$(info [@] Uninstalling common resources from $(MYDESTDIR)$(PREFIX)...)
$(Q)$(RM) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3
$(Q)$(RM) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-all
$(Q)$(RM) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-bootrom
$(Q)$(RM) $(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)/pm3-flash-fullimage
$(Q)$(RMDIR) $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)/jtag_openocd
$(Q)$(RMDIR) $(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)/traces
$(Q)$(RMDIR) $(DESTDIR)$(PREFIX)$(INSTALLDOCRELPATH)
ifneq (,$(INSTALLSCRIPTS))
$(Q)$(RM) $(foreach script,$(INSTALLSCRIPTS),$(DESTDIR)$(PREFIX)$(INSTALLBINRELPATH)$(notdir $(script)))
endif
ifneq (,$(INSTALLSHARES))
$(Q)$(RMDIR) $(foreach share,$(INSTALLSHARES),$(DESTDIR)$(PREFIX)$(INSTALLSHARERELPATH)$(notdir $(share)))
endif
ifneq (,$(INSTALLDOCS))
$(Q)$(RMDIR) $(foreach doc,$(INSTALLDOCS),$(DESTDIR)$(PREFIX)$(INSTALLDOCSRELPATH)$(notdir $(doc)))
$(Q)$(RMDIR_SOFT) $(DESTDIR)$(PREFIX)$(INSTALLDOCSRELPATH)
endif
ifneq (,$(INSTALLTOOLS))
$(Q)$(RM) $(foreach tool,$(INSTALLTOOLS),$(DESTDIR)$(PREFIX)$(INSTALLTOOLSRELPATH)$(notdir $(tool)))
endif

View file

@ -32,7 +32,7 @@ INSTALLBINRELPATH = /bin/
INSTALLSHARERELPATH = /share/proxmark3/
INSTALLFWRELPATH = /share/proxmark3/firmware/
INSTALLTOOLSRELPATH = /share/proxmark3/tools/
INSTALLDOCRELPATH = /share/doc/proxmark3/
INSTALLDOCSRELPATH = /share/doc/proxmark3/
platform = $(shell uname)
DETECTED_OS=$(platform)

View file

@ -1,5 +0,0 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
cd "$PM3PATH" || exit 1
. proxmark3.sh

View file

@ -1,5 +0,0 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
cd "$PM3PATH" || exit 1
. proxmark3.sh

View file

@ -1,5 +0,0 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
cd "$PM3PATH" || exit 1
. proxmark3.sh

View file

@ -1,10 +1,25 @@
#!/bin/bash
FULLIMAGE="armsrc/obj/fullimage.elf"
BOOTIMAGE="bootrom/obj/bootrom.elf"
PM3PATH=$(dirname "$0")
cd "$PM3PATH" || exit 1
# try pm3 dirs in current repo workdir
if [ -d "$PM3PATH/client/" ]; then
CLIENT="$PM3PATH/client/proxmark3"
FLASHER="$PM3PATH/client/proxmark3-flasher"
FULLIMAGE="$PM3PATH/armsrc/obj/fullimage.elf"
BOOTIMAGE="$PM3PATH/bootrom/obj/bootrom.elf"
# try install dir
elif [ -x "$PM3PATH/proxmark3" ]; then
CLIENT="$PM3PATH/proxmark3"
FLASHER="$PM3PATH/proxmark3-flasher"
FULLIMAGE="$PM3PATH/../share/proxmark3/firmware/fullimage.elf"
BOOTIMAGE="$PM3PATH/../share/proxmark3/firmware/bootrom.elf"
else
# hope it's installed somehow, still not sure where fw images are...
CLIENT="proxmark3"
FLASHER="proxmark3-flasher"
FULLIMAGE="$PM3PATH/../share/proxmark3/firmware/fullimage.elf"
BOOTIMAGE="$PM3PATH/../share/proxmark3/firmware/bootrom.elf"
fi
function wait4proxmark_Linux {
echo >&2 "[=] Waiting for Proxmark3 to appear..."
@ -63,14 +78,14 @@ function wait4proxmark_WSL {
SCRIPT=$(basename -- "$0")
if [ "$SCRIPT" = "proxmark3.sh" ]; then
CMD() { client/proxmark3 "$@"; }
elif [ "$SCRIPT" = "flash-all.sh" ]; then
CMD() { client/flasher "$1" -b "$BOOTIMAGE" "$FULLIMAGE"; }
elif [ "$SCRIPT" = "flash-fullimage.sh" ]; then
CMD() { client/flasher "$1" "$FULLIMAGE"; }
elif [ "$SCRIPT" = "flash-bootrom.sh" ]; then
CMD() { client/flasher "$1" -b "$BOOTIMAGE"; }
if [ "$SCRIPT" = "pm3" ]; then
CMD() { $CLIENT "$@"; }
elif [ "$SCRIPT" = "pm3-flash-all" ]; then
CMD() { $FLASHER "$1" -b "$BOOTIMAGE" "$FULLIMAGE"; }
elif [ "$SCRIPT" = "pm3-flash-fullimage" ]; then
CMD() { $FLASHER "$1" "$FULLIMAGE"; }
elif [ "$SCRIPT" = "pm3-flash-bootrom" ]; then
CMD() { $FLASHER "$1" -b "$BOOTIMAGE"; }
else
echo "[!!] Script ran under unknown name, abort: $SCRIPT"
exit 1

4
pm3-flash-all Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
. "$PM3PATH/pm3"

4
pm3-flash-bootrom Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
. "$PM3PATH/pm3"

4
pm3-flash-fullimage Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
PM3PATH=$(dirname "$0")
. "$PM3PATH/pm3"