(procedure check-amiwin-version
 (set amiwin-version (getversion (tackon @default-dest "bin/AmiWin")))
 (if (not(= amiwin-version 131072))
  (abort "You do not have AmiWin 2.0d installed.\n");
 )
)

(procedure select-destination-directory
 (set @default-dest
  (askdir
   (prompt "Select the directory where you have "
    "installed AmiWin 2.0demo. The default is "
    "probably correct.")
   (help "Please specify the directory where you have "
    "installed AmiWin 2.0demo. The default is "
    "the X11: directory, i.e. the likely place of "
    "your AmiWin installation.")
   (default "X11:")
  )
 )
)  

;;;; Start

(set app-name "AmiWin 2.11demo")

(complete 0)

(set source-dir (if (= 1 (exists @icon)) (pathonly (expandpath @icon))
 (expandpath @icon))
)

(select-destination-directory)

(check-amiwin-version)

(copyfiles
 (source (tackon source-dir "x11/lib/x11/locale/locale.alias"))
 (dest (tackon @default-dest "lib/x11/locale"))
)

(complete 3)

(copyfiles
 (source (tackon source-dir "x11/lib/x11/locale/locale.dir"))
 (dest (tackon @default-dest "lib/x11/locale"))
)

(complete 7)

(copyfiles
 (source (tackon source-dir "x11/lib/x11/locale/iso8859-1/Compose"))
 (dest (tackon @default-dest "lib/x11/locale/iso8859-1"))
)

(complete 11)

(copyfiles
 (source (tackon source-dir "x11/libs/xlib.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xlib.library"))
 (dest "T:")
 (newname "xlib.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xlib.library -pT:xlib.pch T:xlib.old"))

(copyfiles
 (source "T:xlib.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xlib.library")
(delete "T:xlib.old")
(delete "T:xlib.pch")

(complete 16)

(copyfiles
 (source (tackon source-dir "x11/libs/xt.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xt.library"))
 (dest "T:")
 (newname "xt.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xt.library -pT:xt.pch T:xt.old"))

(copyfiles
 (source "T:xt.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xt.library")
(delete "T:xt.old")
(delete "T:xt.pch")

(complete 21)

(copyfiles
 (source (tackon source-dir "x11/libs/xmu1.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xmu1.library"))
 (dest "T:")
 (newname "xmu1.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xmu1.library -pT:xmu1.pch T:xmu1.old"))

(copyfiles
 (source "T:xmu1.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xmu1.library")
(delete "T:xmu1.old")
(delete "T:xmu1.pch")

(complete 26)

(copyfiles
 (source (tackon source-dir "x11/libs/xmu2.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xmu2.library"))
 (dest "T:")
 (newname "xmu2.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xmu2.library -pT:xmu2.pch T:xmu2.old"))

(copyfiles
 (source "T:xmu2.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xmu2.library")
(delete "T:xmu2.old")
(delete "T:xmu2.pch")

(complete 31)

(copyfiles
 (source (tackon source-dir "x11/libs/xaw.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xaw.library"))
 (dest "T:")
 (newname "xaw.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xaw.library -pT:xaw.pch T:xaw.old"))

(copyfiles
 (source "T:xaw.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xaw.library")
(delete "T:xaw.old")
(delete "T:xaw.pch")

(complete 36)

(copyfiles
 (source (tackon source-dir "x11/libs/xfont.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xfont.library"))
 (dest "T:")
 (newname "xfont.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xfont.library -pT:xfont.pch T:xfont.old"))

(copyfiles
 (source "T:xfont.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xfont.library")
(delete "T:xfont.old")
(delete "T:xfont.pch")

(complete 41)

(copyfiles
 (source (tackon source-dir "x11/libs/xtrans.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xtrans.library"))
 (dest "T:")
 (newname "xtrans.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xtrans.library -pT:xtrans.pch T:xtrans.old"))

(copyfiles
 (source "T:xtrans.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xtrans.library")
(delete "T:xtrans.old")
(delete "T:xtrans.pch")

(complete 46)

(copyfiles
 (source (tackon source-dir "x11/libs/xice.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "libs/xice.library"))
 (dest "T:")
 (newname "xice.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xice.library -pT:xice.pch T:xice.old"))

(copyfiles
 (source "T:xice.library")
 (dest (tackon @default-dest "libs"))
)

(delete "T:xice.library")
(delete "T:xice.old")
(delete "T:xice.pch")

(complete 51)

(copyfiles
 (source (tackon source-dir "x11/xsd/aga-8.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "xsd/aga-8.xsd"))
 (dest "T:")
 (newname "aga-8.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:aga-8.xsd -pT:aga-8.pch T:aga-8.old"))

(copyfiles
 (source "T:aga-8.xsd")
 (dest (tackon @default-dest "xsd"))
)

(delete "T:aga-8.xsd")
(delete "T:aga-8.old")
(delete "T:aga-8.pch")

(complete 56)

(copyfiles
 (source (tackon source-dir "x11/xsd/rtg-1.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "xsd/rtg-1.xsd"))
 (dest "T:")
 (newname "rtg-1.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:rtg-1.xsd -pT:rtg-1.pch T:rtg-1.old"))

(copyfiles
 (source "T:rtg-1.xsd")
 (dest (tackon @default-dest "xsd"))
)

(delete "T:rtg-1.xsd")
(delete "T:rtg-1.old")
(delete "T:rtg-1.pch")

(complete 61)

(copyfiles
 (source (tackon source-dir "x11/xsd/cybergraphx-8.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "xsd/cybergraphx-8.xsd"))
 (dest "T:")
 (newname "cybergraphx-8.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:cybergraphx-8.xsd -pT:cybergraphx-8.pch T:cybergraphx-8.old"))

(copyfiles
 (source "T:cybergraphx-8.xsd")
 (dest (tackon @default-dest "xsd"))
)

(delete "T:cybergraphx-8.xsd")
(delete "T:cybergraphx-8.old")
(delete "T:cybergraphx-8.pch")

(complete 66)

(copyfiles
 (source (tackon source-dir "x11/xsd/picasso-l-8.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "xsd/picasso-l-8.xsd"))
 (dest "T:")
 (newname "picasso-l-8.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:picasso-l-8.xsd -pT:picasso-l-8.pch T:picasso-l-8.old"))

(copyfiles
 (source "T:picasso-l-8.xsd")
 (dest (tackon @default-dest "xsd"))
)

(delete "T:picasso-l-8.xsd")
(delete "T:picasso-l-8.old")
(delete "T:picasso-l-8.pch")

(complete 71)

(copyfiles
 (source (tackon source-dir "x11/bin/xhost.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "bin/xhost"))
 (dest "T:")
 (newname "xhost.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xhost -pT:xhost.pch T:xhost.old"))

(copyfiles
 (source "T:xhost")
 (dest (tackon @default-dest "bin"))
)

(delete "T:xhost")
(delete "T:xhost.old")
(delete "T:xhost.pch")

(complete 76)

(copyfiles
 (source (tackon source-dir "x11/bin/AmiWin.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "bin/AmiWin"))
 (dest "T:")
 (newname "AmiWin.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:AmiWin -pT:AmiWin.pch T:AmiWin.old"))

(copyfiles
 (source "T:AmiWin")
 (dest (tackon @default-dest "bin"))
)

(delete "T:AmiWin")
(delete "T:AmiWin.old")
(delete "T:AmiWin.pch")

(complete 81)

(copyfiles
 (source (tackon source-dir "x11/bin/WaitForX.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "bin/WaitForX"))
 (dest "T:")
 (newname "WaitForX.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:WaitForX -pT:WaitForX.pch T:WaitForX.old"))

(copyfiles
 (source "T:WaitForX")
 (dest (tackon @default-dest "bin"))
)

(delete "T:WaitForX")
(delete "T:WaitForX.old")
(delete "T:WaitForX.pch")

(complete 86)

(copyfiles
 (source (tackon source-dir "x11/bin/xcalc.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "bin/xcalc"))
 (dest "T:")
 (newname "xcalc.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:xcalc -pT:xcalc.pch T:xcalc.old"))

(copyfiles
 (source "T:xcalc")
 (dest (tackon @default-dest "bin"))
)

(delete "T:xcalc")
(delete "T:xcalc.old")
(delete "T:xcalc.pch")

(complete 91)

(copyfiles
 (source (tackon source-dir "x11/bin/startx"))
 (dest (tackon @default-dest "bin"))
)

(working)
(run (cat "protect \"" (tackon @default-dest "bin/startx") "\" +s"))

(complete 95)


(copyfiles
 (source (tackon source-dir "AmiWin_guide.pch"))
 (dest "T:")
)

(copyfiles
 (source (tackon @default-dest "help/AmiWin.guide"))
 (dest "T:")
 (newname "AmiWin_guide.old")
)

(working)
(run (cat "\"" (tackon source-dir "bin/spatch") "\" -oT:AmiWin.guide -pT:AmiWin_guide.pch T:AmiWin_guide.old"))

(copyfiles
 (source "T:AmiWin.guide")
 (dest (tackon @default-dest "help"))
)

(delete "T:AmiWin.guide")
(delete "T:AmiWin_guide.old")
(delete "T:AmiWin_guide.pch")

(complete 100)

(exit "Installation of the update from AmiWin 2.0demo to "
 "AmiWin 2.11demo is finished.")
