mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-25 01:49:09 +02:00
* new install version (keys not wrong correct yet)
This commit is contained in:
parent
5721394fc9
commit
685340e8e3
@ -1,45 +1,86 @@
|
|||||||
#
|
#
|
||||||
# $Id$
|
# $Id$
|
||||||
#
|
#
|
||||||
# Win32 Install file
|
# Install file for Go32v2/Win32/OS2
|
||||||
#
|
#
|
||||||
title=Free Pascal Compiler 0.99.14 for Win32
|
title=Free Pascal Compiler 0.99.14
|
||||||
version=0.99.14
|
version=0.99.14
|
||||||
|
|
||||||
basepath=c:\pp
|
basepath=c:\pp
|
||||||
binsub=\bin\win32
|
binsub=\bin\go32v2
|
||||||
ppc386=ppc386
|
ppc386=ppc386
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Binary packages
|
# Go32v2 packages
|
||||||
#
|
#
|
||||||
|
pack=Dos/~G~o32v2
|
||||||
|
filecheck=*go32.zip
|
||||||
|
package=basego32.zip,~B~asic system for Go32v2 (required)
|
||||||
|
package=asldgo32.zip,GNU ~L~inker and GNU Assembler for Go32v2 (required)
|
||||||
|
package=gdbgo32.zip,GNU ~D~ebugger for Go32v2
|
||||||
|
package=utilgo32.zip,GNU ~U~tilities (needed by Makefiles)
|
||||||
|
package=ufclgo32.zip,~F~ree Component Libary (FCL)
|
||||||
|
package=uapigo32.zip,~A~PI units (needed by FV)
|
||||||
|
package=ubasgo32.zip,Basic ~u~nits (needed by FCL)
|
||||||
|
package=unetgo32.zip,~N~etworking units
|
||||||
|
package=umisgo32.zip,~M~iscellaneous units
|
||||||
|
#package=ufvgo32.zip,Free ~V~ision (FV)
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Win32 packages
|
||||||
|
#
|
||||||
|
pack=~W~in32
|
||||||
|
filecheck=*w32.zip
|
||||||
package=basew32.zip,~B~asic system for Win32 (required)
|
package=basew32.zip,~B~asic system for Win32 (required)
|
||||||
package=asldw32.zip,GNU ~L~inker and GNU Assembler for Win32 (required)
|
package=asldw32.zip,GNU ~L~inker and GNU Assembler for Win32 (required)
|
||||||
package=gdbw32.zip,GNU ~D~ebugger for Win32
|
package=gdbw32.zip,GNU ~D~ebugger for Win32
|
||||||
package=utilw32.zip,GNU ~U~tilities (for makefiles)
|
package=utilw32.zip,GNU ~U~tilities (for makefiles)
|
||||||
package=docs-pdf.zip,Documentation (~P~DF)
|
|
||||||
package=demo.zip,D~e~mos
|
|
||||||
package=ufclw32.zip,~F~ree Component Libary (FCL)
|
package=ufclw32.zip,~F~ree Component Libary (FCL)
|
||||||
package=uapiw32.zip,~A~PI units (needed by FV)
|
package=uapiw32.zip,~A~PI units (needed by FV)
|
||||||
package=ubasw32.zip,~B~asic units (needed by FCL)
|
package=ubasw32.zip,~B~asic units (needed by FCL)
|
||||||
package=ugtkw32.zip,~G~TK units
|
package=ugtkw32.zip,GT~K~ units
|
||||||
package=unetw32.zip,~N~etworking units
|
package=unetw32.zip,~N~etworking units
|
||||||
package=udbw32.zip,Da~t~abase (interbase,mysql) units
|
package=udbw32.zip,Da~t~abase (interbase,mysql) units
|
||||||
package=umisw32.zip,~M~iscellaneous units
|
package=umisw32.zip,~M~iscellaneous units
|
||||||
#package=ufvw32.zip,Free ~V~ision (FV)
|
#package=ufvw32.zip,Free ~V~ision (FV)
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Emx packages
|
||||||
|
#
|
||||||
|
pack=Os/2 ~E~MX
|
||||||
|
filecheck=*emx.zip
|
||||||
|
package=baseemx.zip,~B~asic system for EMX (required)
|
||||||
|
package=asldemx.zip,GNU ~L~inker and assembler for EMX (required)
|
||||||
|
package=gdbemx.zip,GNU ~D~ebugger for EMX and PMGDB front-end
|
||||||
|
package=utilemx.zip,GNU ~U~tilities (for makefiles)
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Common packages
|
||||||
|
#
|
||||||
|
pack=~C~ommon
|
||||||
|
package=docs-pdf.zip,Documentation (~P~DF)
|
||||||
|
package=demo.zip,D~e~mos
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Source packages
|
# Source packages
|
||||||
#
|
#
|
||||||
source=basesrc.zip,Basic Makefiles for the sources
|
pack=~S~ources
|
||||||
source=compsrc.zip,~C~ompiler sources
|
filecheck=*src.zip
|
||||||
source=rtlsrc.zip,~R~un time library sources
|
package=basesrc.zip,~B~asic Makefiles for the sources
|
||||||
source=fclsrc.zip,~F~ree component library (FCL) sources
|
package=compsrc.zip,~C~ompiler sources
|
||||||
source=apisrc.zip,API units sources
|
package=rtlsrc.zip,~R~un time library sources
|
||||||
source=pkgssrc.zip,Packages units sources
|
package=fclsrc.zip,~F~ree component library (FCL) sources
|
||||||
source=utilssrc.zip,Utils sources
|
package=apisrc.zip,~A~PI units sources
|
||||||
source=instsrc.zip,Installer sources
|
package=pkgssrc.zip,~P~ackages units sources
|
||||||
source=docsrc.zip,Documentation sources (La~T~eX)
|
package=utilssrc.zip,~U~tils sources
|
||||||
|
package=instsrc.zip,~I~nstaller sources
|
||||||
|
package=docsrc.zip,~D~ocumentation sources (LaTeX)
|
||||||
|
|
||||||
|
|
||||||
cfgfile=ppc386.cfg
|
cfgfile=ppc386.cfg
|
||||||
defaultcfg=
|
defaultcfg=
|
||||||
@ -179,7 +220,6 @@ defaultcfg=
|
|||||||
# searchpath for tools
|
# searchpath for tools
|
||||||
-FD$1/bin/$TARGET
|
-FD$1/bin/$TARGET
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
# -------------
|
||||||
# Linking
|
# Linking
|
||||||
# -------------
|
# -------------
|
@ -1,220 +0,0 @@
|
|||||||
#
|
|
||||||
# $Id$
|
|
||||||
#
|
|
||||||
# Go32v2 Install file
|
|
||||||
#
|
|
||||||
title=Free Pascal Compiler 0.99.14 for Go32v2
|
|
||||||
version=0.99.14
|
|
||||||
|
|
||||||
basepath=c:\pp
|
|
||||||
binsub=\bin\go32v2
|
|
||||||
ppc386=ppc386
|
|
||||||
|
|
||||||
#
|
|
||||||
# Binary packages
|
|
||||||
#
|
|
||||||
package=basego32.zip,~B~asic system for Go32v2 (required)
|
|
||||||
package=asldgo32.zip,GNU ~L~inker and GNU Assembler for Go32v2 (required)
|
|
||||||
package=gdbgo32.zip,GNU ~D~ebugger for Go32v2
|
|
||||||
package=utilgo32.zip,GNU ~U~tilities (needed by Makefiles)
|
|
||||||
package=docs-pdf.zip,Documentation (~P~DF)
|
|
||||||
package=demo.zip,D~e~mos
|
|
||||||
package=ufclgo32.zip,~F~ree Component Libary (FCL)
|
|
||||||
package=uapigo32.zip,~A~PI units (needed by FV)
|
|
||||||
package=ubasgo32.zip,Basic units (needed by FCL)
|
|
||||||
package=unetgo32.zip,Networking units
|
|
||||||
package=umisgo32.zip,Miscellaneous units
|
|
||||||
#package=ufvgo32.zip,Free ~V~ision (FV)
|
|
||||||
|
|
||||||
#
|
|
||||||
# Source packages
|
|
||||||
#
|
|
||||||
source=basesrc.zip,Basic Makefiles for the sources
|
|
||||||
source=compsrc.zip,~C~ompiler sources
|
|
||||||
source=rtlsrc.zip,~R~un time library sources
|
|
||||||
source=fclsrc.zip,~F~ree component library (FCL) sources
|
|
||||||
source=apisrc.zip,API units sources
|
|
||||||
source=pkgssrc.zip,Packages units sources
|
|
||||||
source=utilssrc.zip,Utils sources
|
|
||||||
source=instsrc.zip,Installer sources
|
|
||||||
source=docsrc.zip,Documentation sources (La~T~eX)
|
|
||||||
|
|
||||||
cfgfile=ppc386.cfg
|
|
||||||
defaultcfg=
|
|
||||||
#
|
|
||||||
# Example ppc386.cfg for Free Pascal Compiler Version 0.99.14
|
|
||||||
#
|
|
||||||
|
|
||||||
# ----------------------
|
|
||||||
# Defines (preprocessor)
|
|
||||||
# ----------------------
|
|
||||||
|
|
||||||
#
|
|
||||||
# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
|
|
||||||
#
|
|
||||||
# -d is the same as #DEFINE
|
|
||||||
# -u is the same as #UNDEF
|
|
||||||
#
|
|
||||||
|
|
||||||
# When not m68k is defined at the commandline, define i386
|
|
||||||
#IFNDEF m68k
|
|
||||||
#DEFINE i386
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
#
|
|
||||||
# Some examples (for switches see below, and the -? helppages)
|
|
||||||
#
|
|
||||||
# Try compiling with the -dRELEASE or -dDEBUG on the commandline
|
|
||||||
#
|
|
||||||
|
|
||||||
# For a release compile with optimizes and strip debuginfo
|
|
||||||
#IFDEF RELEASE
|
|
||||||
-OG2p2
|
|
||||||
-Xs
|
|
||||||
#WRITE Compiling Release Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# For a debug version compile with debuginfo and all codegeneration checks on
|
|
||||||
#IFDEF DEBUG
|
|
||||||
-g
|
|
||||||
-Crtoi
|
|
||||||
#WRITE Compiling Debug Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# ----------------
|
|
||||||
# Parsing switches
|
|
||||||
# ----------------
|
|
||||||
|
|
||||||
# All assembler blocks are intel styled by default
|
|
||||||
#-Rintel
|
|
||||||
|
|
||||||
# All assembler blocks are AT&T styled by default
|
|
||||||
#-Ratt
|
|
||||||
|
|
||||||
# All assembler blocks are directly copied to asm
|
|
||||||
#-Rdirect
|
|
||||||
|
|
||||||
# Semantic checking
|
|
||||||
# -S2 switch some Delphi 2 extension on
|
|
||||||
# -Sc supports operators like C (*=,+=,/= and -=)
|
|
||||||
# -Sg allows LABEL and GOTO
|
|
||||||
# -Si support C++ stlyed INLINE
|
|
||||||
# -Sm support macros like C (global)
|
|
||||||
# -So tries to be TP/BP 7.0 compatible
|
|
||||||
# -Ss constructor name must be init (destructor must be done)
|
|
||||||
# -St allows static keyword in objects
|
|
||||||
|
|
||||||
# Allow goto, inline, C-operators
|
|
||||||
-Sgic
|
|
||||||
|
|
||||||
# ---------------
|
|
||||||
# Code generation
|
|
||||||
# ---------------
|
|
||||||
|
|
||||||
# Uncomment the next line if you always want static/dynamic units by default
|
|
||||||
# (can be overruled with -CD, -CS at the commandline)
|
|
||||||
#-CS
|
|
||||||
#-CD
|
|
||||||
|
|
||||||
# Set the default heapsize to 8Mb
|
|
||||||
#-Ch8000000
|
|
||||||
|
|
||||||
# Set default codegeneration checks (iocheck, overflow, range, stack)
|
|
||||||
#-Ci
|
|
||||||
#-Co
|
|
||||||
#-Cr
|
|
||||||
#-Ct
|
|
||||||
|
|
||||||
# Optimizer switches
|
|
||||||
# -Og generate smaller code
|
|
||||||
# -OG generate faster code (default)
|
|
||||||
# -Or keep certain variables in registers (still BUGGY!!!)
|
|
||||||
# -Ou enable uncertain optimizations (see docs)
|
|
||||||
# -O1 level 1 optimizations (quick optimizations)
|
|
||||||
# -O2 level 2 optimizations (-O1 + slower optimizations)
|
|
||||||
# -O3 level 3 optimizations (same as -O2u)
|
|
||||||
# -Op target processor
|
|
||||||
# -Op1 set target processor to 386/486
|
|
||||||
# -Op2 set target processor to Pentium/PentiumMMX (tm)
|
|
||||||
# -Op3 set target processor to PPro/PII/c6x86/K6 (tm)
|
|
||||||
|
|
||||||
# Optimize always for Size and Pentium
|
|
||||||
#-Og2p2
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------
|
|
||||||
# Set Filenames and Paths
|
|
||||||
# -----------------------
|
|
||||||
|
|
||||||
# Both slashes and backslashes are allowed in paths
|
|
||||||
|
|
||||||
# path to the messagefile, not necessary anymore but can be used to override
|
|
||||||
# the default language
|
|
||||||
#-Fr$1/msg/errore.msg
|
|
||||||
#-Fr$1/msg/errorn.msg
|
|
||||||
#-Fr$1/msg/errores.msg
|
|
||||||
#-Fr$1/msg/errord.msg
|
|
||||||
#-Fr$1/msg/errorr.msg
|
|
||||||
|
|
||||||
# path to the gcclib
|
|
||||||
#-Fl$1/lib
|
|
||||||
|
|
||||||
# searchpath for includefiles
|
|
||||||
-Fi$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for objectfiles
|
|
||||||
#-Fo$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for units and other system dependent things
|
|
||||||
-Fu$1/units/$TARGET
|
|
||||||
-Fu$1/units/$TARGET/*
|
|
||||||
-Fu$1/units/$TARGET/rtl
|
|
||||||
|
|
||||||
# searchpath for libraries
|
|
||||||
#-Fl$1/lib
|
|
||||||
#-Fl/lib;/usr/lib
|
|
||||||
|
|
||||||
# searchpath for tools
|
|
||||||
-FD$1/bin/$TARGET
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Linking
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# generate always debugging information for GDB (slows down the compiling
|
|
||||||
# process)
|
|
||||||
#-g
|
|
||||||
|
|
||||||
# always pass an option to the linker
|
|
||||||
#-k-s
|
|
||||||
|
|
||||||
# Always strip debuginfo from the executable
|
|
||||||
-Xs
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Miscellaneous
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# Write always a nice FPC logo ;)
|
|
||||||
-l
|
|
||||||
|
|
||||||
# Verbosity
|
|
||||||
# e : Show errors (default) d : Show debug info
|
|
||||||
# w : Show warnings u : Show used files
|
|
||||||
# n : Show notes t : Show tried files
|
|
||||||
# h : Show hints m : Show defined macros
|
|
||||||
# i : Show general info p : Show compiled procedures
|
|
||||||
# l : Show linenumbers c : Show conditionals
|
|
||||||
# a : Show everything 0 : Show nothing (except errors)
|
|
||||||
|
|
||||||
# Display Info, Warnings, Notes and Hints
|
|
||||||
-viwnh
|
|
||||||
# If you don't want so much verbosity use
|
|
||||||
#-vw
|
|
||||||
|
|
||||||
#
|
|
||||||
# That's all folks
|
|
||||||
#
|
|
||||||
endcfg
|
|
@ -1,271 +0,0 @@
|
|||||||
#
|
|
||||||
# $Id$
|
|
||||||
#
|
|
||||||
# Linux Install file
|
|
||||||
#
|
|
||||||
title=Free Pascal Compiler 0.99.12b for Linux
|
|
||||||
version=0.99.12b
|
|
||||||
|
|
||||||
basepath=/usr/lib/fpc/0.99.12
|
|
||||||
binsub=
|
|
||||||
ppc386=ppc386
|
|
||||||
|
|
||||||
#
|
|
||||||
# Binary packages
|
|
||||||
#
|
|
||||||
package=baselin.zip,~B~asic system for Linux (required)
|
|
||||||
#package=asldlin.zip,GNU ~L~inker and GNU Assembler for Go32v2 (required)
|
|
||||||
#package=gdblin.zip,GNU ~D~ebugger for Go32v2
|
|
||||||
#package=utillin.zip,GNU ~U~tilities (required to recompile run time library)
|
|
||||||
package=docs-pdf.zip,Documentation (~P~DF)
|
|
||||||
package=demo.zip,D~e~mos
|
|
||||||
#
|
|
||||||
# Source packages
|
|
||||||
#
|
|
||||||
source=rl09912s.zip,~R~un time library sources
|
|
||||||
source=pp09912s.zip,~C~ompiler sources
|
|
||||||
source=fc09912s.zip,~F~ree component library (FCL) sources
|
|
||||||
source=fv09912s.zip,Free ~V~ision (FV) and API sources
|
|
||||||
source=gt09912s.zip,~G~TK interface sources
|
|
||||||
source=doc160s.zip,Documentation sources (La~T~eX)
|
|
||||||
|
|
||||||
cfgfile=ppc386.cfg
|
|
||||||
defaultcfg=
|
|
||||||
#
|
|
||||||
# Example ppc386.cfg for Free Pascal Compiler Version 0.99.12
|
|
||||||
#
|
|
||||||
|
|
||||||
# ----------------------
|
|
||||||
# Defines (preprocessor)
|
|
||||||
# ----------------------
|
|
||||||
|
|
||||||
#
|
|
||||||
# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
|
|
||||||
#
|
|
||||||
# -d is the same as #DEFINE
|
|
||||||
# -u is the same as #UNDEF
|
|
||||||
#
|
|
||||||
|
|
||||||
# When not m68k is defined at the commandline, define i386
|
|
||||||
#IFNDEF m68k
|
|
||||||
#DEFINE i386
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
#
|
|
||||||
# Some examples (for switches see below, and the -? helppages)
|
|
||||||
#
|
|
||||||
# Try compiling with the -dRELEASE or -dDEBUG on the commandline
|
|
||||||
#
|
|
||||||
|
|
||||||
# For a release compile with optimizes and strip debuginfo
|
|
||||||
#IFDEF RELEASE
|
|
||||||
-OG2p2
|
|
||||||
-Xs
|
|
||||||
#WRITE Compiling Release Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# For a debug version compile with debuginfo and all codegeneration checks on
|
|
||||||
#IFDEF DEBUG
|
|
||||||
-g
|
|
||||||
-Crtoi
|
|
||||||
#WRITE Compiling Debug Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# ----------------
|
|
||||||
# Parsing switches
|
|
||||||
# ----------------
|
|
||||||
|
|
||||||
# All assembler blocks are intel styled by default
|
|
||||||
#-Rintel
|
|
||||||
|
|
||||||
# All assembler blocks are AT&T styled by default
|
|
||||||
#-Ratt
|
|
||||||
|
|
||||||
# All assembler blocks are directly copied to asm
|
|
||||||
#-Rdirect
|
|
||||||
|
|
||||||
# Semantic checking
|
|
||||||
# -S2 switch some Delphi 2 extension on
|
|
||||||
# -Sc supports operators like C (*=,+=,/= and -=)
|
|
||||||
# -Sg allows LABEL and GOTO
|
|
||||||
# -Si support C++ stlyed INLINE
|
|
||||||
# -Sm support macros like C (global)
|
|
||||||
# -So tries to be TP/BP 7.0 compatible
|
|
||||||
# -Ss constructor name must be init (destructor must be done)
|
|
||||||
# -St allows static keyword in objects
|
|
||||||
|
|
||||||
# Allow goto, inline, C-operators
|
|
||||||
-Sgic
|
|
||||||
|
|
||||||
# ---------------
|
|
||||||
# Code generation
|
|
||||||
# ---------------
|
|
||||||
|
|
||||||
# Uncomment the next line if you always want static/dynamic units by default
|
|
||||||
# (can be overruled with -CD, -CS at the commandline)
|
|
||||||
#-CS
|
|
||||||
#-CD
|
|
||||||
|
|
||||||
# Set the default heapsize to 8Mb
|
|
||||||
#-Ch8000000
|
|
||||||
|
|
||||||
# Set default codegeneration checks (iocheck, overflow, range, stack)
|
|
||||||
#-Ci
|
|
||||||
#-Co
|
|
||||||
#-Cr
|
|
||||||
#-Ct
|
|
||||||
|
|
||||||
# Optimizer switches
|
|
||||||
# -Og generate smaller code
|
|
||||||
# -OG generate faster code (default)
|
|
||||||
# -Or keep certain variables in registers (still BUGGY!!!)
|
|
||||||
# -Ou enable uncertain optimizations (see docs)
|
|
||||||
# -O1 level 1 optimizations (quick optimizations)
|
|
||||||
# -O2 level 2 optimizations (-O1 + slower optimizations)
|
|
||||||
# -O3 level 3 optimizations (same as -O2u)
|
|
||||||
# -Op target processor
|
|
||||||
# -Op1 set target processor to 386/486
|
|
||||||
# -Op2 set target processor to Pentium/PentiumMMX (tm)
|
|
||||||
# -Op3 set target processor to PPro/PII/c6x86/K6 (tm)
|
|
||||||
|
|
||||||
# Optimize always for Size and Pentium
|
|
||||||
#-Og2p2
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------
|
|
||||||
# Set Filenames and Paths
|
|
||||||
# -----------------------
|
|
||||||
|
|
||||||
# Both slashes and backslashes are allowed in paths
|
|
||||||
|
|
||||||
# path to the messagefile, not necessary anymore but can be used to override
|
|
||||||
# the default language
|
|
||||||
#-Fr$1/msg/errore.msg
|
|
||||||
#-Fr$1/msg/errorn.msg
|
|
||||||
#-Fr$1/msg/errores.msg
|
|
||||||
#-Fr$1/msg/errord.msg
|
|
||||||
#-Fr$1/msg/errorr.msg
|
|
||||||
|
|
||||||
# path to the gcclib
|
|
||||||
#-Fl$1/lib
|
|
||||||
|
|
||||||
# searchpath for includefiles
|
|
||||||
-Fi$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for objectfiles
|
|
||||||
#-Fo$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for units and other system dependent things
|
|
||||||
#IFDEF Go32V1
|
|
||||||
-FD$1/bin/go32v1
|
|
||||||
#IFDEF FPC_LINK_STATIC
|
|
||||||
-Fu$1/rtl/go32v1/static
|
|
||||||
-Fu$1/units/go32v1/static
|
|
||||||
#ENDIF
|
|
||||||
-Fu$1/rtl/go32v1
|
|
||||||
-Fu$1/units/go32v1
|
|
||||||
-Fu$1/source/rtl/go32v1
|
|
||||||
-Fi$1/source/rtl/go32v1
|
|
||||||
-Fo$1/source/rtl/go32v1
|
|
||||||
#ENDIF
|
|
||||||
#IFDEF Go32V2
|
|
||||||
-FD$1/bin/go32v2
|
|
||||||
#IFDEF FPC_LINK_STATIC
|
|
||||||
-Fu$1/rtl/go32v2/static
|
|
||||||
-Fu$1/units/go32v2/static
|
|
||||||
#ENDIF
|
|
||||||
-Fu$1/rtl/go32v2
|
|
||||||
-Fu$1/units/go32v2
|
|
||||||
-Fu$1/source/rtl/go32v2
|
|
||||||
-Fi$1/source/rtl/go32v2
|
|
||||||
-Fo$1/source/rtl/go32v2
|
|
||||||
#ENDIF
|
|
||||||
#IFDEF Win32
|
|
||||||
-FD$1/bin/win32
|
|
||||||
#IFDEF FPC_LINK_STATIC
|
|
||||||
-Fu$1/rtl/win32/static
|
|
||||||
-Fu$1/units/win32/static
|
|
||||||
#ENDIF
|
|
||||||
-Fu$1/rtl/win32
|
|
||||||
-Fu$1/units/win32
|
|
||||||
-Fu$1/source/rtl/win32
|
|
||||||
-Fi$1/source/rtl/win32
|
|
||||||
-Fo$1/source/rtl/win32
|
|
||||||
#ENDIF
|
|
||||||
#IFDEF OS2
|
|
||||||
-FD$1/bin/os2
|
|
||||||
#IFDEF FPC_LINK_STATIC
|
|
||||||
-Fu$1/rtl/os2/static
|
|
||||||
-Fu$1/units/os2/static
|
|
||||||
#ENDIF
|
|
||||||
-Fu$1/rtl/os2
|
|
||||||
-Fu$1/units/os2
|
|
||||||
-Fu$1/source/rtl/os2
|
|
||||||
-Fi$1/source/rtl/os2
|
|
||||||
-Fo$1/source/rtl/os2
|
|
||||||
#ENDIF
|
|
||||||
#IFDEF Linux
|
|
||||||
# For statically, smartlinked units
|
|
||||||
#IFDEF FPC_LINK_STATIC
|
|
||||||
-Fu$1/rtl/static
|
|
||||||
-Fu$1/units/static
|
|
||||||
#ENDIF
|
|
||||||
# For Dynamically linked units
|
|
||||||
#IFDEF FPC_LINK_DYNAMIC
|
|
||||||
-Fu$1/rtl/shared
|
|
||||||
-Fu$1/units/shared
|
|
||||||
#ENDIF
|
|
||||||
-Fu$1/rtl/linux
|
|
||||||
-Fu$1/units/linux
|
|
||||||
-Fu$1/source/rtl/linux
|
|
||||||
-Fi$1/source/rtl/linux
|
|
||||||
-Fo$1/source/rtl/linux
|
|
||||||
#-Fu~/pp/units;~/pp/rtl/linux
|
|
||||||
#-Fu/usr/lib/fpc/0.99.12/units;/usr/lib/fpc/0.99.12/rtl
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# searchpath for libraries
|
|
||||||
#-Fl$1/lib
|
|
||||||
#-Fl/lib;/usr/lib
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Linking
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# generate always debugging information for GDB (slows down the compiling
|
|
||||||
# process)
|
|
||||||
#-g
|
|
||||||
|
|
||||||
# always pass an option to the linker
|
|
||||||
#-k-s
|
|
||||||
|
|
||||||
# Always strip debuginfo from the executable
|
|
||||||
-Xs
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Miscellaneous
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# Write always a nice FPC logo ;)
|
|
||||||
-l
|
|
||||||
|
|
||||||
# Verbosity
|
|
||||||
# e : Show errors (default) d : Show debug info
|
|
||||||
# w : Show warnings u : Show used files
|
|
||||||
# n : Show notes t : Show tried files
|
|
||||||
# h : Show hints m : Show defined macros
|
|
||||||
# i : Show general info p : Show compiled procedures
|
|
||||||
# l : Show linenumbers c : Show conditionals
|
|
||||||
# a : Show everything 0 : Show nothing (except errors)
|
|
||||||
|
|
||||||
# Display Info, Warnings, Notes and Hints
|
|
||||||
-viwnh
|
|
||||||
# If you don't want so much verbosity use
|
|
||||||
#-vw
|
|
||||||
|
|
||||||
#
|
|
||||||
# That's all folks
|
|
||||||
#
|
|
||||||
endcfg
|
|
@ -1,213 +0,0 @@
|
|||||||
#
|
|
||||||
# $Id$
|
|
||||||
#
|
|
||||||
# EMX Install file
|
|
||||||
#
|
|
||||||
title=Free Pascal Compiler 0.99.14 for OS/2 and DOS (EMX)
|
|
||||||
version=0.99.14
|
|
||||||
|
|
||||||
basepath=c:\pp
|
|
||||||
binsub=\bin\os2
|
|
||||||
ppc386=ppos2
|
|
||||||
|
|
||||||
#
|
|
||||||
# Binary packages
|
|
||||||
#
|
|
||||||
package=baseemx.zip,~B~asic system for EMX (required)
|
|
||||||
package=asldemx.zip,GNU ~L~inker and assembler for EMX (required)
|
|
||||||
package=gdbemx.zip,GNU ~D~ebugger for EMX and PMGDB front-end
|
|
||||||
package=utilemx.zip,GNU ~U~tilities (for makefiles)
|
|
||||||
package=docs-pdf.zip,Documentation (~P~DF)
|
|
||||||
package=demo.zip,D~e~mos
|
|
||||||
#
|
|
||||||
# Source packages
|
|
||||||
#
|
|
||||||
source=basesrc.zip,Basic Makefiles for the sources
|
|
||||||
source=compsrc.zip,~C~ompiler sources
|
|
||||||
source=rtlsrc.zip,~R~un time library sources
|
|
||||||
source=fclsrc.zip,~F~ree component library (FCL) sources
|
|
||||||
source=apisrc.zip,API units sources
|
|
||||||
source=pkgssrc.zip,Packages units sources
|
|
||||||
source=utilssrc.zip,Utils sources
|
|
||||||
source=instsrc.zip,Installer sources
|
|
||||||
source=docsrc.zip,Documentation sources (La~T~eX)
|
|
||||||
|
|
||||||
cfgfile=ppc386.cfg
|
|
||||||
defaultcfg=
|
|
||||||
#
|
|
||||||
# Example ppc386.cfg for Free Pascal Compiler Version 0.99.14
|
|
||||||
#
|
|
||||||
|
|
||||||
# ----------------------
|
|
||||||
# Defines (preprocessor)
|
|
||||||
# ----------------------
|
|
||||||
|
|
||||||
#
|
|
||||||
# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
|
|
||||||
#
|
|
||||||
# -d is the same as #DEFINE
|
|
||||||
# -u is the same as #UNDEF
|
|
||||||
#
|
|
||||||
|
|
||||||
# When not m68k is defined at the commandline, define i386
|
|
||||||
#IFNDEF m68k
|
|
||||||
#DEFINE i386
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
#
|
|
||||||
# Some examples (for switches see below, and the -? helppages)
|
|
||||||
#
|
|
||||||
# Try compiling with the -dRELEASE or -dDEBUG on the commandline
|
|
||||||
#
|
|
||||||
|
|
||||||
# For a release compile with optimizes and strip debuginfo
|
|
||||||
#IFDEF RELEASE
|
|
||||||
-OG2p2
|
|
||||||
-Xs
|
|
||||||
#WRITE Compiling Release Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# For a debug version compile with debuginfo and all codegeneration checks on
|
|
||||||
#IFDEF DEBUG
|
|
||||||
-g
|
|
||||||
-Crtoi
|
|
||||||
#WRITE Compiling Debug Version
|
|
||||||
#ENDIF
|
|
||||||
|
|
||||||
# ----------------
|
|
||||||
# Parsing switches
|
|
||||||
# ----------------
|
|
||||||
|
|
||||||
# All assembler blocks are intel styled by default
|
|
||||||
#-Rintel
|
|
||||||
|
|
||||||
# All assembler blocks are AT&T styled by default
|
|
||||||
#-Ratt
|
|
||||||
|
|
||||||
# All assembler blocks are directly copied to asm
|
|
||||||
#-Rdirect
|
|
||||||
|
|
||||||
# Semantic checking
|
|
||||||
# -S2 switch some Delphi 2 extension on
|
|
||||||
# -Sc supports operators like C (*=,+=,/= and -=)
|
|
||||||
# -Sg allows LABEL and GOTO
|
|
||||||
# -Si support C++ stlyed INLINE
|
|
||||||
# -Sm support macros like C (global)
|
|
||||||
# -So tries to be TP/BP 7.0 compatible
|
|
||||||
# -Ss constructor name must be init (destructor must be done)
|
|
||||||
# -St allows static keyword in objects
|
|
||||||
|
|
||||||
# Allow goto, inline, C-operators
|
|
||||||
-Sgic
|
|
||||||
|
|
||||||
# ---------------
|
|
||||||
# Code generation
|
|
||||||
# ---------------
|
|
||||||
|
|
||||||
# Uncomment the next line if you always want static/dynamic units by default
|
|
||||||
# (can be overruled with -CD, -CS at the commandline)
|
|
||||||
#-CS
|
|
||||||
#-CD
|
|
||||||
|
|
||||||
# Set the default heapsize to 8Mb
|
|
||||||
#-Ch8000000
|
|
||||||
|
|
||||||
# Set default codegeneration checks (iocheck, overflow, range, stack)
|
|
||||||
#-Ci
|
|
||||||
#-Co
|
|
||||||
#-Cr
|
|
||||||
#-Ct
|
|
||||||
|
|
||||||
# Optimizer switches
|
|
||||||
# -Og generate smaller code
|
|
||||||
# -OG generate faster code (default)
|
|
||||||
# -Or keep certain variables in registers (still BUGGY!!!)
|
|
||||||
# -Ou enable uncertain optimizations (see docs)
|
|
||||||
# -O1 level 1 optimizations (quick optimizations)
|
|
||||||
# -O2 level 2 optimizations (-O1 + slower optimizations)
|
|
||||||
# -O3 level 3 optimizations (same as -O2u)
|
|
||||||
# -Op target processor
|
|
||||||
# -Op1 set target processor to 386/486
|
|
||||||
# -Op2 set target processor to Pentium/PentiumMMX (tm)
|
|
||||||
# -Op3 set target processor to PPro/PII/c6x86/K6 (tm)
|
|
||||||
|
|
||||||
# Optimize always for Size and Pentium
|
|
||||||
#-Og2p2
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------
|
|
||||||
# Set Filenames and Paths
|
|
||||||
# -----------------------
|
|
||||||
|
|
||||||
# Both slashes and backslashes are allowed in paths
|
|
||||||
|
|
||||||
# path to the messagefile, not necessary anymore but can be used to override
|
|
||||||
# the default language
|
|
||||||
#-Fr$1/msg/errore.msg
|
|
||||||
#-Fr$1/msg/errorn.msg
|
|
||||||
#-Fr$1/msg/errores.msg
|
|
||||||
#-Fr$1/msg/errord.msg
|
|
||||||
#-Fr$1/msg/errorr.msg
|
|
||||||
|
|
||||||
# path to the gcclib
|
|
||||||
#-Fl$1/lib
|
|
||||||
|
|
||||||
# searchpath for includefiles
|
|
||||||
-Fi$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for objectfiles
|
|
||||||
#-Fo$1/source/rtl/inc;$1/source/rtl/i386
|
|
||||||
|
|
||||||
# searchpath for libraries
|
|
||||||
#-Fl$1/lib
|
|
||||||
#-Fl/lib;/usr/lib
|
|
||||||
|
|
||||||
# searchpath for units and other system dependent things
|
|
||||||
-Fu$1/units/$TARGET
|
|
||||||
-Fu$1/units/$TARGET/*
|
|
||||||
-Fu$1/units/$TARGET/rtl
|
|
||||||
|
|
||||||
# searchpath for tools
|
|
||||||
-FD$1/bin/$TARGET
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Linking
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# generate always debugging information for GDB (slows down the compiling
|
|
||||||
# process)
|
|
||||||
#-g
|
|
||||||
|
|
||||||
# always pass an option to the linker
|
|
||||||
#-k-s
|
|
||||||
|
|
||||||
# Always strip debuginfo from the executable
|
|
||||||
-Xs
|
|
||||||
|
|
||||||
|
|
||||||
# -------------
|
|
||||||
# Miscellaneous
|
|
||||||
# -------------
|
|
||||||
|
|
||||||
# Write always a nice FPC logo ;)
|
|
||||||
-l
|
|
||||||
|
|
||||||
# Verbosity
|
|
||||||
# e : Show errors (default) d : Show debug info
|
|
||||||
# w : Show warnings u : Show used files
|
|
||||||
# n : Show notes t : Show tried files
|
|
||||||
# h : Show hints m : Show defined macros
|
|
||||||
# i : Show general info p : Show compiled procedures
|
|
||||||
# l : Show linenumbers c : Show conditionals
|
|
||||||
# a : Show everything 0 : Show nothing (except errors)
|
|
||||||
|
|
||||||
# Display Info, Warnings, Notes and Hints
|
|
||||||
-viwnh
|
|
||||||
# If you don't want so much verbosity use
|
|
||||||
#-vw
|
|
||||||
|
|
||||||
#
|
|
||||||
# That's all folks
|
|
||||||
#
|
|
||||||
endcfg
|
|
@ -80,8 +80,8 @@ program install;
|
|||||||
const
|
const
|
||||||
installerversion='0.99.14';
|
installerversion='0.99.14';
|
||||||
|
|
||||||
|
maxpacks=10;
|
||||||
maxpackages=20;
|
maxpackages=20;
|
||||||
maxsources=20;
|
|
||||||
maxdefcfgs=1024;
|
maxdefcfgs=1024;
|
||||||
|
|
||||||
CfgExt = '.dat';
|
CfgExt = '.dat';
|
||||||
@ -94,8 +94,16 @@ program install;
|
|||||||
|
|
||||||
type
|
type
|
||||||
tpackage=record
|
tpackage=record
|
||||||
name : string[60];
|
name : string[60];
|
||||||
zip : string[12];
|
zip : string[12];
|
||||||
|
end;
|
||||||
|
|
||||||
|
tpack=record
|
||||||
|
name : string[12];
|
||||||
|
include : boolean;
|
||||||
|
filechk : string[40];
|
||||||
|
packages : longint;
|
||||||
|
package : array[1..maxpackages] of tpackage;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
cfgrec=record
|
cfgrec=record
|
||||||
@ -104,10 +112,8 @@ program install;
|
|||||||
basepath : DirStr;
|
basepath : DirStr;
|
||||||
binsub : string[12];
|
binsub : string[12];
|
||||||
ppc386 : string[12];
|
ppc386 : string[12];
|
||||||
packages : longint;
|
packs : word;
|
||||||
package : array[1..maxpackages] of tpackage;
|
pack : array[1..maxpacks] of tpack;
|
||||||
sources : longint;
|
|
||||||
source : array[1..maxsources] of tpackage;
|
|
||||||
defcfgfile : string[12];
|
defcfgfile : string[12];
|
||||||
defcfgs : longint;
|
defcfgs : longint;
|
||||||
defcfg : array[1..maxdefcfgs] of pstring;
|
defcfg : array[1..maxdefcfgs] of pstring;
|
||||||
@ -116,15 +122,14 @@ program install;
|
|||||||
datarec=packed record
|
datarec=packed record
|
||||||
basepath : DirStr;
|
basepath : DirStr;
|
||||||
cfgval : word;
|
cfgval : word;
|
||||||
packmask : word;
|
packmask : array[1..maxpacks] of word;
|
||||||
srcmask : word;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
punzipdialog=^tunzipdialog;
|
punzipdialog=^tunzipdialog;
|
||||||
tunzipdialog=object(tdialog)
|
tunzipdialog=object(tdialog)
|
||||||
filetext : pstatictext;
|
filetext : pstatictext;
|
||||||
constructor Init(var Bounds: TRect; ATitle: TTitleStr);
|
constructor Init(var Bounds: TRect; ATitle: TTitleStr);
|
||||||
procedure do_unzip(s,topath:string);
|
procedure do_unzip(s,topath:string);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
penddialog = ^tenddialog;
|
penddialog = ^tenddialog;
|
||||||
@ -142,31 +147,32 @@ program install;
|
|||||||
procedure handleevent(var event : tevent);virtual;
|
procedure handleevent(var event : tevent);virtual;
|
||||||
procedure do_installdialog;
|
procedure do_installdialog;
|
||||||
procedure readcfg(const fn:string);
|
procedure readcfg(const fn:string);
|
||||||
|
procedure checkavailpack;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$IFDEF DOSSTUB}
|
{$IFDEF DOSSTUB}
|
||||||
PByte = ^byte;
|
PByte = ^byte;
|
||||||
PRunBlock = ^TRunBlock;
|
PRunBlock = ^TRunBlock;
|
||||||
TRunBlock = record
|
TRunBlock = record
|
||||||
Length: word;
|
Length: word;
|
||||||
Dependent: word;
|
Dependent: word;
|
||||||
Background: word;
|
Background: word;
|
||||||
TraceLevel: word;
|
TraceLevel: word;
|
||||||
PrgTitle: PChar;
|
PrgTitle: PChar;
|
||||||
PrgName: PChar;
|
PrgName: PChar;
|
||||||
Args: PChar;
|
Args: PChar;
|
||||||
TermQ: longint;
|
TermQ: longint;
|
||||||
Environment: pointer;
|
Environment: pointer;
|
||||||
Inheritance: word;
|
Inheritance: word;
|
||||||
SesType: word;
|
SesType: word;
|
||||||
Icon: pointer;
|
Icon: pointer;
|
||||||
PgmHandle: longint;
|
PgmHandle: longint;
|
||||||
PgmControl: word;
|
PgmControl: word;
|
||||||
Column: word;
|
Column: word;
|
||||||
Row: word;
|
Row: word;
|
||||||
Width: word;
|
Width: word;
|
||||||
Height: word;
|
Height: word;
|
||||||
end;
|
end;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
var
|
var
|
||||||
@ -190,6 +196,7 @@ program install;
|
|||||||
halt(1);
|
halt(1);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function packagemask(i:longint):longint;
|
function packagemask(i:longint):longint;
|
||||||
begin
|
begin
|
||||||
packagemask:=1 shl (i-1);
|
packagemask:=1 shl (i-1);
|
||||||
@ -229,6 +236,7 @@ program install;
|
|||||||
file_exists:=fsearch(f,path)<>'';
|
file_exists:=fsearch(f,path)<>'';
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function createdir(s:string):boolean;
|
function createdir(s:string):boolean;
|
||||||
var
|
var
|
||||||
s1,start : string;
|
s1,start : string;
|
||||||
@ -268,6 +276,7 @@ program install;
|
|||||||
createdir:=err;
|
createdir:=err;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function DiskSpaceN(const zipfile : string) : longint;
|
function DiskSpaceN(const zipfile : string) : longint;
|
||||||
var
|
var
|
||||||
compressed,uncompressed : longint;
|
compressed,uncompressed : longint;
|
||||||
@ -411,6 +420,7 @@ program install;
|
|||||||
|
|
||||||
procedure tunzipdialog.do_unzip(s,topath : string);
|
procedure tunzipdialog.do_unzip(s,topath : string);
|
||||||
var
|
var
|
||||||
|
again : boolean;
|
||||||
fn,dir,wild : string;
|
fn,dir,wild : string;
|
||||||
begin
|
begin
|
||||||
Disposestr(filetext^.text);
|
Disposestr(filetext^.text);
|
||||||
@ -422,25 +432,26 @@ program install;
|
|||||||
'Installation doesn''t becomes complete',nil,mferror+mfokbutton);
|
'Installation doesn''t becomes complete',nil,mferror+mfokbutton);
|
||||||
errorhalt;
|
errorhalt;
|
||||||
end;
|
end;
|
||||||
fn:=startpath+DirSep+s+#0;
|
repeat
|
||||||
dir:=topath+#0;
|
fn:=startpath+DirSep+s+#0;
|
||||||
wild:=AllFiles + #0;
|
dir:=topath+#0;
|
||||||
(* TH - added to clear the previous state of DosError *)
|
wild:=AllFiles + #0;
|
||||||
DosError := 0;
|
DosError := 0;
|
||||||
|
again:=false;
|
||||||
{$IFDEF DLL}
|
{$IFDEF DLL}
|
||||||
if
|
if FileUnzipEx(@fn[1],@dir[1],@wild[1])=0 then
|
||||||
{$ENDIF}
|
|
||||||
FileUnzipEx(@fn[1],@dir[1],@wild[1])
|
|
||||||
{$IFDEF DLL}
|
|
||||||
= 0 then
|
|
||||||
{$ELSE}
|
{$ELSE}
|
||||||
;
|
FileUnzipEx(@fn[1],@dir[1],@wild[1]);
|
||||||
if doserror<>0 then
|
if (doserror<>0) then
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
begin
|
begin
|
||||||
messagebox('Error when extracting. Disk full?',nil,mferror+mfokbutton);
|
if messagebox('Error when extracting. Disk full?'#13+
|
||||||
errorhalt;
|
#13#3'Try again?',nil,mferror+mfyesbutton+mfnobutton)=cmNo then
|
||||||
end;
|
errorhalt
|
||||||
|
else
|
||||||
|
again:=true;
|
||||||
|
end;
|
||||||
|
until not again;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -535,13 +546,15 @@ program install;
|
|||||||
y2 = y1+height;
|
y2 = y1+height;
|
||||||
var
|
var
|
||||||
tabr,tabir,r : trect;
|
tabr,tabir,r : trect;
|
||||||
srcmask,
|
packmask : array[1..maxpacks] of longint;
|
||||||
mask_components : longint;
|
i,line,j : integer;
|
||||||
i,line : integer;
|
items : array[1..maxpacks] of psitem;
|
||||||
srcitems,items : psitem;
|
|
||||||
f : pview;
|
f : pview;
|
||||||
|
found : boolean;
|
||||||
okbut,cancelbut : pbutton;
|
okbut,cancelbut : pbutton;
|
||||||
packcbs,sourcecbs : pcheckboxes;
|
firstitem : array[1..maxpacks] of integer;
|
||||||
|
packcbs : array[1..maxpacks] of pcheckboxes;
|
||||||
|
packtd : ptabdef;
|
||||||
labpath : plabel;
|
labpath : plabel;
|
||||||
ilpath : pinputline;
|
ilpath : pinputline;
|
||||||
tab : ptab;
|
tab : ptab;
|
||||||
@ -551,35 +564,31 @@ program install;
|
|||||||
begin
|
begin
|
||||||
f:=nil;
|
f:=nil;
|
||||||
{ walk packages reverse and insert a newsitem for each, and set the mask }
|
{ walk packages reverse and insert a newsitem for each, and set the mask }
|
||||||
items:=nil;
|
for j:=1to cfg.packs do
|
||||||
mask_components:=0;
|
with cfg.pack[j] do
|
||||||
for i:=cfg.packages downto 1 do
|
begin
|
||||||
begin
|
firstitem[j]:=0;
|
||||||
if file_exists(cfg.package[i].zip,startpath) then
|
items[j]:=nil;
|
||||||
begin
|
packmask[j]:=0;
|
||||||
items:=newsitem(cfg.package[i].name+diskspace(startpath+DirSep+cfg.package[i].zip),items);
|
for i:=packages downto 1 do
|
||||||
mask_components:=mask_components or packagemask(i);
|
begin
|
||||||
end
|
if file_exists(package[i].zip,startpath) then
|
||||||
else
|
begin
|
||||||
items:=newsitem(cfg.package[i].name,items);
|
items[j]:=newsitem(package[i].name+diskspace(startpath+DirSep+package[i].zip),items[j]);
|
||||||
end;
|
packmask[j]:=packmask[j] or packagemask(i);
|
||||||
|
firstitem[j]:=i;
|
||||||
{ walk source packages reverse and insert a newsitem for each, and set the mask }
|
end
|
||||||
srcitems:=nil;
|
else
|
||||||
srcmask:=0;
|
items[j]:=newsitem(package[i].name,items[j]);
|
||||||
for i:=cfg.sources downto 1 do
|
end;
|
||||||
begin
|
end;
|
||||||
if file_exists(cfg.source[i].zip,startpath) then
|
|
||||||
begin
|
|
||||||
srcitems:=newsitem(cfg.source[i].name+diskspace(startpath+DirSep+cfg.source[i].zip),srcitems);
|
|
||||||
srcmask:=srcmask or packagemask(i);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
srcitems:=newsitem(cfg.source[i].name,srcitems);
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ If no component found abort }
|
{ If no component found abort }
|
||||||
if (mask_components=0) and (srcmask=0) then
|
found:=false;
|
||||||
|
for j:=1to cfg.packs do
|
||||||
|
if packmask[j]<>0 then
|
||||||
|
found:=true;
|
||||||
|
if not found then
|
||||||
begin
|
begin
|
||||||
messagebox('No components found to install, aborting.',nil,mferror+mfokbutton);
|
messagebox('No components found to install, aborting.',nil,mferror+mfokbutton);
|
||||||
errorhalt;
|
errorhalt;
|
||||||
@ -595,7 +604,7 @@ program install;
|
|||||||
TabIR.Grow(-2,-2);
|
TabIR.Grow(-2,-2);
|
||||||
TabIR.Move(-2,0);
|
TabIR.Move(-2,0);
|
||||||
|
|
||||||
{-------- Sheet 1 ----------}
|
{-------- General Sheets ----------}
|
||||||
R.Copy(TabIR);
|
R.Copy(TabIR);
|
||||||
r.move(0,1);
|
r.move(0,1);
|
||||||
r.b.x:=r.a.x+40;
|
r.b.x:=r.a.x+40;
|
||||||
@ -619,19 +628,22 @@ program install;
|
|||||||
new(cfgcb,init(r,newsitem('create ppc386.cfg',nil)));
|
new(cfgcb,init(r,newsitem('create ppc386.cfg',nil)));
|
||||||
data.cfgval:=1;
|
data.cfgval:=1;
|
||||||
|
|
||||||
{-------- Sheet 2 ----------}
|
{-------- Pack Sheets ----------}
|
||||||
R.Copy(TabIR);
|
for j:=1to cfg.packs do
|
||||||
new(packcbs,init(r,items));
|
begin
|
||||||
data.packmask:=mask_components;
|
R.Copy(TabIR);
|
||||||
pcluster(packcbs)^.enablemask:=mask_components;
|
new(packcbs[j],init(r,items[j]));
|
||||||
|
if data.packmask[j]=$ffff then
|
||||||
{-------- Sheet 3 ----------}
|
data.packmask[j]:=packmask[j];
|
||||||
R.Copy(TabIR);
|
packcbs[j]^.enablemask:=packmask[j];
|
||||||
new(sourcecbs,init(r,srcitems));
|
packcbs[j]^.movedto(firstitem[j]);
|
||||||
data.srcmask:=srcmask;
|
end;
|
||||||
pcluster(sourcecbs)^.enablemask:=srcmask;
|
|
||||||
|
|
||||||
{--------- Main ---------}
|
{--------- Main ---------}
|
||||||
|
packtd:=nil;
|
||||||
|
for j:=cfg.packs downto 1 do
|
||||||
|
packtd:=NewTabDef(cfg.pack[j].name,PackCbs[j],NewTabItem(PackCbs[j],nil),packtd);
|
||||||
|
|
||||||
New(Tab, Init(TabR,
|
New(Tab, Init(TabR,
|
||||||
NewTabDef('~G~eneral',IlPath,
|
NewTabDef('~G~eneral',IlPath,
|
||||||
NewTabItem(TitleText,
|
NewTabItem(TitleText,
|
||||||
@ -640,23 +652,18 @@ program install;
|
|||||||
NewTabItem(LabCfg,
|
NewTabItem(LabCfg,
|
||||||
NewTabItem(CfgCB,
|
NewTabItem(CfgCB,
|
||||||
nil))))),
|
nil))))),
|
||||||
NewTabDef('~P~ackages',PackCbs,
|
packtd)
|
||||||
NewTabItem(PackCbs,
|
));
|
||||||
nil),
|
|
||||||
NewTabDef('~S~ources',SourceCbs,
|
|
||||||
NewTabItem(SourceCbs,
|
|
||||||
nil),
|
|
||||||
nil)))));
|
|
||||||
Tab^.GrowMode:=0;
|
Tab^.GrowMode:=0;
|
||||||
Insert(Tab);
|
Insert(Tab);
|
||||||
|
|
||||||
line:=tabr.b.y;
|
line:=tabr.b.y;
|
||||||
r.assign((width div 2)-14,line,(width div 2)-4,line+2);
|
r.assign((width div 2)-18,line,(width div 2)-4,line+2);
|
||||||
new(okbut,init(r,'~O~k',cmok,bfdefault));
|
new(okbut,init(r,'~C~ontinue',cmok,bfdefault));
|
||||||
Insert(OkBut);
|
Insert(OkBut);
|
||||||
|
|
||||||
r.assign((width div 2)+4,line,(width div 2)+14,line+2);
|
r.assign((width div 2)+4,line,(width div 2)+14,line+2);
|
||||||
new(cancelbut,init(r,'~C~ancel',cmcancel,bfnormal));
|
new(cancelbut,init(r,'~Q~uit',cmcancel,bfnormal));
|
||||||
Insert(CancelBut);
|
Insert(CancelBut);
|
||||||
|
|
||||||
Tab^.Select;
|
Tab^.Select;
|
||||||
@ -678,7 +685,8 @@ program install;
|
|||||||
r : trect;
|
r : trect;
|
||||||
result,
|
result,
|
||||||
c : word;
|
c : word;
|
||||||
i : longint;
|
i,j : longint;
|
||||||
|
found : boolean;
|
||||||
{$ifndef linux}
|
{$ifndef linux}
|
||||||
DSize,Space : longint;
|
DSize,Space : longint;
|
||||||
S: DirStr;
|
S: DirStr;
|
||||||
@ -686,8 +694,8 @@ program install;
|
|||||||
begin
|
begin
|
||||||
data.basepath:=cfg.basepath;
|
data.basepath:=cfg.basepath;
|
||||||
data.cfgval:=0;
|
data.cfgval:=0;
|
||||||
data.srcmask:=0;
|
for j:=1to cfg.packs do
|
||||||
data.packmask:=0;
|
data.packmask[j]:=$ffff;
|
||||||
|
|
||||||
repeat
|
repeat
|
||||||
{ select components }
|
{ select components }
|
||||||
@ -699,23 +707,24 @@ program install;
|
|||||||
messagebox('Please, choose the directory for installation first.',nil,mferror+mfokbutton)
|
messagebox('Please, choose the directory for installation first.',nil,mferror+mfokbutton)
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
if (data.srcmask>0) or (data.packmask>0) then
|
found:=false;
|
||||||
|
for j:=1to cfg.packs do
|
||||||
|
if data.packmask[j]>0 then
|
||||||
|
found:=true;
|
||||||
|
if found then
|
||||||
begin
|
begin
|
||||||
{$IFNDEF LINUX}
|
{$IFNDEF LINUX}
|
||||||
{ TH - check the available disk space here }
|
{ TH - check the available disk space here }
|
||||||
DSize := 0;
|
DSize := 0;
|
||||||
for i:=1 to cfg.packages do
|
for j:=1to cfg.packs do
|
||||||
begin
|
with cfg.pack[j] do
|
||||||
if data.packmask and packagemask(i)<>0 then
|
begin
|
||||||
Inc (DSize, DiskSpaceN(cfg.package[i].zip));
|
for i:=1 to packages do
|
||||||
end;
|
begin
|
||||||
for i:=1 to cfg.sources do
|
if data.packmask[j] and packagemask(i)<>0 then
|
||||||
begin
|
Inc (DSize, DiskSpaceN(package[i].zip));
|
||||||
if data.srcmask and packagemask(i)<>0 then
|
end;
|
||||||
Inc (DSize, DiskSpaceN(cfg.source[i].zip));
|
end;
|
||||||
end;
|
|
||||||
if data.packmask and packagemask(i)<>0 then
|
|
||||||
Inc (DSize, DiskSpaceN(cfg.package[i].zip));
|
|
||||||
S := FExpand (Data.BasePath);
|
S := FExpand (Data.BasePath);
|
||||||
if S [Length (S)] = DirSep then
|
if S [Length (S)] = DirSep then
|
||||||
Dec (S [0]);
|
Dec (S [0]);
|
||||||
@ -724,7 +733,7 @@ program install;
|
|||||||
S := 'is not'
|
S := 'is not'
|
||||||
else
|
else
|
||||||
S := '';
|
S := '';
|
||||||
if Space < DSize + 500 then
|
if true or (Space < DSize + 500) then
|
||||||
begin
|
begin
|
||||||
if S = '' then
|
if S = '' then
|
||||||
S := 'might not be';
|
S := 'might not be';
|
||||||
@ -740,9 +749,20 @@ program install;
|
|||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
result:=messagebox('No components selected.'#13#13'Abort installation?',nil,mferror+mfyesbutton+mfnobutton);
|
{ maybe only config }
|
||||||
if result=cmYes then
|
if (data.cfgval and 1)<>0 then
|
||||||
exit;
|
begin
|
||||||
|
result:=messagebox('No components selected.'#13#13'Create a configfile ?',nil,mfinformation+mfyesbutton+mfnobutton);
|
||||||
|
if (result=cmYes) and createinstalldir(data.basepath) then
|
||||||
|
writedefcfg(data.basepath+cfg.binsub+DirSep+cfg.defcfgfile);
|
||||||
|
exit;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
|
result:=messagebox('No components selected.'#13#13'Abort installation?',nil,mferror+mfyesbutton+mfnobutton);
|
||||||
|
if result=cmYes then
|
||||||
|
exit;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
@ -751,28 +771,20 @@ program install;
|
|||||||
until false;
|
until false;
|
||||||
|
|
||||||
{ extract packages }
|
{ extract packages }
|
||||||
r.assign(20,7,60,16);
|
for j:=1 to cfg.packs do
|
||||||
p2:=new(punzipdialog,init(r,'Extracting Packages'));
|
with cfg.pack[j] do
|
||||||
desktop^.insert(p2);
|
begin
|
||||||
for i:=1 to cfg.packages do
|
r.assign(20,7,60,16);
|
||||||
begin
|
p2:=new(punzipdialog,init(r,'Extracting Packages'));
|
||||||
if data.packmask and packagemask(i)<>0 then
|
desktop^.insert(p2);
|
||||||
p2^.do_unzip(cfg.package[i].zip,data.basepath);
|
for i:=1 to packages do
|
||||||
end;
|
begin
|
||||||
desktop^.delete(p2);
|
if data.packmask[j] and packagemask(i)<>0 then
|
||||||
dispose(p2,done);
|
p2^.do_unzip(package[i].zip,data.basepath);
|
||||||
|
end;
|
||||||
{ extract sources }
|
desktop^.delete(p2);
|
||||||
r.assign(20,7,60,16);
|
dispose(p2,done);
|
||||||
p2:=new(punzipdialog,init(r,'Extracting Sources'));
|
end;
|
||||||
desktop^.insert(p2);
|
|
||||||
for i:=1 to cfg.sources do
|
|
||||||
begin
|
|
||||||
if data.srcmask and packagemask(i)<>0 then
|
|
||||||
p2^.do_unzip(cfg.source[i].zip,data.basepath);
|
|
||||||
end;
|
|
||||||
desktop^.delete(p2);
|
|
||||||
dispose(p2,done);
|
|
||||||
|
|
||||||
{ write config }
|
{ write config }
|
||||||
if (data.cfgval and 1)<>0 then
|
if (data.cfgval and 1)<>0 then
|
||||||
@ -879,27 +891,45 @@ program install;
|
|||||||
until false;
|
until false;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if item='PACKAGE' then
|
if item='PACK' then
|
||||||
begin
|
begin
|
||||||
j:=pos(',',s);
|
inc(cfg.packs);
|
||||||
if (j>0) and (cfg.packages<maxpackages) then
|
if cfg.packs>maxpacks then
|
||||||
begin
|
begin
|
||||||
inc(cfg.packages);
|
writeln('Too much packs');
|
||||||
cfg.package[cfg.packages].zip:=copy(s,1,j-1);
|
halt(1);
|
||||||
cfg.package[cfg.packages].name:=copy(s,j+1,255);
|
|
||||||
end;
|
end;
|
||||||
|
cfg.pack[cfg.packs].name:=s;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if item='SOURCE' then
|
if item='FILECHECK' then
|
||||||
begin
|
begin
|
||||||
j:=pos(',',s);
|
if cfg.packs=0 then
|
||||||
if (j>0) and (cfg.sources<maxsources) then
|
|
||||||
begin
|
begin
|
||||||
inc(cfg.sources);
|
writeln('No pack set');
|
||||||
cfg.source[cfg.sources].zip:=copy(s,1,j-1);
|
halt(1);
|
||||||
cfg.source[cfg.sources].name:=copy(s,j+1,255);
|
|
||||||
end;
|
end;
|
||||||
end;
|
cfg.pack[cfg.packs].filechk:=s;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if item='PACKAGE' then
|
||||||
|
begin
|
||||||
|
if cfg.packs=0 then
|
||||||
|
begin
|
||||||
|
writeln('No pack set');
|
||||||
|
halt(1);
|
||||||
|
end;
|
||||||
|
with cfg.pack[cfg.packs] do
|
||||||
|
begin
|
||||||
|
j:=pos(',',s);
|
||||||
|
if (j>0) and (packages<maxpackages) then
|
||||||
|
begin
|
||||||
|
inc(packages);
|
||||||
|
package[packages].zip:=copy(s,1,j-1);
|
||||||
|
package[packages].name:=copy(s,j+1,255);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -907,6 +937,32 @@ program install;
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure tapp.checkavailpack;
|
||||||
|
var
|
||||||
|
j : longint;
|
||||||
|
dir : searchrec;
|
||||||
|
begin
|
||||||
|
{ check the packages }
|
||||||
|
j:=0;
|
||||||
|
while (j<cfg.packs) do
|
||||||
|
begin
|
||||||
|
inc(j);
|
||||||
|
if cfg.pack[j].filechk<>'' then
|
||||||
|
begin
|
||||||
|
findfirst(cfg.pack[j].filechk,$20,dir);
|
||||||
|
if doserror<>0 then
|
||||||
|
begin
|
||||||
|
{ remove the package }
|
||||||
|
move(cfg.pack[j+1],cfg.pack[j],sizeof(tpack)*(cfg.packs-j));
|
||||||
|
dec(cfg.packs);
|
||||||
|
dec(j);
|
||||||
|
end;
|
||||||
|
findclose(dir);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure tapp.initmenubar;
|
procedure tapp.initmenubar;
|
||||||
var
|
var
|
||||||
r : trect;
|
r : trect;
|
||||||
@ -914,7 +970,7 @@ program install;
|
|||||||
getextent(r);
|
getextent(r);
|
||||||
r.b.y:=r.a.y+1;
|
r.b.y:=r.a.y+1;
|
||||||
menubar:=new(pmenubar,init(r,newmenu(
|
menubar:=new(pmenubar,init(r,newmenu(
|
||||||
newsubmenu('~F~ree Pascal Installer '+installerversion,hcnocontext,newmenu(nil
|
newsubmenu('Free Pascal Installer',hcnocontext,newmenu(nil
|
||||||
),
|
),
|
||||||
nil))));
|
nil))));
|
||||||
end;
|
end;
|
||||||
@ -1039,13 +1095,17 @@ begin
|
|||||||
FSplit (FExpand (ParamStr (0)), DStr, CfgName, EStr);
|
FSplit (FExpand (ParamStr (0)), DStr, CfgName, EStr);
|
||||||
|
|
||||||
installapp.readcfg(CfgName + CfgExt);
|
installapp.readcfg(CfgName + CfgExt);
|
||||||
|
installapp.checkavailpack;
|
||||||
{ installapp.readcfg(startpath+dirsep+cfgfile);}
|
{ installapp.readcfg(startpath+dirsep+cfgfile);}
|
||||||
installapp.do_installdialog;
|
installapp.do_installdialog;
|
||||||
installapp.done;
|
installapp.done;
|
||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.10 2000-01-18 00:22:48 peter
|
Revision 1.11 2000-01-24 22:21:48 peter
|
||||||
|
* new install version (keys not wrong correct yet)
|
||||||
|
|
||||||
|
Revision 1.10 2000/01/18 00:22:48 peter
|
||||||
* fixed uninited local var
|
* fixed uninited local var
|
||||||
|
|
||||||
Revision 1.9 1999/08/03 20:21:53 peter
|
Revision 1.9 1999/08/03 20:21:53 peter
|
||||||
@ -1120,4 +1180,4 @@ end.
|
|||||||
Revision 1.2 1998/04/07 22:47:57 florian
|
Revision 1.2 1998/04/07 22:47:57 florian
|
||||||
+ version/release/patch numbers as string added
|
+ version/release/patch numbers as string added
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user