diff options
author | H. Peter Anvin <hpa@zytor.com> | 2008-06-15 18:33:03 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-06-15 18:33:03 -0700 |
commit | 19b741835f684191f35c05d21c1b098a80a96410 (patch) | |
tree | 99ed31df1b40d81f0d488c3b4ae408ad658de642 | |
parent | 6f4252afeac7e11092601738b8f60e037245010b (diff) | |
download | nasm-19b741835f684191f35c05d21c1b098a80a96410.tar.gz nasm-19b741835f684191f35c05d21c1b098a80a96410.tar.bz2 nasm-19b741835f684191f35c05d21c1b098a80a96410.zip |
syncfiles: handle the case of the null path separator
Correctly handle the null path separator (meaning remove the directory
portion entirely.)
-rw-r--r-- | Mkfiles/netware.mak | 10 | ||||
-rwxr-xr-x | syncfiles.pl | 12 |
2 files changed, 15 insertions, 7 deletions
diff --git a/Mkfiles/netware.mak b/Mkfiles/netware.mak index 775ead9..6f72dd5 100644 --- a/Mkfiles/netware.mak +++ b/Mkfiles/netware.mak @@ -33,11 +33,11 @@ O = o NASM = nasm.o nasmlib.o raa.o saa.o \ float.o insnsa.o insnsb.o \ assemble.o labels.o hashtbl.o crc64.o parser.o \ - outform.o output/outbin.o \ - output/outaout.o output/outcoff.o \ - output/outelf32.o output/outelf64.o \ - output/outobj.o output/outas86.o output/outrdf2.o \ - output/outdbg.o output/outieee.o output/outmacho.o \ + outform.o outbin.o \ + outaout.o outcoff.o \ + outelf32.o outelf64.o \ + outobj.o outas86.o outrdf2.o \ + outdbg.o outieee.o outmacho.o \ preproc.o quote.o pptok.o macros.o \ listing.o eval.o exprlib.o stdscan.o strfunc.o \ tokhash.o regvals.o regflags.o diff --git a/syncfiles.pl b/syncfiles.pl index ea77ca4..bd40ff2 100755 --- a/syncfiles.pl +++ b/syncfiles.pl @@ -11,11 +11,19 @@ sub do_transform($$) { my($l, $h) = @_; + my($ps) = $$h{'path-separator'}; $l =~ s/\x01/$$h{'object-ending'}/g; - $l =~ s/\x02/$$h{'path-separator'}/g; $l =~ s/\x03/$$h{'continuation'}/g; + if ($ps eq '') { + # Remove the path separator and the preceeding directory + $l =~ s/\S*\x02//g; + } else { + # Convert the path separator + $l =~ s/\x02/$ps/g; + } + return $l; } @@ -31,7 +39,7 @@ foreach $file (@ARGV) { # First, read the syntax hints %hints = %def_hints; while (defined($line = <FILE>)) { - if ($line =~ /^\#\s+\@(\S+)\:\s*\"([^\"]+)\"/) { + if ($line =~ /^\#\s+\@(\S+)\:\s*\"([^\"]*)\"/) { $hints{$1} = $2; } } |