I have revised the Makefile rules to use objcopy instead of relying on ld to support binary format. The use of objdump was a historic quirk that only worked in a certain range of binutil versions. Objcopy should always have been used. Here are the patches to be applied in src/. I have tested this on a RH5.0 system and they generate the same binaries as before the change. Could people with older binutil systems, e.g. <= RH4.2, please let me know if they work. Cheers, Ken *** Makefile.old Wed Mar 18 00:09:55 1998 --- Makefile Sat Apr 18 19:15:04 1998 *************** *** 93,99 **** BINS+= $(shell if [ -f pci.c ] ; then echo nepci.lzrom nepci.rom lancepci.lzrom lancepci.rom; fi) CLEANFILES= $(START) $(BOBJS) $(DOBJS) $(TOBJS) CLEANFILES+= $(BLIB) $(DLIB) config-*.o $(UTILS) $(BINS) ! CLEANFILES+= *.com *.lzcom *.tmp *.tst *.bin lzhuf CLEANFILES+= $(shell if [ -f pci.c ] ; then echo nepci.o lancepci.o; fi) # nepci.o and lancpci.o are not included in DOBJS because they are the same # as the non-PCI versions but they have to be cleaned up also --- 93,99 ---- BINS+= $(shell if [ -f pci.c ] ; then echo nepci.lzrom nepci.rom lancepci.lzrom lancepci.rom; fi) CLEANFILES= $(START) $(BOBJS) $(DOBJS) $(TOBJS) CLEANFILES+= $(BLIB) $(DLIB) config-*.o $(UTILS) $(BINS) ! CLEANFILES+= *.com *.lzcom *.tmp *.tst *.bin *.huf lzhuf CLEANFILES+= $(shell if [ -f pci.c ] ; then echo nepci.o lancepci.o; fi) # nepci.o and lancpci.o are not included in DOBJS because they are the same # as the non-PCI versions but they have to be cleaned up also *************** *** 115,143 **** $(CC) $(LCONFIG) $(CFLAGS) $(ASFLAGS) -c -o $@ $< .o.rom: config-$*.o $(RLOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.bin $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) cat $(RLOADER) $*.bin > $@ ./makerom $@ .o.com: config-$*.o $(LOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.bin $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) cat $(LOADER) $*.bin > $@ .o.tst: config-$*.o $(RLOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.bin $(START) test.o config-$*.o $(BLIB) $(DLIB) $(LIBS) cat $(RLOADER) $*.bin > $@ ./makerom $@ .o.lzrom: config-$*.o $(RZLOADER) $(START) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! ./lzhuf e $*.tmp $*.bin ! cat $(RZLOADER) $*.bin > $@ ./makerom $@ .o.lzcom: config-$*.o $(ZLOADER) $(START) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! ./lzhuf e $*.tmp $*.bin ! cat $(ZLOADER) $*.bin > $@ .rom.fd0: $*.rom $(FLOPPYLOAD) cat $(FLOPPYLOAD) $*.rom > /dev/fd0 --- 115,148 ---- $(CC) $(LCONFIG) $(CFLAGS) $(ASFLAGS) -c -o $@ $< .o.rom: config-$*.o $(RLOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin cat $(RLOADER) $*.bin > $@ ./makerom $@ .o.com: config-$*.o $(LOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin cat $(LOADER) $*.bin > $@ .o.tst: config-$*.o $(RLOADER) $(START) ! $(LD) $(LDFLAGS) -o $*.tmp $(START) test.o config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin cat $(RLOADER) $*.bin > $@ ./makerom $@ .o.lzrom: config-$*.o $(RZLOADER) $(START) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin ! ./lzhuf e $*.bin $*.huf ! cat $(RZLOADER) $*.huf > $@ ./makerom $@ .o.lzcom: config-$*.o $(ZLOADER) $(START) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin ! ./lzhuf e $*.bin $*.huf ! cat $(ZLOADER) $*.huf > $@ .rom.fd0: $*.rom $(FLOPPYLOAD) cat $(FLOPPYLOAD) $*.rom > /dev/fd0 *************** *** 145,151 **** wd.rom: config-wd.o $(RLOADER) $(STDDEPS) 3c503.rom: config-3c503.o $(RLOADER) $(STDDEPS) ! $(LD) $(LDFLAGS) -o $*.bin $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) cat $(RLOADER) $*.bin > $@ ./makerom -3 $@ --- 150,157 ---- wd.rom: config-wd.o $(RLOADER) $(STDDEPS) 3c503.rom: config-3c503.o $(RLOADER) $(STDDEPS) ! $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin cat $(RLOADER) $*.bin > $@ ./makerom -3 $@ *************** *** 173,179 **** # all can't use the generic rule because there is no target all.o all.com: config-all.o $(LOADER) $(STDDEPS) ! $(LD) $(LDFLAGS) -o $*.bin $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) cat $(LOADER) $*.bin > $@ wd.com: config-wd.o $(LOADER) $(STDDEPS) --- 179,186 ---- # all can't use the generic rule because there is no target all.o all.com: config-all.o $(LOADER) $(STDDEPS) ! $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin cat $(LOADER) $*.bin > $@ wd.com: config-wd.o $(LOADER) $(STDDEPS) *************** *** 207,222 **** # all can't use the generic rule because there is no target all.o all.lzrom: config-all.o $(STDDEPS) $(RZLOADER) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! ./lzhuf e $*.tmp $*.bin ! cat $(RZLOADER) $*.bin > $@ ./makerom $@ wd.lzrom: config-wd.o $(RZLOADER) $(STDDEPS) 3c503.lzrom: config-3c503.o $(RZLOADER) $(STDDEPS) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! ./lzhuf e $*.tmp $*.bin ! cat $(RZLOADER) $*.bin > $@ ./makerom -3 $@ ne.lzrom: config-ne.o $(RZLOADER) $(STDDEPS) --- 214,231 ---- # all can't use the generic rule because there is no target all.o all.lzrom: config-all.o $(STDDEPS) $(RZLOADER) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin ! ./lzhuf e $*.bin $*.huf ! cat $(RZLOADER) $*.huf > $@ ./makerom $@ wd.lzrom: config-wd.o $(RZLOADER) $(STDDEPS) 3c503.lzrom: config-3c503.o $(RZLOADER) $(STDDEPS) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin ! ./lzhuf e $*.bin $*.huf ! cat $(RZLOADER) $*.huf > $@ ./makerom -3 $@ ne.lzrom: config-ne.o $(RZLOADER) $(STDDEPS) *************** *** 246,253 **** # all can't use the generic rule because there is no target all.o all.lzcom: config-all.o $(ZLOADER) $(STDDEPS) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! ./lzhuf e $*.tmp $*.bin ! cat $(ZLOADER) $*.bin > $@ wd.lzcom: config-wd.o $(ZLOADER) $(STDDEPS) --- 255,263 ---- # all can't use the generic rule because there is no target all.o all.lzcom: config-all.o $(ZLOADER) $(STDDEPS) $(LD) $(LDFLAGS) -o $*.tmp $(START) config-$*.o $(BLIB) $(DLIB) $(LIBS) ! $(OBJCOPY) $*.tmp $*.bin ! ./lzhuf e $*.bin $*.huf ! cat $(ZLOADER) $*.huf > $@ wd.lzcom: config-wd.o $(ZLOADER) $(STDDEPS) *** Config.16.old Tue Mar 10 19:09:45 1998 --- Config.16 Sat Apr 18 19:20:59 1998 *************** *** 9,14 **** --- 9,23 ---- # information. # -DMOTD - Display message of the day; read vendortags.html # for further information. + # -DANSIESC - evaluate a subset of common ANSI escape sequences + # when displaying the message of the day; this + # probably does not make sense unless you also + # define -DMOTD or at least -DIMAGE_MENU. + # Combining this option with -DSERIAL_CONSOLE + # is a waste of EPROM space. + # -DGFX - support extensions to the ANSI escape sequences for + # displaying graphics (icons or logos); this + # requires -DANSIESC # -DASK_BOOT=n - Ask "Boot from Network (Y/N) ?" at startup # timeout after n seconds (0 = no timeout); this # can be done in a more generic way by using the *************** *** 40,46 **** # -DT503_AUI - Use AUI by default on 3c503 cards. # ! CFLAGS+= # -DDHCP_SUPPORT # CFLAGS+= -DASK_BOOT=5 -DDEFAULT_ANSWER=\'Y\' # These are experimental extra features --- 49,55 ---- # -DT503_AUI - Use AUI by default on 3c503 cards. # ! CFLAGS+= -DDHCP_SUPPORT # CFLAGS+= -DASK_BOOT=5 -DDEFAULT_ANSWER=\'Y\' # These are experimental extra features *************** *** 56,58 **** --- 65,68 ---- # for example: -A-l -A$*.rl LDFLAGS+= -s LIBS= /usr/bcc/lib/bcc/i86/libc.a + OBJCOPY= cp *** Config.32.old Tue Mar 10 19:04:38 1998 --- Config.32 Sat Apr 18 19:20:28 1998 *************** *** 9,14 **** --- 9,23 ---- # information. # -DMOTD - Display message of the day; read vendortags.html # for further information. + # -DANSIESC - evaluate a subset of common ANSI escape sequences + # when displaying the message of the day; this + # probably does not make sense unless you also + # define -DMOTD or at least -DIMAGE_MENU. + # Combining this option with -DSERIAL_CONSOLE + # is a waste of EPROM space. + # -DGFX - support extensions to the ANSI escape sequences for + # displaying graphics (icons or logos); this + # requires -DANSIESC # -DASK_BOOT=n - Ask "Boot from Network (Y/N) ?" at startup # timeout after n seconds (0 = no timeout); this # can be done in a more generic way by using the *************** *** 44,58 **** # -DCOMPORT - 0x0 for COM1, 0x1 for COM2 etc # -DCOMPARM - configuration for COMPORT, save values: # 0xe3 == 9600/8n1, 0xa3 == 2400/8n1 - # -DANSIESC - evaluate a subset of common ANSI escape sequences - # when displaying the message of the day; this - # probably does not make sense unless you also - # define -DMOTD or at least -DIMAGE_MENU. - # Combining this option with -DSERIAL_CONSOLE - # is a waste of EPROM space. - # -DGFX - support extensions to the ANSI escape sequences for - # displaying graphics (icons or logos); this - # requires -DANSIESC # -DPASSWD - enable password protection for boot images; this # requires -DIMAGE_MENU # -DUSRPARMS - allow the user to interactively edit parameters --- 53,58 ---- *************** *** 92,96 **** CFLAGS+= -O2 -fstrength-reduce -fomit-frame-pointer -m386 CFLAGS+= -Wall -Wno-format -Wno-unused ASFLAGS= ! LDFLAGS+= -N -Ttext $(RELOCADDR) -e _start -nostdlib -oformat binary -s LIBS= --- 92,97 ---- CFLAGS+= -O2 -fstrength-reduce -fomit-frame-pointer -m386 CFLAGS+= -Wall -Wno-format -Wno-unused ASFLAGS= ! LDFLAGS+= -N -Ttext $(RELOCADDR) -e _start -nostdlib LIBS= + OBJCOPY= objcopy -O binary
For requests or suggestions regarding this mailing list archive please write to netboot@gkminix.han.de.