diff --git a/mswin32/Makefile b/mswin32/Makefile index 14f06c883..3f848be3e 100644 --- a/mswin32/Makefile +++ b/mswin32/Makefile @@ -15,7 +15,7 @@ winbuild: @cat ./nsis/Nmap.nsi | sed 's/VIProductVersion ".*"/VIProductVersion "$(NMAP_NUM_VERSION)"/' > ./nmap.nsi.tmp @cat ./nmap.nsi.tmp | sed 's/!define VERSION ".*"/!define VERSION "$(NMAP_VERSION)"/' > ./nsis/Nmap.nsi @rm ./nmap.nsi.tmp ./nmap.rc.tmp - @sed -f ./license-sed/lic_sedexp_1 ../COPYING | sed -f ./license-sed/lic_sedexp_2 | sed -f ./license-sed/lic_sedexp_3 | sed -f ./license-sed/lic_sedexp_4 > LICENSE + @./license-format/licformat.sh ../COPYING > LICENSE $(VCEXPRESS) nmap.sln /build release /log $(LOGLOC) $(MAKENSIS) winpcap/winpcap-nmap.nsi diff --git a/mswin32/license-format/licformat.sh b/mswin32/license-format/licformat.sh new file mode 100755 index 000000000..ef9ffec6a --- /dev/null +++ b/mswin32/license-format/licformat.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +sed -f ./license-format/licsed_1 $1 | tr '\n' ' '| awk 'NR==1{printf("\n%s", $0) }' | + +awk '{for (i=1&&j=2; i <= NF; i++&&j++) if($i=="SDFGHJdblnewline"){printf("\n\n")} +else if($i=="oSDFGHbullet"){printf(" \no ")} +else if($i=="Copyright" && $j=="(C)"){printf("\n%s ",$i)} +else if($i=="author" && $j=="Gnomovision"){printf("author\n")} +else if($i=="1989" && $j== "Ty"){printf("1989\n")} +else{printf("%s ",$i)}}' | + +sed -f ./license-format/licsed_2 diff --git a/mswin32/license-sed/lic_sedexp_1 b/mswin32/license-format/licsed_1 similarity index 61% rename from mswin32/license-sed/lic_sedexp_1 rename to mswin32/license-format/licsed_1 index bf6bd5496..9755001f3 100644 --- a/mswin32/license-sed/lic_sedexp_1 +++ b/mswin32/license-format/licsed_1 @@ -2,7 +2,7 @@ s@\*\*@@g # preserve double hyphens between words in GNU GPL -s@\([^\S\-]\)\-\-\([^\S\-]\)@\1SDFGHdbldash\2@g +s@\([^\-]\)\-\-\([^\-]\)@\1SDFGHdbldash\2@g # remove horizontal hyphens s@\-\-@@g @@ -11,22 +11,26 @@ s@\-\-@@g s@SDFGHdbldash@--@g # remove trailing asterisk -s@\s*\*\s*$@@g +s@[ ]*\*[ ]*$@@g # remove leading asterisk -s@^\s*\*\s*@@g +s@^[ ]*\*@@ # remove lonely slash s@^/$@@g # remove leading whitespace -s@^\s\+@@g +s@^[ ]*@@g # preserve bullets -s@^o\s@oSDFGHbullet@g +s@^o @ oSDFGHbullet @g # preserve sentence spacing -s@\.\s\s\(\S\)@.SDFGHJdblspace\1@g +s@\. \([A-Za-z0-9]\)@.SDFGHJdblspace\1@g # remove first line 1d + +# read entire input and preserve paragraph separation +s@^$@ SDFGHJdblnewline @ + diff --git a/mswin32/license-format/licsed_2 b/mswin32/license-format/licsed_2 new file mode 100644 index 000000000..1eab79c66 --- /dev/null +++ b/mswin32/license-format/licsed_2 @@ -0,0 +1,12 @@ + +# collapse whitespace +s@ @ @g +s@ $@@g + +2d + +# reintroduce bullets +s@oSDFGHbullet@o @g + +# reintroduce sentence spacing +s@SDFGHJdblspace@ @g diff --git a/mswin32/license-sed/lic_sedexp_2 b/mswin32/license-sed/lic_sedexp_2 deleted file mode 100644 index 30394cffb..000000000 --- a/mswin32/license-sed/lic_sedexp_2 +++ /dev/null @@ -1,8 +0,0 @@ -# read entire input and preserve paragraph separation - -: more -$!N -t enough -$!b more -: enough -s@\n\n@SDFGHJdblnewline@g diff --git a/mswin32/license-sed/lic_sedexp_3 b/mswin32/license-sed/lic_sedexp_3 deleted file mode 100644 index b3f6f29b1..000000000 --- a/mswin32/license-sed/lic_sedexp_3 +++ /dev/null @@ -1,8 +0,0 @@ -# read entire input and replace all newlines with a space - -: more -$!N -t enough -$!b more -: enough -s@\n@ @g diff --git a/mswin32/license-sed/lic_sedexp_4 b/mswin32/license-sed/lic_sedexp_4 deleted file mode 100644 index e45f68ca4..000000000 --- a/mswin32/license-sed/lic_sedexp_4 +++ /dev/null @@ -1,19 +0,0 @@ -# newline first line -s@^\s\(COPYING\)@\n\1@g - -# collapse whitespace -s@\s\s@ @g - -# reintroduce double newlines -s@SDFGHJdblnewline@\n\n@g - -# reintroduce bullets -s@oSDFGHbullet@\no @g - -# reintroduce sentence spacing -s@SDFGHJdblspace@ @g - -# Clean up GNU "How to apply" -s@\.\s\(Copyright (C) 19yy\)@\.\n\1@g -s@\(name\sof\sauthor\)\s\(Gnomovision\)@\1\n\2@g -s@1989 Ty Coon@1989\nTy Coon@g \ No newline at end of file