From d4c776e3089f7b7a898f171af21c9439a0303cdb Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Tue, 23 Jan 2018 10:11:35 +0900 Subject: [PATCH] Fix the procedure to put VID:PID. Apply the procedure to regnual. --- ChangeLog | 10 ++++++++++ regnual/Makefile | 10 +++++++--- regnual/regnual.c | 6 ++++-- src/Makefile | 2 +- src/configure | 3 +-- 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5bc04ba..e9e77e0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2018-01-23 NIIBE Yutaka + + * src/Makefile (build/gnuk-vidpid.elf): Supply FILE here. + * src/configure (output_vendor_product_serial_strings): For + generating put-vid-pid-ver.sh, don't set FILE. + + * regnual/regnual.c (regnual_device_desc): Make this array as a + template. + * regnual/Makefile (regnual.elf): Substitute VID:PID. + 2018-01-22 NIIBE Yutaka * src/openpgp.c (USER_PASSWD_MINLEN): New. diff --git a/regnual/Makefile b/regnual/Makefile index f150597..72b499c 100644 --- a/regnual/Makefile +++ b/regnual/Makefile @@ -1,6 +1,6 @@ # Makefile for reGNUal -PROJECT = regnual +PROJECT = regnual-no-vidpid OBJS = regnual.o usb-stm32f103.o reset.o @@ -41,11 +41,15 @@ regnual.hex: regnual.elf $(OBJCOPY) -Obinary regnual.elf regnual.bin $(OBJCOPY) -Oihex regnual.elf regnual.hex +regnual.elf: regnual-no-vidpid.elf + cp -p regnual-no-vidpid.elf regnual.elf + env FILE="regnual.elf" PATH="../src:$$PATH" bash put-vid-pid-ver.sh + usb-stm32f103.o: ../chopstx/mcu/usb-stm32f103.c $(CC) $(CFLAGS) -c -o usb-stm32f103.o ../chopstx/mcu/usb-stm32f103.c -regnual.elf: $(OBJS) $(LDSCRIPT) - $(CC) $(LDFLAGS) -o regnual.elf $(OBJS) +regnual-no-vidpid.elf: $(OBJS) $(LDSCRIPT) + $(CC) $(LDFLAGS) -o regnual-no-vidpid.elf $(OBJS) clean: -rm -f $(OBJS) regnual.elf regnual.hex regnual.bin *.lst diff --git a/regnual/regnual.c b/regnual/regnual.c index bb1d6bf..16326e2 100644 --- a/regnual/regnual.c +++ b/regnual/regnual.c @@ -1,7 +1,7 @@ /* * regnual.c -- Firmware installation for STM32F103 Flash ROM * - * Copyright (C) 2012, 2013, 2015, 2016, 2017 + * Copyright (C) 2012, 2013, 2015, 2016, 2017, 2018 * Free Software Initiative of Japan * Author: NIIBE Yutaka * @@ -57,7 +57,9 @@ static const uint8_t regnual_device_desc[] = { 0x00, /* bDeviceSubClass */ 0x00, /* bDeviceProtocol */ 0x40, /* bMaxPacketSize0 */ -#include "../src/usb-vid-pid-ver.c.inc" + 0x00, 0x00, /* idVendor (will be replaced) */ + 0x00, 0x00, /* idProduct (will be replaced) */ + 0x00, 0x00, /* bcdDevice (will be replaced) */ 1, /* Index of string descriptor describing manufacturer */ 2, /* Index of string descriptor describing product */ 3, /* Index of string descriptor describing the device's serial number */ diff --git a/src/Makefile b/src/Makefile index a321d04..63b0522 100644 --- a/src/Makefile +++ b/src/Makefile @@ -79,7 +79,7 @@ distclean: clean ifeq ($(EMULATION),) build/gnuk-vidpid.elf: build/gnuk.elf binary-edit.sh put-vid-pid-ver.sh cp -p build/gnuk.elf build/gnuk-vidpid.elf - bash put-vid-pid-ver.sh + env FILE="build/gnuk-vidpid.elf" bash put-vid-pid-ver.sh $(OBJCOPY) -O ihex build/gnuk-vidpid.elf build/gnuk-vidpid.hex $(OBJCOPY) -O binary build/gnuk-vidpid.elf build/gnuk-vidpid.bin else diff --git a/src/configure b/src/configure index ebc11ff..e959bef 100755 --- a/src/configure +++ b/src/configure @@ -408,8 +408,7 @@ output_vendor_product_serial_strings () { (echo "#! /bin/bash" echo - echo 'FILE="build/gnuk-vidpid.elf"' - echo '. "binary-edit.sh"') > put-vid-pid-ver.sh + echo 'source "binary-edit.sh"') > put-vid-pid-ver.sh if !(IFS=" " while read -r VIDPID VERSION PRODUCT VENDOR; do