File:  [gforth] / gforth / iss.sh
Revision 1.21: download - view: text, annotated - select for diffs
Fri Dec 26 17:00:19 2008 UTC (15 years, 3 months ago) by pazsan
Branches: MAIN
CVS tags: HEAD
Added build script for gforth.fi on Windows

    1: #!/bin/bash
    2: 
    3: #Copyright (C) 2000,2003,2006,2007 Free Software Foundation, Inc.
    4: 
    5: #This file is part of Gforth.
    6: 
    7: #Gforth is free software; you can redistribute it and/or
    8: #modify it under the terms of the GNU General Public License
    9: #as published by the Free Software Foundation, either version 3
   10: #of the License, or (at your option) any later version.
   11: 
   12: #This program is distributed in the hope that it will be useful,
   13: #but WITHOUT ANY WARRANTY; without even the implied warranty of
   14: #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.#See the
   15: #GNU General Public License for more details.
   16: 
   17: #You should have received a copy of the GNU General Public License
   18: #along with this program; if not, see http://www.gnu.org/licenses/.
   19: 
   20: # This is the horror shell script to create an automatic install for
   21: # Windoze.
   22: # Note that I use sed to create a setup file
   23: 
   24: # use iss.sh >gforth.iss
   25: # copy the resulting *.iss to the location of your Windows installation
   26: # of Gforth, and start the setup compiler there.
   27: 
   28: VERSION=$(cat version)
   29: 
   30: cat <<EOT
   31: ; This is the setup script for Gforth on Windows
   32: ; Setup program is Inno Setup
   33: 
   34: [Setup]
   35: AppName=Gforth
   36: AppVerName=Gforth $VERSION
   37: AppCopyright=Copyright © 1995,1996,1997,1998,2000,2003,2006,2007,2008 Free Software Foundation
   38: DefaultDirName={pf}\gforth
   39: DefaultGroupName=Gforth
   40: AllowNoIcons=1
   41: InfoBeforeFile=COPYING
   42: Compression=bzip
   43: DisableStartupPrompt=yes
   44: OutputBaseFilename=gforth-$VERSION
   45: 
   46: [Messages]
   47: WizardInfoBefore=License Agreement
   48: InfoBeforeLabel=Gforth is free software.
   49: InfoBeforeClickLabel=You don't have to accept the GPL to run the program. You only have to accept this license if you want to modify, copy, or distribute this program.
   50: 
   51: [Components]
   52: Name: "help"; Description: "HTML Documentation"; Types: full
   53: Name: "info"; Description: "GNU info Documentation"; Types: full
   54: Name: "print"; Description: "Postscript Documentation for printout"; Types: full
   55: Name: "objects"; Description: "Compiler generated intermediate stuff"; Types: full
   56: 
   57: [Dirs]
   58: $(make distfiles -f Makedist | tr ' ' '\n' | grep -v CVS | (while read i; do
   59:   while [ ! -z "$i" ]
   60:   do
   61:     if [ -d $i ]; then echo $i; fi
   62:     if [ "${i%/*}" != "$i" ]; then i="${i%/*}"; else i=""; fi
   63:   done
   64: done) | sort -u | sed \
   65:   -e 's:/:\\:g' \
   66:   -e 's,^\(..*\)$,Name: "{app}\\\1",g')
   67: Name: "{app}\doc\gforth"
   68: Name: "{app}\doc\vmgen"
   69: Name: "{app}\lib\gforth\\$VERSION\libcc-named"
   70: Name: "{app}\include\gforth\\$VERSION\libcc-named"
   71: 
   72: [Files]
   73: ; Parameter quick reference:
   74: ;   "Source filename", "Dest. filename", Copy mode, Flags
   75: Source: "README.txt"; DestDir: "{app}"; Flags: isreadme
   76: Source: "cygwin1.dll"; DestDir: "{app}"
   77: Source: "sh.exe"; DestDir: "{app}"
   78: Source: "cygintl-8.dll"; DestDir: "{app}"
   79: Source: "cygiconv-2.dll"; DestDir: "{app}"
   80: Source: "cygltdl-3.dll"; DestDir: "{app}"
   81: Source: "cygreadline6.dll"; DestDir: "{app}"
   82: Source: "cygncurses-8.dll"; DestDir: "{app}"
   83: Source: "cygffi-2-00-beta.dll"; DestDir: "{app}"
   84: Source: "gforthfi.sh"; DestDir: "{app}"
   85: $(ls doc/gforth | sed -e 's:/:\\:g' -e 's,^\(..*\)$,Source: "doc\\gforth\\\1"; DestDir: "{app}\\doc\\gforth"; Components: help,g')
   86: $(ls doc/vmgen | sed -e 's:/:\\:g' -e 's,^\(..*\)$,Source: "doc\\vmgen\\\1"; DestDir: "{app}\\doc\\vmgen"; Components: help,g')
   87: $(ls lib/gforth/$VERSION/libcc-named | sed -e 's:/:\\:g' -e 's,^\(..*\)$,Source: "lib\\gforth\\'$VERSION'\\libcc-named\\\1"; DestDir: "{app}\\lib\\gforth\\'$VERSION'\\libcc-named",g')
   88: $(ls include/gforth/$VERSION/libcc-named | sed -e 's:/:\\:g' -e 's,^\(..*\)$,Source: "include\\gforth\\'$VERSION'\\libcc-named\\\1"; DestDir: "{app}\\include\\gforth\\'$VERSION'\\libcc-named",g')
   89: $(make distfiles -f Makedist EXE=.exe | tr ' ' '\n' | grep -v engine.*exe | (while read i; do
   90:   if [ ! -d $i ]; then echo $i; fi
   91: done) | sed \
   92:   -e 's:/:\\:g' \
   93:   -e 's,^\(..*\)\\\([^\\]*\)$,Source: "\1\\\2"; DestDir: "{app}\\\1",g' \
   94:   -e 's,^\([^\\]*\)$,Source: "\1"; DestDir: "{app}",g' \
   95:   -e 's,^\(.*\.[oib]".*\),\1; Components: objects,g' \
   96:   -e 's,^\(.*\.p\)s\(".*\),\1df\2; Components: print,g' \
   97:   -e 's,^\(.*\.info.*".*\),\1; Components: info,g')
   98: 
   99: [Icons]
  100: ; Parameter quick reference:
  101: ;   "Icon title", "File name", "Parameters", "Working dir (can leave blank)",
  102: ;   "Custom icon filename (leave blank to use the default icon)", Icon index
  103: Name: "{group}\Gforth"; Filename: "{app}\gforth.exe"; WorkingDir: "{app}"
  104: Name: "{group}\Gforth-fast"; Filename: "{app}\gforth-fast.exe"; WorkingDir: "{app}"
  105: Name: "{group}\Gforth-dict"; Filename: "{app}\gforth-dict.exe"; WorkingDir: "{app}"
  106: Name: "{group}\Gforth-itc"; Filename: "{app}\gforth-itc.exe"; WorkingDir: "{app}"
  107: Name: "{group}\Gforth-prof"; Filename: "{app}\gforth-prof.exe"; WorkingDir: "{app}"
  108: Name: "{group}\Gforth Manual"; Filename: "{app}\doc\gforth\index.html"; WorkingDir: "{app}"; Components: help
  109: Name: "{group}\Gforth Manual (PDF)"; Filename: "{app}\doc\gforth.pdf"; WorkingDir: "{app}"; Components: help
  110: Name: "{group}\VMgen Manual"; Filename: "{app}\doc\vmgen\index.html"; WorkingDir: "{app}"; Components: help
  111: Name: "{group}\Bash"; Filename: "{app}\sh.exe"; WorkingDir: "{app}"
  112: Name: "{group}\Uninstall Gforth"; Filename: "{uninstallexe}"
  113: 
  114: [Run]
  115: Filename: "{app}\gforth.exe"; WorkingDir: "{app}"; Parameters: "fixpath.fs {app} gforth-fast.exe"
  116: Filename: "{app}\gforth.exe"; WorkingDir: "{app}"; Parameters: "fixpath.fs {app} gforth-ditc.exe"
  117: Filename: "{app}\gforth.exe"; WorkingDir: "{app}"; Parameters: "fixpath.fs {app} gforth-itc.exe"
  118: Filename: "{app}\gforth.exe"; WorkingDir: "{app}"; Parameters: "fixpath.fs {app} gforth-prof.exe"
  119: Filename: "{app}\gforth-fast.exe"; WorkingDir: "{app}"; Parameters: "fixpath.fs {app} gforth.exe"
  120: Filename: "{app}\sh.exe"; WorkingDir: "{app}"; Parameters: "./gforthfi.sh"
  121: 
  122: ;[Registry]
  123: ;registry commented out
  124: ; WorkingDir: "{app}"; Parameter quick reference:
  125: ;   "Root key", "Subkey", "Value name", Data type, "Data", Flags
  126: ;HKCR, ".fs"; STRING, "forthstream",
  127: ;HKCR, ".fs", "Content Type", STRING, "application/forth",
  128: ;HKCR, ".fb"; STRING, "forthblock",
  129: ;HKCR, ".fb", "Content Type", STRING, "application/forth-block",
  130: ;HKCR, "forthstream"; STRING, "Forth Source",
  131: ;HKCR, "forthstream", "EditFlags", DWORD, "00000000",
  132: ;HKCR, "forthstream\DefaultIcon"; STRING, "{sys}\System32\shell32.dll,61"
  133: ;HKCR, "forthstream\Shell"; STRING, ""
  134: ;HKCR, "forthstream\Shell\Open\command"; STRING, "{app}\gforth.exe %1"
  135: ;HKCR, "forthblock"; STRING, "Forth Block",
  136: ;HKCR, "forthblock", "EditFlags", DWORD, "00000000",
  137: ;HKCR, "forthblock\DefaultIcon"; STRING, "{sys}\System32\shell32.dll,61"
  138: EOT
  139: 
  140: sed -e 's/$/\r/' <README >README.txt

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>