changeset 24:a4899cdfc2d6 default tip

Obfuscate the regexps to strip off the IBM compiler's copyright banners. I don't want bots scanning github to think they're real copyright notices because that could cause real problems.
author David A. Holland
date Mon, 13 Jun 2022 00:40:23 -0400
parents cac4c76600eb
children
files ibmscripts/cc ibmscripts/ldcc ibmscripts/shldcc
diffstat 3 files changed, 64 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/ibmscripts/cc	Mon Jun 13 00:17:10 2022 -0400
+++ b/ibmscripts/cc	Mon Jun 13 00:40:23 2022 -0400
@@ -93,10 +93,21 @@
     echo "@@@Exit $?"
 ) 2>&1 | tr -d '\r' | tee "$LOG" | (
     if [ $QUIET = 1 ]; then
+      #
+      # The compiler prints its copyright banner every time you run
+      # it, that is, on every file, and there's apparently no way to
+      # fully suppress this.  So, since this is extremely annoying and
+      # interferes with development, delete the strings from the
+      # output. Obfuscate the regexps slightly, because I want them
+      # to be precise (no other messages should be suppressed) but I
+      # also don't want to be harassed by source-scanning bots or
+      # (perhaps) clueless lawyers that think they're actual IBM
+      # copyright notices. I wrote this script; it's not IBM's.
+      #
       sed '
-        /^IBM(R) VisualAge(TM) for C++ for Windows(R), Version 3\.5$/d
-        /^- Licensed Materials - Program-Property of IBM$/d
-        /^(C) Copyright IBM Corp. 1991, 1996 - All Rights Reserved.$/d
+        /^[I][B][M](.) VisualAge(..) for C++ for Windows(.), Version 3\.5$/d
+        /^- [L]icensed [M]aterials - Program-[P]roperty of [I][B][M]$/d
+        /^(.) [C]opyright [I][B][M] [C]orp. 1991, 1996 - [A]ll [R]ights [R]eserved.$/d
       '
     else
       cat
--- a/ibmscripts/ldcc	Mon Jun 13 00:17:10 2022 -0400
+++ b/ibmscripts/ldcc	Mon Jun 13 00:40:23 2022 -0400
@@ -67,15 +67,31 @@
     echo "@@@Exit $?"
 ) 2>&1 | tr -d '\r' | tee "$LOGFILE" | (
     if [ $QUIET = 1 ]; then
+      #
+      # The compiler prints its copyright banner every time you run
+      # it, and there's apparently no way to fully suppress this.
+      # (That is, I think the /Q+ flag above silences some messages
+      # but not all of them.) So, since this is extremely annoying and
+      # interferes with development, delete the strings from the
+      # output. Obfuscate the regexps slightly, because I want them to
+      # be precise (no other messages should be suppressed) but I also
+      # don't want to be harassed by source-scanning bots or (perhaps)
+      # clueless lawyers that think they're actual IBM copyright
+      # notices. I wrote this script; it's not IBM's. (Or Microsoft's,
+      # either.)
+      #
+      # Note that the strings with the first character missing are not
+      # an accident. That actually happens.
+      #
       sed '
-	/^IBM(R) VisualAge(TM) for C++ for Windows(R), Version 3\.5$/d
-	/^- Licensed Materials - Program-Property of IBM$/d
-	/^(C) Copyright IBM Corp. 1991, 1996 - All Rights Reserved.$/d
-	/^BM(R) Linker for Windows(R), %0$/d
+	/^[I][B][M](.) VisualAge(..) for C++ for Windows(.), Version 3\.5$/d
+	/^- [L]icensed [M]aterials - Program-[P]roperty of [I][B][M]$/d
+	/^(.) [C]opyright [I][B][M] [C]orp. 1991, 1996 - [A]ll [R]ights [R]eserved.$/d
+	/^[B][M](.) Linker for Windows(.), %0$/d
 	/^ersion 02.01.r2a_WTC354e *$/d
-	/^opyright (C) IBM Corporation 1988, 1998\.$/d
-	/^Copyright (C) Microsoft Corp\. 1988, 1989\.$/d
-	/^All rights reserved\.$/d
+	/^[o]pyright (.) [I][B][M] [C]orporation 1988, 1998\.$/d
+	/^[C]opyright (.) [M]icrosoft [C]orp\. 1988, 1989\.$/d
+	/^[A]ll [r]ights [r]eserved\.$/d
       '
     else
       cat
--- a/ibmscripts/shldcc	Mon Jun 13 00:17:10 2022 -0400
+++ b/ibmscripts/shldcc	Mon Jun 13 00:40:23 2022 -0400
@@ -56,21 +56,37 @@
     echo "@@@Exit $?"
 ) 2>&1 | tr -d '\r' | tee "$LOGFILE" | (
     if [ $QUIET = 1 ]; then
+      #
+      # The compiler prints its copyright banner every time you run
+      # it, and there's apparently no way to fully suppress this.
+      # (That is, I think the /Q+ flag above silences some messages
+      # but not all of them.) So, since this is extremely annoying and
+      # interferes with development, delete the strings from the
+      # output. Obfuscate the regexps slightly, because I want them to
+      # be precise (no other messages should be suppressed) but I also
+      # don't want to be harassed by source-scanning bots or (perhaps)
+      # clueless lawyers that think they're actual IBM copyright
+      # notices. I wrote this script; it's not IBM's. (Or Microsoft's,
+      # either.)
+      #
+      # Note that the strings with the first character missing are not
+      # an accident. That actually happens.
+      #
       sed '
-	/^IBM Librarian for Windows (TM) Version 0.00.04 cc_WTC357f $/d
-	/^(C) Copyright IBM Corporation, 1991, 1996\.$/d
-	/^(C) Copyright Microsoft Corp\., 1988, 1989\.$/d
-	/^Licensed Materials - Property of IBM - All Rights Reserved\.$/d
+	/^[I][B][M] Librarian for Windows (..) Version 0.00.04 cc_WTC357f $/d
+	/^(.) [C]opyright [I][B][M] [C]orporation, 1991, 1996\.$/d
+	/^(.) [C]opyright [M]icrosoft [C]orp\., 1988, 1989\.$/d
+	/^[L]icensed [M]aterials - [P]roperty of [I][B][M] - [A]ll [R]ights [R]eserved\.$/d
 
-	/^IBM(R) VisualAge(TM) for C++ for Windows(R), Version 3\.5$/d
-	/^- Licensed Materials - Program-Property of IBM$/d
-	/^(C) Copyright IBM Corp. 1991, 1996 - All Rights Reserved.$/d
+	/^[I][B][M](.) VisualAge(..) for C++ for Windows(.), Version 3\.5$/d
+	/^- [L]icensed [M]aterials - Program-[P]roperty of [I][B][M]$/d
+	/^(.) [C]opyright [I][B][M] [C]orp. 1991, 1996 - [A]ll [R]ights [R]eserved.$/d
 
-	/^BM(R) Linker for Windows(R), %0$/d
+	/^[B][M](.) Linker for Windows(.), %0$/d
 	/^ersion 02.01.r2a_WTC354e *$/d
-	/^opyright (C) IBM Corporation 1988, 1998\.$/d
-	/^Copyright (C) Microsoft Corp\. 1988, 1989\.$/d
-	/^All rights reserved\.$/d
+	/^[o]pyright (.) [I][B][M] [C]orporation 1988, 1998\.$/d
+	/^[C]opyright (.) [M]icrosoft [C]orp\. 1988, 1989\.$/d
+	/^[A]ll [r]ights [r]eserved\.$/d
       '
     else
       cat