Browse Source

* A lot of issues fixed

olle 20 years ago
parent
commit
580f993497
4 changed files with 112 additions and 18 deletions
  1. 1 2
      install/macos/Install
  2. 74 7
      install/macos/Installer README
  3. 8 0
      install/macos/maccopy
  4. 29 9
      install/macos/prepare

+ 1 - 2
install/macos/Install

@@ -25,5 +25,4 @@ Echo "-Fu
 Echo "-l" >> "{FPCDIR}bin:fpc.cfg"
 Echo "-vi" >> "{FPCDIR}bin:fpc.cfg"
 
-Alert 'The installation was successful.'
-
+Alert 'The installation was successful.¶n¶nLicense information is located in the docs folder'

+ 74 - 7
install/macos/Installer README

@@ -1,15 +1,32 @@
 Welcome to Free Pascal for MPW on classic Mac OS
 ================================================
 
+Please also read the general README file.
+
+NOTE!
+
+Free Pascal for MPW is still considered beta quality and a lot of things
+are still missing. However ordinary programs should be able to compile. And
+the compiler can compile itself.
+
+Things which is not included: IDE, GDB, unitlity programs, demos, FPCMake 
+
+For documentation, please download separatelly.
+
 How to install:
 ---------------
 
 1. If  yo do not have MPW, please install MPW first.
-   MPW can be obtained for free from Apple.
+   MPW can be downloaded for free from Apple, see web page:
+     http://developer.apple.com/tools/mpw-tools/
+   download at:
+     ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./
+   It is then recommended that you upgrade to MPW Shell 3.6b1.
+
 
-2. Double click the file "Install". This will launch an
+2. Double click the file "INSTALL". This will launch an
    install script (via the ToolServer application, which is
-   included in MPW).
+   included in the MPW installation).
 
 3. If it is the first time you install Free Pascal,
    the install script will ask where you want to create the
@@ -23,12 +40,62 @@ How to install:
 5. Done.
 
 
+What is installed ?
+-------------------
+
+1. The FreePascal folder in a nice place.
+
+2. A file "FPC Startup" in "Startup Items" in MPW.
+
+3. An entry in "FPC Startup" which sets the environment variable FPCDIR
+   to point to the FreePascal folder.
+
+4. An entry in "FPC Startup" which adds the :FreePascal:bin folder to 
+   the Commando search path. 
+
+5. A fpc.cfg file in :FreePascal:bin, with among others, a path to
+   the runtime library (rtl).
+
+Uninstallation
+--------------
+
+1. Delete the FreePascal folder.
+
+2. Delete the file "FPC Startup" from the folder "Startup Items" in MPW
+
+
 Tips
 ----
 
-If you want to compile large programs, and in particular the rtl or
-the compiler itself, please increase the memory setting of
-MPW to 50 MB and ToolServer to 30 MB.
+* Usage, in short: To compile e. g. hello.pp, in MPW type:
+    fpc hello.pp
+  And press ENTER. Done.
+
+* If you want to compile large programs, and in particular the rtl
+  or the compiler itself, please increase the memory setting of
+  MPW to 50 MB and ToolServer to 30 MB.
+
+* Note that unit Sysutils.pp is not yet ported to MacOS, thus units
+  dependant on Sysutils.pp does neither work.
+
+* To invoke the compiler you can either use the command 'ppcppc' or 'fpc'.
+  Fpc is a wrapper script which simply call 'ppcppc'
+
+* Use mac style search path's.
+
+* Debugging is not available.
+
+Inner workings
+--------------
+
+FreePascal for MPW is an MPW tool. When FreePascal wants to assemble
+and link, it calls PPCAsm and PPCLink, via ToolServer.
+
+More info
+---------
+
+www.freepascal.org/fpcmac.html
 
-An upgrade to MPW Shell 3.6b1 is recommended
+http://www.freepascal.org/wiki/index.php/Target_MacOS
 
+http://www.freepascal.org/wiki/index.php/Mode_MacPas

+ 8 - 0
install/macos/maccopy

@@ -0,0 +1,8 @@
+# Script to copy a file, and in the same moment
+# translate possible LF's to CR
+
+Duplicate -y "{1}" {TempFolder}maccopytemp
+SetFile -c 'MPS ' -t 'TEXT' {TempFolder}maccopytemp
+Translate ¶r ¶n < {TempFolder}maccopytemp  > "{2}"
+SetFile -c 'MPS ' -t 'TEXT' "{2}" -l `Evaluate {3}*100`,`Evaluate {4}*100`
+Delete -y {TempFolder}maccopytemp

+ 29 - 9
install/macos/prepare

@@ -1,38 +1,58 @@
 # MPW script to  prepare an installation package
 # Precondition: fpc:install:macos is current dir.
 
+If {1} == ''
+  Echo '#ERROR FPC version must be given as parameter (e. g. 1.9.6)'
+  Exit 1
+Else
+	Set fpcversion "{1}"
+End
+#Set fpcversion '1.9.6'
 Set compilerdir :::compiler:
 Set rtlunitsdir :::rtl:units:powerpc-macos:
 
-Set units 'charset cmem dos getopts heaptrc macostp macpas macutils matrix ¶
-          objects objpas strings system unixutil'
+Set units "charset cmem dos getopts heaptrc macostp macpas macutils matrix objects objpas strings system unixutil"
 
 #Obtain path to compression program
 Set -e stuffapp `getFileName -m 'Tell me where the DroppStuff application is'`
-Set stuffolder ":Free Pascal for MPW:"
+Set stuffolder ":fpc-{fpcversion}.powerpc-macos:"
 
 Set Exit 0
 Delete -y "{stuffolder}"  ³ Dev:Null
 Set Exit 1
 NewFolder "{stuffolder}"
 
-Duplicate :"Installer README"  "{stuffolder}"README
-SetFile -c 'ttxt' -t 'TEXT' "{stuffolder}"README
-
-Duplicate :Install  "{stuffolder}"
-SetFile -c 'MPSX' -t 'TEXT' "{stuffolder}"install
+maccopy ::doc:readme.txt "{stuffolder}README" 1 1
+maccopy :"Installer README MacOS" "{stuffolder}README MacOS" 1 2
+maccopy :Install "{stuffolder}INSTALL" 1 3
+SetFile -c 'MPSX' -t 'TEXT' "{stuffolder}INSTALL"
+#maccopy ::doc:whatsnew.txt "{stuffolder}Whatsnew" 2 1
+#maccopy ::doc:copying.fpc "{stuffolder}Copying.fpc" 2 2
+#maccopy ::doc:copying "{stuffolder}Copying" 2 3
+#maccopy ::doc:faq.txt "{stuffolder}FAQ" 3 1
+#maccopy ::doc:faq.htm "{stuffolder}FAQ.htm" 3 2
+#SetFile -c 'MSIE' -t 'TEXT' "{stuffolder}FAQ.htm"
 
 NewFolder "{stuffolder}FreePascal"
 NewFolder "{stuffolder}FreePascal:bin"
 Duplicate "{compilerdir}"ppcppc  "{stuffolder}FreePascal:bin"
 Duplicate "{compilerdir}"utils:fpc.mpw  "{stuffolder}FreePascal:bin:fpc"
 
+NewFolder "{stuffolder}FreePascal:docs"
+maccopy ::doc:readme.txt "{stuffolder}FreePascal:docs:README" 1 1
+maccopy :"Installer README MacOS" "{stuffolder}FreePascal:docs:README MacOS" 1 2
+maccopy ::doc:whatsnew.txt "{stuffolder}FreePascal:docs:Whatsnew" 2 1
+maccopy ::doc:copying.fpc "{stuffolder}FreePascal:docs:Copying.fpc" 2 2
+maccopy ::doc:copying "{stuffolder}FreePascal:docs:Copying" 2 3
+maccopy ::doc:faq.txt "{stuffolder}FreePascal:docs:FAQ" 3 1
+maccopy ::doc:faq.htm "{stuffolder}FreePascal:docs:FAQ.htm" 3 2
+SetFile -c 'MSIE' -t 'TEXT' "{stuffolder}FreePascal:docs:FAQ.htm"
+
 NewFolder "{stuffolder}FreePascal:units"
 NewFolder "{stuffolder}FreePascal:units:rtl"
 For unit In {units}
   Duplicate "{rtlunitsdir}"{unit}.ppu  "{stuffolder}FreePascal:units:rtl"
   Duplicate "{rtlunitsdir}"{unit}.o  "{stuffolder}FreePascal:units:rtl"
-  #Echo {unit}
 End
 
 If "{stuffapp}" != ""