4898794edd81be5285ea6e544acbedeaeb31bf78
max
  Tue Nov 23 08:10:57 2021 -0800
Fixing pointers to README file for license in all source code files. refs #27614

diff --git src/hg/genePredToFakePsl/genePredToFakePsl.c src/hg/genePredToFakePsl/genePredToFakePsl.c
index 9fc57a2..084ab7a 100644
--- src/hg/genePredToFakePsl/genePredToFakePsl.c
+++ src/hg/genePredToFakePsl/genePredToFakePsl.c
@@ -1,130 +1,130 @@
 /* genePredToFakePsl - create fake .psl of mRNA aligned to dna from genePred file or table. */
 
 /* Copyright (C) 2013 The Regents of the University of California 
- * See README in this or parent directory for licensing information. */
+ * See kent/LICENSE or http://genome.ucsc.edu/license/ for licensing information. */
 #include "common.h"
 #include "options.h"
 #include "portable.h"
 #include "hash.h"
 #include "hdb.h"
 #include "genbank.h"
 #include "genePred.h"
 #include "genePredReader.h"
 #include "psl.h"
 
 
 /* Command line switches. */
 static char *chromSizes = NULL;  /* read chrom sizes from file instead of database . */
 static char *qSizes = NULL;  /* read query sizes from file */
 static struct hash *qSizeHash = NULL;  /* key is name, value is size */
 
 /* Command line option specifications */
 static struct optionSpec optionSpecs[] = {
     {"chromSize", OPTION_STRING},
     {"qSizes", OPTION_STRING},
     {NULL, 0}
 };
 
 void usage()
 /* Explain usage and exit. */
 {
 errAbort(
   "genePredToFakePsl - Create a psl of fake-mRNA aligned to gene-preds from a file or table.\n"
   "usage:\n"
   "   genePredToFakePsl [options] db fileTbl pslOut cdsOut\n"
   "\n"
   "If fileTbl is an existing file, then it is used.\n"
   "Otherwise, the table by this name is used.\n"
   "\n"
   "pslOut specifies the fake-mRNA output psl filename.\n"
   "\n"
   "cdsOut specifies the output cds tab-separated file which contains\n"
   "genbank-style CDS records showing cdsStart..cdsEnd\n"  
   "e.g. NM_123456 34..305\n"
   "options:\n"
   "   -chromSize=sizefile\tRead chrom sizes from file instead of database\n"
   "             sizefile contains two white space separated fields per line:\n"
   "		chrom name and size\n"
   "   -qSizes=qSizesFile\tRead in query sizes to fixup qSize and qStarts\n"
 
   "\n");
 }
 
 static void cnvGenePredCds(struct genePred *gp, int qSize, FILE *cdsFh)
 /* determine CDS and output */
 {
 struct genbankCds cds;
 genePredToCds(gp, &cds);
 fprintf(cdsFh,"%s\t%d..%d\n", gp->name, cds.start+1, cds.end); /* genbank cds is closed 1-based */
 }
 
 static void cnvGenePred(struct hash *chromHash, struct genePred *gp, FILE *pslFh, FILE *cdsFh)
 /* convert a genePred to a psl and CDS */
 {
 int chromSize = hashIntValDefault(chromHash, gp->chrom, 0);
 if (chromSize == 0)
     errAbort("Couldn't find chromosome/scaffold '%s' in chromInfo", gp->chrom);
 int qSize = 0;
 if (qSizes != NULL)
     qSize = hashIntValDefault(qSizeHash, gp->name, 0);
 struct psl *psl = genePredToPsl(gp, chromSize, qSize);
 pslTabOut(psl, pslFh);
 pslFree(&psl);
 if (gp->cdsStart < gp->cdsEnd)
     cnvGenePredCds(gp, qSize, cdsFh);
 }
 
 static struct hash *getChromHash(char *db)
 /* Return a hash of chrom names and sizes, from either -chromSize=file or db */
 {
 struct hash *chromHash = NULL;
 if (chromSizes != NULL)
     chromHash = hChromSizeHashFromFile(chromSizes);
 else
     chromHash = hChromSizeHash(db);
 return chromHash;
 }
 
 static void fakePslFromGenePred(char *db, char *fileTbl, char *pslOut, char *cdsOut)
 /* check a genePred */
 {
 struct genePredReader *gpr;
 struct genePred *gp;
 FILE *pslFh = mustOpen(pslOut, "w");
 FILE *cdsFh = mustOpen(cdsOut, "w");
 
 struct hash *chromHash = getChromHash(db);
 
 if (fileExists(fileTbl))
     {
     gpr = genePredReaderFile(fileTbl, NULL);
     }
 else
     {
     struct sqlConnection *conn = hAllocConn(db);
     gpr = genePredReaderQuery(conn, fileTbl, NULL);
     hFreeConn(&conn);
     }
 
 while ((gp = genePredReaderNext(gpr)) != NULL)
     {
     cnvGenePred(chromHash, gp, pslFh, cdsFh);
     }
 genePredReaderFree(&gpr);
 carefulClose(&pslFh);
 carefulClose(&cdsFh);
 }
 
 int main(int argc, char *argv[])
 /* Process command line. */
 {
 optionInit(&argc, argv, optionSpecs);
 chromSizes = optionVal("chromSize", NULL);
 qSizes = optionVal("qSizes", NULL);
 if (argc != 5)
     usage();
 if (qSizes != NULL)
     qSizeHash = hChromSizeHashFromFile(qSizes);
 fakePslFromGenePred(argv[1],argv[2],argv[3],argv[4]);
 return 0;
 }