2002-11-04 Theodore A. Roth * app/Makedefs.gcc (BURNFLAGS): Add -dpart option so stk500 works. Might need the latest uisp from cvs to have this work with stk200. * configure: Remove '\r' (carriage returns) as it makes /bin/sh puke. * tools/crurom/crurom.c: Make it compile on linux. The shipped binary in tools/linux is broken. Copy the new binary to tools/linux before building the apps. diff -urN nut-2.5.91/app/Makedefs.gcc nut-2.5.91-troth/app/Makedefs.gcc --- nut-2.5.91/app/Makedefs.gcc 2002-11-02 08:55:28.000000000 -0800 +++ nut-2.5.91-troth/app/Makedefs.gcc 2002-11-04 09:58:01.000000000 -0800 @@ -75,4 +75,4 @@ CPFLAGS = $(MCFLAGS) -Os -Wall -Werror -Wstrict-prototypes -Wa,-ahlms=$(<:.c=.lst) $(DEFS) #CPFLAGS = -g $(MCFLAGS) -O0 -Wall -Wstrict-prototypes -Wa,-ahlms=$(<:.c=.lst) $(DEFS) LDFLAGS = $(MCFLAGS) -Wl,-Map=$(PROJ).map,--cref -L$(LIBDIR) -BURNFLAGS = -dprog=$(UISP_PROG) --erase --upload --verify if=$(TARG) +BURNFLAGS = -dprog=$(UISP_PROG) -dpart=$(MCU) --erase --upload --verify if=$(TARG) diff -urN nut-2.5.91/configure nut-2.5.91-troth/configure --- nut-2.5.91/configure 2002-10-31 08:36:34.000000000 -0800 +++ nut-2.5.91-troth/configure 2002-11-04 09:52:41.000000000 -0800 @@ -1,84 +1,84 @@ -#! /bin/sh - -if [ "x`uname`" != "xLinux" ] -then - echo "This is not a Linux system. I'm so confused!" - exit 1 -fi - -# Verify that avr-gcc is in the users PATH - -if ! avr-gcc --version >/dev/null 2>&1 -then - echo "Can't find avr-gcc. :-(" - echo "" - echo "This could mean either of the following:" - echo " 1: You don't have avr-gcc installed." - echo " 2: You don't have your PATH environment variable set right." - echo "Here is your PATH variable:" - echo "" - echo $PATH - echo "" - exit 1 -fi - -# Make links to included make fragments - -[ -f Makedefs ] || ln -s Makedefs.gcc Makedefs -[ -f Makerules ] || ln -s Makerules.gcc Makerules - -[ -f app/Makedefs ] || ln -s Makedefs.gcc app/Makedefs -[ -f app/Makerules ] || ln -s Makerules.gcc app/Makerules - -# Ask user which device to target - -unset DEV -while [ "x$DEV" = "x" ] -do - echo "Select a target device:" - echo "" - echo " 1) ATmega128" - echo " 2) ATmega103" - echo "" - echo -n "Selection -> " - read answ - - case "$answ" in - 1) DEV=atmega128 ;; - 2) DEV=atmega103 ;; - *) - echo "invalid choice" ;; - esac -done - -# Ask which isp programmer is being used - -unset UISP_PROG -while [ "x$UISP_PROG" = "x" ] -do - echo "Which isp programmer are you using?" - echo "" - echo " 1) stk200, stk300 or compatible" - echo " 2) skt500" - echo "" - echo -n "Selection -> " - read answ - - case "$answ" in - 1) UISP_PROG=stk200 ;; - 2) UISP_PROG=stk500 ;; - *) - echo "invalid choice" ;; - esac -done - -# Generate the config file - -cat < UserConf.mk -MCU=$DEV -UISP_PROG=$UISP_PROG -CRUROM = \$(top_srcdir)/tools/linux/crurom -EOF - -echo "Your system is now configured to build for $DEV." -echo "Type \`make\` to build the system." +#! /bin/sh + +if [ "x`uname`" != "xLinux" ] +then + echo "This is not a Linux system. I'm so confused!" + exit 1 +fi + +# Verify that avr-gcc is in the users PATH + +if ! avr-gcc --version >/dev/null 2>&1 +then + echo "Can't find avr-gcc. :-(" + echo "" + echo "This could mean either of the following:" + echo " 1: You don't have avr-gcc installed." + echo " 2: You don't have your PATH environment variable set right." + echo "Here is your PATH variable:" + echo "" + echo $PATH + echo "" + exit 1 +fi + +# Make links to included make fragments + +[ -f Makedefs ] || ln -s Makedefs.gcc Makedefs +[ -f Makerules ] || ln -s Makerules.gcc Makerules + +[ -f app/Makedefs ] || ln -s Makedefs.gcc app/Makedefs +[ -f app/Makerules ] || ln -s Makerules.gcc app/Makerules + +# Ask user which device to target + +unset DEV +while [ "x$DEV" = "x" ] +do + echo "Select a target device:" + echo "" + echo " 1) ATmega128" + echo " 2) ATmega103" + echo "" + echo -n "Selection -> " + read answ + + case "$answ" in + 1) DEV=atmega128 ;; + 2) DEV=atmega103 ;; + *) + echo "invalid choice" ;; + esac +done + +# Ask which isp programmer is being used + +unset UISP_PROG +while [ "x$UISP_PROG" = "x" ] +do + echo "Which isp programmer are you using?" + echo "" + echo " 1) stk200, stk300 or compatible" + echo " 2) skt500" + echo "" + echo -n "Selection -> " + read answ + + case "$answ" in + 1) UISP_PROG=stk200 ;; + 2) UISP_PROG=stk500 ;; + *) + echo "invalid choice" ;; + esac +done + +# Generate the config file + +cat < UserConf.mk +MCU=$DEV +UISP_PROG=$UISP_PROG +CRUROM = \$(top_srcdir)/tools/linux/crurom +EOF + +echo "Your system is now configured to build for $DEV." +echo "Type \`make\` to build the system." diff -urN nut-2.5.91/tools/crurom/crurom.c nut-2.5.91-troth/tools/crurom/crurom.c --- nut-2.5.91/tools/crurom/crurom.c 2002-08-08 08:23:19.000000000 -0700 +++ nut-2.5.91-troth/tools/crurom/crurom.c 2002-11-04 09:56:23.000000000 -0800 @@ -21,6 +21,15 @@ #include #endif +#ifndef O_BINARY +#define O_BINARY 0 +#endif + +#ifdef __linux__ +#define stricmp strcasecmp +#define strnicmp strncasecmp +#endif + #include "getopt.h" #define IDENT "crurom" @@ -32,7 +41,7 @@ static char rootdir[256]; static int rootlen = 0; static char outname[256]; -static FILE *fpout = stdout; +static FILE *fpout; int dofile(char *name) { @@ -159,6 +168,10 @@ return 3; } } + else + { + fpout = stdout; + } fprintf(fpout, "/*\n"); fprintf(fpout, " * This file is automatically created by " IDENT " " VERSION "\n");