diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 00000000..4a3b5c36
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,6 @@
+* text=auto !eol
+*.pp gitlab-language=pascal
+*.inc gitlab-language=pascal
+*.pp diff=pascal
+*.pas diff=pascal
+*.inc diff=pascal
diff --git a/.gitfpcblockedhashes b/.gitfpcblockedhashes
new file mode 100644
index 00000000..e69de29b
diff --git a/.gitfpceligiblesvnhashes b/.gitfpceligiblesvnhashes
new file mode 100644
index 00000000..c0870818
--- /dev/null
+++ b/.gitfpceligiblesvnhashes
@@ -0,0 +1,20 @@
+ab918b97e2bf1b1c3534e01d22cc37f4fc43846c
+db4bc2103094ab27e90dba70a7e831798d8ffe0a
+98a7231bd3d09af6ac7c112e6163835c6f0816c3
+8b6f844abb34ff4916d30a6cc1de3a2ae359acf8
+0265bca02790eda8d3f6f3e9d70757a0c82f1618
+0b37ca48206e7373f6f82db3130018ac1eb21e46
+614ec19bece6cb979e266afb000b33e7e851a5b4
+7085eea5073feaa4a5a98913eecdc8c9453b8ea9
+a04134b134bd645cb79d35812f90ee6df6661e3e
+00ca849325f654716b1a2db79637f9102ef15a4b
+71488e4de71f84a28abc3dd5d61163ef04e33988
+308ceef87b190c2bae06a26ac473d6e4b97d5d0c
+38b9c448137a7cf62faa9a08e574aa0083ed8322
+9653812862e687d95ea5281119b1e367cbe62111
+bf231cbafefd0d26ad5f4bf3903f6ab8ed8adde3
+e1926e813b2de4f10ac3d79cf2f3b6a0b46b420d
+10871653e40dbe1b4ddccfe0f926b2ccfdc83116
+e6a6006b9b7b71a5eb31a76a720a7ad66796f02a
+45deed2329abfa21ee17f61379b6d8311b5b8acc
+31c4131240e5bb168ca75df11828630bf54262bb
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 00000000..579c6d53
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,29 @@
+# This .gitlab.ci.yml is based on:
+# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
+# the FPC specific parts are partly from:
+# https://gitlab.com/alb42/testconversion2/-/blob/main/.gitlab-ci.yml
+
+image: registry.gitlab.com/freepascal.org/fpc/source/debian-buster-x86_64
+
+variables:
+ GIT_SUBMODULE_STRATEGY: recursive
+
+stages:
+ - build-and-deploy
+
+build-job:
+ stage: build-and-deploy
+ artifacts:
+ name: "$CI_BUILD"
+ paths:
+ - fpc-*.tar
+ when: always
+ expire_in: 14 days
+ script:
+ - make -j 4 all OS_TARGET=linux CPU_TARGET=x86_64 FPMAKEOPT="-T 4"
+ - cd fpcdocs
+ - make pdftar > docs.log
+ - tail docs.log
+ - cd ..
+ - cp fpcdocs/doc-pdf.tar.gz .
+ - install/makepack
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..35687f49
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,8 @@
+[submodule "fpcsrc"]
+ path = fpcsrc
+ url = https://gitlab.com/freepascal.org/fpc/source.git
+ branch = fixes_3_2
+[submodule "fpcdocs"]
+ path = fpcdocs
+ url = https://gitlab.com/freepascal.org/fpc/documentation.git
+ branch = main
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 00000000..ff4abe6c
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,366 @@
+This is the file COPYING.FPC, it applies to the Free Pascal Run-Time Library
+(RTL) and packages (packages) distributed by members of the Free Pascal
+Development Team.
+
+The source code of the Free Pascal Runtime Libraries and packages are
+distributed under the Library GNU General Public License
+(see the file COPYING) with the following modification:
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent modules,
+and to copy and distribute the resulting executable under terms of your choice,
+provided that you also meet, for each linked independent module, the terms
+and conditions of the license of that module. An independent module is a module
+which is not derived from or based on this library. If you modify this
+library, you may extend this exception to your version of the library, but you are
+not obligated to do so. If you do not wish to do so, delete this exception
+statement from your version.
+
+If you didn't receive a copy of the file COPYING, contact:
+ Free Software Foundation
+ 675 Mass Ave
+ Cambridge, MA 02139
+ USA
+
+The compiler itself is licensed under the GPL V2:
+
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ testconversion
+ Copyright (C) 2021 FPC
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ , 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/Makefile b/Makefile
index bcccf188..8131b0be 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: help
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded xtensa-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded m68k-sinclairql powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-freertos arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android mips64el-linux jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-freebsd aarch64-darwin aarch64-win64 aarch64-android aarch64-ios wasm32-embedded wasm32-wasi sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded xtensa-linux xtensa-embedded xtensa-freertos z80-embedded z80-zxspectrum z80-msxdos z80-amstradcpc
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -196,6 +196,24 @@ $(error When compiling for mipsel-embedded, a sub-architecture (e.g. SUBARCH=pic
endif
override FPCOPT+=-Cp$(SUBARCH)
endif
+ifeq ($(FULL_TARGET),xtensa-embedded)
+ifeq ($(SUBARCH),)
+$(error When compiling for xtensa-embedded, a sub-architecture (e.g. SUBARCH=lx106 or SUBARCH=lx6) must be defined)
+endif
+override FPCOPT+=-Cp$(SUBARCH)
+endif
+ifeq ($(FULL_TARGET),xtensa-freertos)
+ifeq ($(SUBARCH),)
+$(error When compiling for xtensa-freertos, a sub-architecture (e.g. SUBARCH=lx106 or SUBARCH=lx6) must be defined)
+endif
+override FPCOPT+=-Cp$(SUBARCH)
+endif
+ifeq ($(FULL_TARGET),arm-freertos)
+ifeq ($(SUBARCH),)
+$(error When compiling for arm-freertos, a sub-architecture (e.g. SUBARCH=armv6m or SUBARCH=armv7em) must be defined)
+endif
+override FPCOPT+=-Cp$(SUBARCH)
+endif
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
TARGETSUFFIX=$(OS_TARGET)
SOURCESUFFIX=$(OS_SOURCE)
@@ -269,8 +287,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -330,7 +348,7 @@ FPCFPMAKE=$(FPC)
endif
endif
override PACKAGE_NAME=fpc
-override PACKAGE_VERSION=3.3.1
+override PACKAGE_VERSION=3.2.3
BS_FPC_VERSION:=$(FPC_VERSION)
FPC_VERSION:=$(firstword $(subst -, ,$(PACKAGE_VERSION)))
ifneq ($(wildcard install),)
@@ -436,12 +454,15 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
ifeq ($(FULL_TARGET),m68k-embedded)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),m68k-sinclairql)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),powerpc-linux)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
@@ -451,7 +472,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -529,9 +550,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_DIRS+=fpcsrc fpcdocs
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
@@ -553,6 +571,12 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),arm-freertos)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
@@ -586,6 +610,9 @@ endif
ifeq ($(FULL_TARGET),mipsel-android)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),mips64el-linux)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),jvm-java)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
@@ -604,13 +631,25 @@ endif
ifeq ($(FULL_TARGET),aarch64-linux)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),aarch64-freebsd)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),aarch64-darwin)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),aarch64-win64)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),wasm32-embedded)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),wasm32-wasi)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
ifeq ($(FULL_TARGET),sparc64-linux)
@@ -628,9 +667,27 @@ endif
ifeq ($(FULL_TARGET),riscv64-embedded)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),xtensa-linux)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
ifeq ($(FULL_TARGET),xtensa-embedded)
override TARGET_DIRS+=fpcsrc fpcdocs
endif
+ifeq ($(FULL_TARGET),xtensa-freertos)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),z80-embedded)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),z80-zxspectrum)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),z80-msxdos)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
+ifeq ($(FULL_TARGET),z80-amstradcpc)
+override TARGET_DIRS+=fpcsrc fpcdocs
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -828,6 +885,90 @@ endif
else
CROSSBINDIR=
endif
+ifeq ($(OS_SOURCE),linux)
+ifndef GCCLIBDIR
+ifeq ($(CPU_TARGET),i386)
+ifneq ($(findstring x86_64,$(shell uname -a)),)
+ifeq ($(BINUTILSPREFIX),)
+GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`)
+else
+CROSSGCCOPT=-m32
+endif
+endif
+endif
+ifeq ($(CPU_TARGET),powerpc)
+ifeq ($(BINUTILSPREFIX),)
+GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`)
+else
+CROSSGCCOPT=-m32
+endif
+endif
+ifeq ($(CPU_TARGET),powerpc64)
+ifeq ($(BINUTILSPREFIX),)
+GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`)
+else
+CROSSGCCOPT=-m64
+endif
+endif
+ifeq ($(CPU_TARGET),sparc)
+ifneq ($(findstring sparc64,$(shell uname -a)),)
+ifeq ($(BINUTILSPREFIX),)
+GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`)
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_OPT),mips mipsel),)
+CROSSGCCOPT=-mabi=32
+else
+CROSSGCCOPT=-m32
+endif
+endif
+endif
+endif
+endif
+ifdef FPCFPMAKE
+FPCFPMAKE_CPU_TARGET=$(shell $(FPCFPMAKE) -iTP)
+ifeq ($(CPU_TARGET),$(FPCFPMAKE_CPU_TARGET))
+FPCMAKEGCCLIBDIR:=$(GCCLIBDIR)
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_TARGET),aarch64 powerpc64 riscv64 sparc64 x86_64),)
+FPCMAKE_CROSSGCCOPT=-m64
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_OPT),mips64 mips64el),)
+FPCMAKE_CROSSGCCOPT=-mabi=64
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_OPT),mips mipsel),)
+FPCMAKE_CROSSGCCOPT=-mabi=32
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_OPT),riscv64),)
+FPCMAKE_CROSSGCCOPT=-mabi=lp64
+else
+ifneq ($(findstring $(FPCFPMAKE_CPU_OPT),riscv32),)
+FPCMAKE_CROSSGCCOPT=-mabi=ilp32
+else
+FPCMAKE_CROSSGCCOPT=-m32
+endif
+endif
+endif
+endif
+endif
+FPCMAKEGCCLIBDIR:=$(shell dirname `gcc $(FPCMAKE_CROSSGCCOPT) -print-libgcc-file-name`)
+endif
+endif
+ifndef FPCMAKEGCCLIBDIR
+FPCMAKEGCCLIBDIR:=$(shell dirname `gcc -print-libgcc-file-name`)
+endif
+ifndef GCCLIBDIR
+CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH))))
+ifneq ($(CROSSGCC),)
+GCCLIBDIR:=$(shell dirname `$(CROSSGCC) $(CROSSGCCOPT) -print-libgcc-file-name`)
+endif
+endif
+endif
+ifdef inUnix
+ifeq ($(OS_SOURCE),netbsd)
+OTHERLIBDIR:=/usr/pkg/lib
+endif
+export GCCLIBDIR FPCMAKEGCCLIBDIR OTHERLIBDIR
+endif
BATCHEXT=.bat
LOADEREXT=.as
EXEEXT=.exe
@@ -972,14 +1113,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1029,6 +1170,11 @@ STATICLIBPREFIX=
STATICLIBEXT=.a
SHORTSUFFIX=d16
endif
+ifeq ($(OS_TARGET),msxdos)
+STATICLIBPREFIX=
+STATICLIBEXT=.a
+SHORTSUFFIX=msd
+endif
ifeq ($(OS_TARGET),embedded)
ifeq ($(CPU_TARGET),i8086)
STATICLIBPREFIX=
@@ -1036,6 +1182,9 @@ STATICLIBEXT=.a
else
EXEEXT=.bin
endif
+ifeq ($(CPU_TARGET),z80)
+OEXT=.rel
+endif
SHORTSUFFIX=emb
endif
ifeq ($(OS_TARGET),win16)
@@ -1044,6 +1193,9 @@ STATICLIBEXT=.a
SHAREDLIBEXT=.dll
SHORTSUFFIX=w16
endif
+ifeq ($(OS_TARGET),zxspectrum)
+OEXT=.rel
+endif
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
FPCMADE=fpcmade.$(SHORTSUFFIX)
ZIPSUFFIX=$(SHORTSUFFIX)
@@ -1315,11 +1467,11 @@ endif
ifndef CROSSBOOTSTRAP
ifneq ($(BINUTILSPREFIX),)
override FPCOPT+=-XP$(BINUTILSPREFIX)
-endif
-ifneq ($(BINUTILSPREFIX),)
+ifneq ($(RLINKPATH),)
override FPCOPT+=-Xr$(RLINKPATH)
endif
endif
+endif
ifndef CROSSCOMPILE
ifneq ($(BINUTILSPREFIX),)
override FPCMAKEOPT+=-XP$(BINUTILSPREFIX)
@@ -1349,16 +1501,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1410,16 +1553,40 @@ override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
endif
endif
+ifdef SYSROOTPATH
+override FPCOPT+=-XR$(SYSROOTPATH)
+else
+ifeq ($(OS_TARGET),$(OS_SOURCE))
+ifneq ($(findstring $(OS_TARGET),darwin),)
+ifneq ($(findstring $(CPU_TARGET),aarch64),)
+ifneq ($(wildcard /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk),)
+override FPCOPT+=-XR/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
+endif
+endif
+endif
+endif
+endif
ifdef CREATESHARED
override FPCOPT+=-Cg
endif
ifneq ($(findstring $(OS_TARGET),dragonfly freebsd openbsd netbsd linux solaris),)
-ifneq ($(findstring $(CPU_TARGET),x86_64 mips mipsel),)
+ifneq ($(findstring $(CPU_TARGET),x86_64 mips mipsel riscv64),)
override FPCOPT+=-Cg
endif
endif
ifdef LINKSHARED
endif
+ifdef GCCLIBDIR
+override FPCOPT+=-Fl$(GCCLIBDIR)
+ifdef FPCMAKEGCCLIBDIR
+override FPCMAKEOPT+=-Fl$(FPCMAKEGCCLIBDIR)
+else
+override FPCMAKEOPT+=-Fl$(GCCLIBDIR)
+endif
+endif
+ifdef OTHERLIBDIR
+override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR))
+endif
ifdef OPT
override FPCOPT+=$(OPT)
endif
@@ -1931,7 +2098,7 @@ ifeq ($(FULL_TARGET),m68k-palmos)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
@@ -1939,6 +2106,10 @@ ifeq ($(FULL_TARGET),m68k-embedded)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),m68k-sinclairql)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),powerpc-linux)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
@@ -1951,7 +2122,7 @@ ifeq ($(FULL_TARGET),powerpc-amiga)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
@@ -2055,10 +2226,6 @@ ifeq ($(FULL_TARGET),arm-palmos)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-TARGET_DIRS_FPCSRC=1
-TARGET_DIRS_FPCDOCS=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
@@ -2087,6 +2254,14 @@ ifeq ($(FULL_TARGET),arm-aros)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),arm-freertos)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),arm-ios)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
@@ -2131,6 +2306,10 @@ ifeq ($(FULL_TARGET),mipsel-android)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),mips64el-linux)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),jvm-java)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
@@ -2155,15 +2334,31 @@ ifeq ($(FULL_TARGET),aarch64-linux)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),aarch64-freebsd)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),aarch64-darwin)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),aarch64-win64)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),aarch64-android)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),wasm32-embedded)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),wasm32-wasi)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
@@ -2187,10 +2382,34 @@ ifeq ($(FULL_TARGET),riscv64-embedded)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),xtensa-linux)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifeq ($(FULL_TARGET),xtensa-embedded)
TARGET_DIRS_FPCSRC=1
TARGET_DIRS_FPCDOCS=1
endif
+ifeq ($(FULL_TARGET),xtensa-freertos)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),z80-embedded)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),z80-zxspectrum)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),z80-msxdos)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
+ifeq ($(FULL_TARGET),z80-amstradcpc)
+TARGET_DIRS_FPCSRC=1
+TARGET_DIRS_FPCDOCS=1
+endif
ifdef TARGET_DIRS_FPCSRC
fpcsrc_all:
$(MAKE) -C fpcsrc all
@@ -2321,6 +2540,7 @@ help:
@$(ECHO) deb Build linux .deb packages
@$(ECHO) inno "Build Windows (Innosetup) based installer"
@$(ECHO) innox64 "Build Win32-Win64 cross compiler installer"
+ @$(ECHO) innox86x64 "Build Windows (Innosetup) combined installer for Win32 and Win64"
@$(ECHO) innoce "Build Win32-Wince cross compiler installer"
@$(ECHO) innomsdos "Build Win32-MsDos cross compiler installer"
@$(ECHO) innoandroid "Build Win32-Android cross compiler installer"
@@ -2372,6 +2592,7 @@ ifeq ($(OS_TARGET),wince)
endif
ifeq ($(OS_TARGET),win64)
$(COPY) $(addprefix $(CVSINSTALL)/crossbinw64/, *.exe) $(INSTALL_BINDIR)
+ -$(COPY) $(CVSINSTALL)/binw32/gcc.exe $(INSTALL_BINDIR)/x86_64-win64-gcc.exe
endif
ifeq ($(OS_TARGET),msdos)
$(COPY) $(addprefix $(CVSINSTALL)/crossbinmsdos/, *.exe) $(INSTALL_BINDIR)
@@ -2393,6 +2614,7 @@ ifeq ($(OS_TARGET),win32)
endif
ifeq ($(OS_TARGET),win64)
-$(COPY) $(addprefix $(CVSINSTALL)/binw64/,*.ico *.exe *.dll *.h *.manifest) $(INSTALL_BINDIR)
+ -$(COPY) $(CVSINSTALL)/binw32/gcc.exe $(INSTALL_BINDIR)/x86_64-win64-gcc.exe
endif
endif
ifeq ($(OS_TARGET),os2)
@@ -2413,7 +2635,8 @@ endif
install: $(BUILDSTAMP)
$(MAKE) installbase
$(MAKE) -C fpcsrc installother
-crossinstall: $(BUILDSTAMP)
+crossinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) installbase CROSSINSTALL=1
$(MAKE) -C fpcsrc installother CROSSINSTALL=1
zipinstall: $(BUILDSTAMP)
@@ -2425,10 +2648,12 @@ ifeq ($(FULL_SOURCE),$(FULL_TARGET))
else
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(TARGETSUFFIX).built.on.$(SOURCESUFFIX)
endif
-crosszipinstall: $(BUILDSTAMP)
+crosszipinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) fpc_zipinstall CROSSINSTALL=1 ZIPTARGET=installbase ZIPNAME=base
$(MAKE) -C fpcsrc zipinstallother CROSSINSTALL=1
-crosssinglezipinstall: $(BUILDSTAMP)
+crosssinglezipinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(SOURCESUFFIX).cross.$(TARGETSUFFIX) CROSSINSTALL=1
.PHONY: docspdf makepackdocs docsrcinstall docsrc
DOCSOURCEDIR=$(INSTALL_SOURCEDIR)/../docs
@@ -2487,188 +2712,192 @@ sunoszip: checkfpcdir
$(MAKE) zipinstall OS_TARGET=sunos TARPROG=gtar
.PHONY: renametoshort shortsrc shortbin shortnames
renametoshort:
- -mv $(PKGPRE)base$(ZIPSUFFIX).zip base$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)compiler$(ZIPSUFFIX).zip comp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)installer$(ZIPSUFFIX).zip inst$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)asld$(ZIPSUFFIX).zip asld$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)make$(ZIPSUFFIX).zip make$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)gdb$(ZIPSUFFIX).zip gdb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)a52$(ZIPSUFFIX).zip ua52$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ami-extra$(ZIPSUFFIX).zip uami$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)amunits$(ZIPSUFFIX).zip uamu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)arosunits$(ZIPSUFFIX).zip uaru$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)aspell$(ZIPSUFFIX).zip uasp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)bfd$(ZIPSUFFIX).zip ubfd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)bzip2$(ZIPSUFFIX).zip ubz2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cairo$(ZIPSUFFIX).zip ucai$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cdrom$(ZIPSUFFIX).zip ucdr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)chm$(ZIPSUFFIX).zip uchm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cocoaint$(ZIPSUFFIX).zip ucoc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dblib$(ZIPSUFFIX).zip udblb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dbus$(ZIPSUFFIX).zip udbus$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dts$(ZIPSUFFIX).zip udts$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fastcgi$(ZIPSUFFIX).zip ufcgi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-async$(ZIPSUFFIX).zip ufcla$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-base$(ZIPSUFFIX).zip ufclb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-db$(ZIPSUFFIX).zip ufcld$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-extra$(ZIPSUFFIX).zip ufcex$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-fpcunit$(ZIPSUFFIX).zip ufclu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-image$(ZIPSUFFIX).zip ufcli$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-js$(ZIPSUFFIX).zip ufcjs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-json$(ZIPSUFFIX).zip ufclj$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-net$(ZIPSUFFIX).zip ufcln$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-passrc$(ZIPSUFFIX).zip ufcls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-pdf$(ZIPSUFFIX).zip ufcpd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-process$(ZIPSUFFIX).zip ufclp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-registry$(ZIPSUFFIX).zip ufclr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-report$(ZIPSUFFIX).zip ufcre$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-res$(ZIPSUFFIX).zip ufcle$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-sdo$(ZIPSUFFIX).zip ufcsd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-sound$(ZIPSUFFIX).zip ufsnd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-stl$(ZIPSUFFIX).zip ufcst$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-web$(ZIPSUFFIX).zip ufclw$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-xml$(ZIPSUFFIX).zip ufclx$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fftw$(ZIPSUFFIX).zip ufftw$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpc-all$(ZIPSUFFIX).zip ufpca$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpgtk$(ZIPSUFFIX).zip ufpgt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpindexer$(ZIPSUFFIX).zip ufpi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpmkunit$(ZIPSUFFIX).zip ufpmk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fppkg$(ZIPSUFFIX).zip ufppk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fuse$(ZIPSUFFIX).zip ufuse$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fv$(ZIPSUFFIX).zip ufv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gdbint$(ZIPSUFFIX).zip ugdb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gdbm$(ZIPSUFFIX).zip ugdbm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ggi$(ZIPSUFFIX).zip uggi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gmp$(ZIPSUFFIX).zip ugmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gnome1$(ZIPSUFFIX).zip ugno1$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gnutls$(ZIPSUFFIX).zip ugtls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)googleapi$(ZIPSUFFIX).zip ugapi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)graph$(ZIPSUFFIX).zip ugrph$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gtk1$(ZIPSUFFIX).zip ugtk1$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gtk2$(ZIPSUFFIX).zip ugtk2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)hash$(ZIPSUFFIX).zip uhash$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)hermes$(ZIPSUFFIX).zip uherm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd13$(ZIPSUFFIX).zip uhd13$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd20$(ZIPSUFFIX).zip uhd20$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd22$(ZIPSUFFIX).zip uhd22$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd24$(ZIPSUFFIX).zip uhd24$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ibase$(ZIPSUFFIX).zip uibas$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)iconvenc$(ZIPSUFFIX).zip uicve$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ide$(ZIPSUFFIX).zip uide$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)imagemagick$(ZIPSUFFIX).zip uimgm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)imlib$(ZIPSUFFIX).zip uimlb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)iosxlocale$(ZIPSUFFIX).zip uiosl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)jni$(ZIPSUFFIX).zip ujni$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ldap$(ZIPSUFFIX).zip uldap$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libc$(ZIPSUFFIX).zip ulibc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libcups$(ZIPSUFFIX).zip ulcup$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libcurl$(ZIPSUFFIX).zip ulcur$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libenet$(ZIPSUFFIX).zip ulnet$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libffi$(ZIPSUFFIX).zip ulffi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libfontconfig$(ZIPSUFFIX).zip ulfcg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgbafpc$(ZIPSUFFIX).zip ulgba$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgc$(ZIPSUFFIX).zip ulgc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgd$(ZIPSUFFIX).zip ulgd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libmagic$(ZIPSUFFIX).zip ulmag$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libmicrohttpd$(ZIPSUFFIX).zip ulmic$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libndsfpc$(ZIPSUFFIX).zip ulnds$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libogcfpc$(ZIPSUFFIX).zip ulogc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libpng$(ZIPSUFFIX).zip ulpng$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libsee$(ZIPSUFFIX).zip ulsee$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libtar$(ZIPSUFFIX).zip ultar$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libusb$(ZIPSUFFIX).zip ulusb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libvlc$(ZIPSUFFIX).zip ulvlc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libxml2$(ZIPSUFFIX).zip ulxml$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)lua$(ZIPSUFFIX).zip ulua$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)mad$(ZIPSUFFIX).zip umad$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)matroska$(ZIPSUFFIX).zip umatk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)modplug$(ZIPSUFFIX).zip umplg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)morphunits$(ZIPSUFFIX).zip umrph$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)mysql$(ZIPSUFFIX).zip umysq$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ncurses$(ZIPSUFFIX).zip uncrs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)newt$(ZIPSUFFIX).zip unewt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)numlib$(ZIPSUFFIX).zip unlib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)nvapi$(ZIPSUFFIX).zip unva$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)objcrtl$(ZIPSUFFIX).zip uobjc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)odata$(ZIPSUFFIX).zip uodat$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)odbc$(ZIPSUFFIX).zip uodbc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)oggvorbis$(ZIPSUFFIX).zip uoggv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)openal$(ZIPSUFFIX).zip uoal$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opencl$(ZIPSUFFIX).zip uocl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opengl$(ZIPSUFFIX).zip uogl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opengles$(ZIPSUFFIX).zip uogls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)openssl$(ZIPSUFFIX).zip uossl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)oracle$(ZIPSUFFIX).zip uora$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)os2units$(ZIPSUFFIX).zip uos2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)os4units$(ZIPSUFFIX).zip uos4$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)palmunits$(ZIPSUFFIX).zip upalm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pasjpeg$(ZIPSUFFIX).zip upjp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pastojs$(ZIPSUFFIX).zip up2js$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)paszlib$(ZIPSUFFIX).zip upzl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pcap$(ZIPSUFFIX).zip upcap$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)postgres$(ZIPSUFFIX).zip upgr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)proj4$(ZIPSUFFIX).zip uprj4$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ptc$(ZIPSUFFIX).zip uptc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pthreads$(ZIPSUFFIX).zip upthr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pxlib$(ZIPSUFFIX).zip upxl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)regexpr$(ZIPSUFFIX).zip ureg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rexx$(ZIPSUFFIX).zip urexx$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rsvg$(ZIPSUFFIX).zip ursvg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-console$(ZIPSUFFIX).zip urtlc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-extra$(ZIPSUFFIX).zip urtle$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-generics$(ZIPSUFFIX).zip urtlg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-objpas$(ZIPSUFFIX).zip urtlo$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-unicode$(ZIPSUFFIX).zip urtlu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sdl$(ZIPSUFFIX).zip usdl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sndfile$(ZIPSUFFIX).zip usndf$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sqlite$(ZIPSUFFIX).zip usqlt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)svgalib$(ZIPSUFFIX).zip usvga$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)symbolic$(ZIPSUFFIX).zip usymb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)syslog$(ZIPSUFFIX).zip usysl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)tcl$(ZIPSUFFIX).zip utcl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)tosunits$(ZIPSUFFIX).zip utos$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)univint$(ZIPSUFFIX).zip uuniv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)unixutil$(ZIPSUFFIX).zip uunix$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)unzip$(ZIPSUFFIX).zip uzip$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)users$(ZIPSUFFIX).zip uuser$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)utmp$(ZIPSUFFIX).zip uutmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)uuid$(ZIPSUFFIX).zip uuuid$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)vcl-compat$(ZIPSUFFIX).zip uvcl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)webidl$(ZIPSUFFIX).zip uwidl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winceunits$(ZIPSUFFIX).zip uwice$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winunits-base$(ZIPSUFFIX).zip uwib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winunits-jedi$(ZIPSUFFIX).zip uwij$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)x11$(ZIPSUFFIX).zip ux11$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)xforms$(ZIPSUFFIX).zip uxfrm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)zlib$(ZIPSUFFIX).zip uzlib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)zorba$(ZIPSUFFIX).zip uzorb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils$(ZIPSUFFIX).zip utils$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-debugsrv$(ZIPSUFFIX).zip udbgs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-dxegen$(ZIPSUFFIX).zip udxeg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcm$(ZIPSUFFIX).zip ufpcm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcmkcfg$(ZIPSUFFIX).zip ufpck$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcres$(ZIPSUFFIX).zip ufprs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcreslipo$(ZIPSUFFIX).zip ufprl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpdoc$(ZIPSUFFIX).zip ufpdc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpmc$(ZIPSUFFIX).zip ufpmc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fppkg$(ZIPSUFFIX).zip ufpkg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fprcp$(ZIPSUFFIX).zip ufprc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-h2pas$(ZIPSUFFIX).zip uh2pa$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-importtl$(ZIPSUFFIX).zip uimpt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-instantfpc$(ZIPSUFFIX).zip uifpc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-javaapp$(ZIPSUFFIX).zip ujvp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-json2pas$(ZIPSUFFIX).zip ujs2p$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-lexyacc$(ZIPSUFFIX).zip ulexy$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-mksymbian$(ZIPSUFFIX).zip umksb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2fpm$(ZIPSUFFIX).zip up2fp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2jni$(ZIPSUFFIX).zip up2jn$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2js$(ZIPSUFFIX).zip uupjs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2ut$(ZIPSUFFIX).zip up2ut$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-rmwait$(ZIPSUFFIX).zip urmw$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-sim_pasc$(ZIPSUFFIX).zip usmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-svn2cvs$(ZIPSUFFIX).zip us2c$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-unicode$(ZIPSUFFIX).zip uucd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)rtl$(ZIPSUFFIX).zip rtl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)base$(ZIPSUFFIX).zip base$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)compiler$(ZIPSUFFIX).zip comp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)installer$(ZIPSUFFIX).zip inst$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)asld$(ZIPSUFFIX).zip asld$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)make$(ZIPSUFFIX).zip make$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)gdb$(ZIPSUFFIX).zip gdb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)a52$(ZIPSUFFIX).zip ua52$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ami-extra$(ZIPSUFFIX).zip uami$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)amunits$(ZIPSUFFIX).zip uamu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)arosunits$(ZIPSUFFIX).zip uaru$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)aspell$(ZIPSUFFIX).zip uasp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)bfd$(ZIPSUFFIX).zip ubfd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)bzip2$(ZIPSUFFIX).zip ubz2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cairo$(ZIPSUFFIX).zip ucai$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cdrom$(ZIPSUFFIX).zip ucdr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)chm$(ZIPSUFFIX).zip uchm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cocoaint$(ZIPSUFFIX).zip ucoc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dblib$(ZIPSUFFIX).zip udblb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dbus$(ZIPSUFFIX).zip udbus$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dts$(ZIPSUFFIX).zip udts$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fastcgi$(ZIPSUFFIX).zip ufcgi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-async$(ZIPSUFFIX).zip ufcla$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-base$(ZIPSUFFIX).zip ufclb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-db$(ZIPSUFFIX).zip ufcld$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-extra$(ZIPSUFFIX).zip ufcex$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-fpcunit$(ZIPSUFFIX).zip ufclu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-image$(ZIPSUFFIX).zip ufcli$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-js$(ZIPSUFFIX).zip ufcjs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-json$(ZIPSUFFIX).zip ufclj$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-net$(ZIPSUFFIX).zip ufcln$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-passrc$(ZIPSUFFIX).zip ufcls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-pdf$(ZIPSUFFIX).zip ufcpd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-process$(ZIPSUFFIX).zip ufclp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-registry$(ZIPSUFFIX).zip ufclr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-report$(ZIPSUFFIX).zip ufpre$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-res$(ZIPSUFFIX).zip ufcle$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-sdo$(ZIPSUFFIX).zip ufcsd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-sound$(ZIPSUFFIX).zip ufsnd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-stl$(ZIPSUFFIX).zip ufcst$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-web$(ZIPSUFFIX).zip ufclw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-xml$(ZIPSUFFIX).zip ufclx$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fftw$(ZIPSUFFIX).zip ufftw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpc-all$(ZIPSUFFIX).zip ufpca$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpgtk$(ZIPSUFFIX).zip ufpgt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpindexer$(ZIPSUFFIX).zip ufpi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpmkunit$(ZIPSUFFIX).zip ufpmk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fppkg$(ZIPSUFFIX).zip ufppk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fuse$(ZIPSUFFIX).zip ufuse$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fv$(ZIPSUFFIX).zip ufv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gdbint$(ZIPSUFFIX).zip ugdb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gdbm$(ZIPSUFFIX).zip ugdbm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ggi$(ZIPSUFFIX).zip uggi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gmp$(ZIPSUFFIX).zip ugmp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gnome1$(ZIPSUFFIX).zip ugno1$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gnutls$(ZIPSUFFIX).zip ugtls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)googleapi$(ZIPSUFFIX).zip ugapi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)graph$(ZIPSUFFIX).zip ugrph$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gtk1$(ZIPSUFFIX).zip ugtk1$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gtk2$(ZIPSUFFIX).zip ugtk2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)hash$(ZIPSUFFIX).zip uhash$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)hermes$(ZIPSUFFIX).zip uherm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd13$(ZIPSUFFIX).zip uhd13$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd20$(ZIPSUFFIX).zip uhd20$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd22$(ZIPSUFFIX).zip uhd22$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd24$(ZIPSUFFIX).zip uhd24$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ibase$(ZIPSUFFIX).zip uibas$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)iconvenc$(ZIPSUFFIX).zip uicve$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ide$(ZIPSUFFIX).zip uide$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)imagemagick$(ZIPSUFFIX).zip uimgm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)imlib$(ZIPSUFFIX).zip uimlb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)iosxlocale$(ZIPSUFFIX).zip uiosl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)jni$(ZIPSUFFIX).zip ujni$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ldap$(ZIPSUFFIX).zip uldap$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libc$(ZIPSUFFIX).zip ulibc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libcups$(ZIPSUFFIX).zip ulcup$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libcurl$(ZIPSUFFIX).zip ulcur$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libenet$(ZIPSUFFIX).zip ulnet$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libffi$(ZIPSUFFIX).zip ulffi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libfontconfig$(ZIPSUFFIX).zip ulfcg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgbafpc$(ZIPSUFFIX).zip ulgba$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgc$(ZIPSUFFIX).zip ulgc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgd$(ZIPSUFFIX).zip ulgd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libmagic$(ZIPSUFFIX).zip ulmag$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libmicrohttpd$(ZIPSUFFIX).zip ulmic$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libndsfpc$(ZIPSUFFIX).zip ulnds$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libogcfpc$(ZIPSUFFIX).zip ulogc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libpng$(ZIPSUFFIX).zip ulpng$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libsee$(ZIPSUFFIX).zip ulsee$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libtar$(ZIPSUFFIX).zip ultar$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libusb$(ZIPSUFFIX).zip ulusb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libvlc$(ZIPSUFFIX).zip ulvlc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libxml2$(ZIPSUFFIX).zip ulxml$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)lua$(ZIPSUFFIX).zip ulua$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)mad$(ZIPSUFFIX).zip umad$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)matroska$(ZIPSUFFIX).zip umatk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)modplug$(ZIPSUFFIX).zip umplg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)morphunits$(ZIPSUFFIX).zip umrph$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)mysql$(ZIPSUFFIX).zip umysq$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ncurses$(ZIPSUFFIX).zip uncrs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)newt$(ZIPSUFFIX).zip unewt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)numlib$(ZIPSUFFIX).zip unlib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)nvapi$(ZIPSUFFIX).zip unva$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)objcrtl$(ZIPSUFFIX).zip uobjc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)odata$(ZIPSUFFIX).zip uodat$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)odbc$(ZIPSUFFIX).zip uodbc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)oggvorbis$(ZIPSUFFIX).zip uoggv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)openal$(ZIPSUFFIX).zip uoal$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opencl$(ZIPSUFFIX).zip uocl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opengl$(ZIPSUFFIX).zip uogl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opengles$(ZIPSUFFIX).zip uogls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)openssl$(ZIPSUFFIX).zip uossl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)oracle$(ZIPSUFFIX).zip uora$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)os2units$(ZIPSUFFIX).zip uos2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)os4units$(ZIPSUFFIX).zip uos4$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)palmunits$(ZIPSUFFIX).zip upalm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pasjpeg$(ZIPSUFFIX).zip upjp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pastojs$(ZIPSUFFIX).zip up2js$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)paszlib$(ZIPSUFFIX).zip upzl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pcap$(ZIPSUFFIX).zip upcap$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)postgres$(ZIPSUFFIX).zip upgr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)proj4$(ZIPSUFFIX).zip uprj4$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ptc$(ZIPSUFFIX).zip uptc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pthreads$(ZIPSUFFIX).zip upthr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pxlib$(ZIPSUFFIX).zip upxl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)qlunits$(ZIPSUFFIX).zip uqlun$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)regexpr$(ZIPSUFFIX).zip ureg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rexx$(ZIPSUFFIX).zip urexx$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rsvg$(ZIPSUFFIX).zip ursvg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-console$(ZIPSUFFIX).zip urtlc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-extra$(ZIPSUFFIX).zip urtle$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-generics$(ZIPSUFFIX).zip urtlg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-objpas$(ZIPSUFFIX).zip urtlo$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-unicode$(ZIPSUFFIX).zip urtlu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sdl$(ZIPSUFFIX).zip usdl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sndfile$(ZIPSUFFIX).zip usndf$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sqlite$(ZIPSUFFIX).zip usqlt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)svgalib$(ZIPSUFFIX).zip usvga$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)symbolic$(ZIPSUFFIX).zip usymb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)syslog$(ZIPSUFFIX).zip usysl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tcl$(ZIPSUFFIX).zip utcl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tosunits$(ZIPSUFFIX).zip utos$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tplylib$(ZIPSUFFIX).zip utpll$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)univint$(ZIPSUFFIX).zip uuniv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)unixutil$(ZIPSUFFIX).zip uunix$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)unzip$(ZIPSUFFIX).zip uzip$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)users$(ZIPSUFFIX).zip uuser$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)utmp$(ZIPSUFFIX).zip uutmp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)uuid$(ZIPSUFFIX).zip uuuid$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)vcl-compat$(ZIPSUFFIX).zip uvcl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)webidl$(ZIPSUFFIX).zip uwidl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winceunits$(ZIPSUFFIX).zip uwice$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winunits-base$(ZIPSUFFIX).zip uwib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winunits-jedi$(ZIPSUFFIX).zip uwij$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)x11$(ZIPSUFFIX).zip ux11$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)xforms$(ZIPSUFFIX).zip uxfrm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)zlib$(ZIPSUFFIX).zip uzlib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)zorba$(ZIPSUFFIX).zip uzorb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils$(ZIPSUFFIX).zip utils$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-debugsrv$(ZIPSUFFIX).zip dbgs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-dxegen$(ZIPSUFFIX).zip dxeg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcm$(ZIPSUFFIX).zip fpcm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcmkcfg$(ZIPSUFFIX).zip fcmk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcres$(ZIPSUFFIX).zip fprs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcreslipo$(ZIPSUFFIX).zip fprl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpdoc$(ZIPSUFFIX).zip fpdc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpmc$(ZIPSUFFIX).zip fpmc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fppkg$(ZIPSUFFIX).zip fpkg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fprcp$(ZIPSUFFIX).zip fprc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-h2pas$(ZIPSUFFIX).zip h2pa$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-ihxutil$(ZIPSUFFIX).zip ihxu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-importtl$(ZIPSUFFIX).zip impt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-instantfpc$(ZIPSUFFIX).zip ifpc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-javaapp$(ZIPSUFFIX).zip jvp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-json2pas$(ZIPSUFFIX).zip jsnp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-lexyacc$(ZIPSUFFIX).zip tply$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-mksymbian$(ZIPSUFFIX).zip mksb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2fpm$(ZIPSUFFIX).zip p2fp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2jni$(ZIPSUFFIX).zip p2jn$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2js$(ZIPSUFFIX).zip p2js$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2ut$(ZIPSUFFIX).zip p2ut$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-rmwait$(ZIPSUFFIX).zip rmw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-sim_pasc$(ZIPSUFFIX).zip smp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-svn2cvs$(ZIPSUFFIX).zip s2c$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-unicode$(ZIPSUFFIX).zip ucd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-wasmbin$(ZIPSUFFIX).zip wsbn$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)rtl$(ZIPSUFFIX).zip rtl$(ZIPSUFFIXSHORT).zip
shortsrc:
$(MAKE) renametoshort ZIPSUFFIX=$(ZIPSOURCESUFFIX) ZIPSUFFIXSHORT=src
$(MAKE) renametoshort ZIPSUFFIX=-$(FPC_VERSION)$(ZIPSOURCESUFFIX) ZIPSUFFIXSHORT=src
@@ -3074,7 +3303,7 @@ endif
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpc.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
$(INNOCMD_ISCC)
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
innocebuild: innocheck buildce
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -3084,7 +3313,7 @@ innocebuild: innocheck buildce
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcce.ist -o $(INNODIR)/fpcce.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcce.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
innox64build: innocheck buildx64
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -3094,7 +3323,22 @@ innox64build: innocheck buildx64
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcx64.ist -o $(INNODIR)/fpcx64.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcx64.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+innox86x64build: innocheck
+ rmcvsdir$(EXEEXT) $(INNODIR)
+ $(DELTREE) $(INNODIR)
+ $(MKDIR) $(INNODIR)
+ $(COPYTREE) demo $(INNODIR)
+ $(COPYTREE) install/unicode $(INNODIR)
+ifndef NODOCS
+ unzip -d $(INNODIR) doc-pdf.zip
+endif
+ $(MAKE) install INSTALL_PREFIX=$(INNODIR)
+ $(MAKE) crossinstall INSTALL_PREFIX=$(INNODIR) OS_TARGET=win64 CPU_TARGET=x86_64
+ rmcvsdir$(EXEEXT) $(INNODIR)
+ fpcmkcfg -t install/fpcx86x64.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
+ $(INNOCMD_ISCC)
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).win32.and.win64.exe
innojvmbuild: innocheck buildjvm
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -3104,10 +3348,12 @@ innojvmbuild: innocheck buildjvm
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcjvm.ist -o $(INNODIR)/fpcjvm.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcjvm.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(CPU_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(CPU_TARGET).exe
buildmsdos_subarch_mm: fpcsrc/build-stamp.cross-msdos
- $(MAKE) -C fpcsrc/rtl clean install OS_TARGET=msdos FPC=ppc8086 CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MAKE) -C fpcsrc/packages clean install OS_TARGET=msdos FPC=ppc8086 CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
+ $(MAKE) -C fpcsrc/rtl clean FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
+ $(MAKE) -C fpcsrc/rtl install FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
+ $(MAKE) -C fpcsrc/packages clean FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
+ $(MAKE) -C fpcsrc/packages install FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
$(MOVE) $(INSTALL_BASEDIR)/units/msdos $(INSTALL_BASEDIR)/units/msdos_/$(SUBARCH)-$(MEMORY_MODEL)
buildmsdos_subarch:
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=tiny
@@ -3115,52 +3361,28 @@ buildmsdos_subarch:
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=medium
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=compact
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=large
-ifeq ($(findstring 3.0.,$(FPC_VERSION)),)
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=huge
-endif
-build_msdos:
- $(DELTREE) $(INSTALL_BASEDIR)/units/msdos_
- $(MKDIR) $(INSTALL_BASEDIR)/units/msdos_
- $(MAKE) buildmsdos_subarch SUBARCH=8086
- $(MAKE) buildmsdos_subarch SUBARCH=80186
- $(MAKE) buildmsdos_subarch SUBARCH=80286
- $(MAKE) buildmsdos_subarch SUBARCH=80386
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos_ $(INSTALL_BASEDIR)/units/msdos
-buildmsdos_rtl_subarch_mm:
- $(MAKE) -C fpcsrc/rtl/msdos info clean all FPC=ppc8086 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MAKE) -C fpcsrc/rtl/msdos install FPC=ppc8086 CPU_TARGET=i8086 OS_TARGET=msdos CROSSINSTALL=1 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos $(INSTALL_BASEDIR)/units/msdos_/$(SUBARCH)-$(MEMORY_MODEL)
-buildmsdos_rtl_subarch:
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=tiny CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=small CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=medium CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=compact CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=large CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
-ifeq ($(findstring 3.0.,$(FPC_VERSION)),)
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=huge CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
-endif
-buildmsdos_rtl: fpcsrc/build-stamp.cross-msdos
- $(DELTREE) $(INSTALL_BASEDIR)/units/msdos_
- $(MKDIR) $(INSTALL_BASEDIR)/units/msdos_
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=8086 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80186 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80286 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80386 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos_ $(INSTALL_BASEDIR)/units/msdos
innomsdosbuild: innocheck
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
$(MKDIR) $(INNODIR)
$(COPYTREE) demo $(INNODIR)
+ $(MKDIR) $(INNODIR)/doc
+ $(MKDIR) $(INNODIR)/doc/fpc
+ $(COPY) -R install/doc/* $(INNODIR)/doc/fpc
$(MKDIR) $(INNODIR)/units/msdos_
+ $(MAKE) -C fpcsrc/ compiler_cycle RELEASE=1 OS_SOURCE=win32 CPU_SOURCE=i386 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs"
+ $(MAKE) -C fpcsrc/ compiler_install RELEASE=1 OS_SOURCE=win32 CPU_SOURCE=i386 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs" INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=8086 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=80186 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=80286 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
+ $(MAKE) buildmsdos_subarch SUBARCH=80386 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MOVE) $(INNODIR)/units/msdos_ $(INNODIR)/units/msdos
+ $(COPY) install/crossbinmsdos/nasm.exe $(INNODIR)/bin/i386-win32
rmcvsdir$(EXEEXT) $(INNODIR)
fpcsubst -i install/fpcmsdos.ist -o $(INNODIR)/fpcmsdos.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcmsdos.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
innoandroidbuild:
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -3188,7 +3410,7 @@ innoandroidbuild:
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcandroid.ist -o $(INNODIR)/fpcandroid.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcandroid.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.android.exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.android.exe
innoclean:
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -3198,6 +3420,9 @@ innoce : checkfpcdir
innox64 : checkfpcdir
$(MAKE) OS_TARGET=win64 CPU_TARGET=x86_64 innox64build NOGDB=1
$(MAKE) innoclean
+innox86x64 : checkfpcdir
+ $(MAKE) innox86x64build
+ $(MAKE) innoclean
innojvm : checkfpcdir
$(MAKE) OS_TARGET=java CPU_TARGET=jvm innojvmbuild NOGDB=1
$(MAKE) innoclean
diff --git a/Makefile.fpc b/Makefile.fpc
index 49caca09..90ac0873 100644
--- a/Makefile.fpc
+++ b/Makefile.fpc
@@ -4,8 +4,7 @@
[package]
name=fpc
-version=3.3.1
-
+version=3.2.3
[target]
dirs=fpcsrc fpcdocs
@@ -87,6 +86,7 @@ help:
@$(ECHO) deb Build linux .deb packages
@$(ECHO) inno "Build Windows (Innosetup) based installer"
@$(ECHO) innox64 "Build Win32-Win64 cross compiler installer"
+ @$(ECHO) innox86x64 "Build Windows (Innosetup) combined installer for Win32 and Win64"
@$(ECHO) innoce "Build Win32-Wince cross compiler installer"
@$(ECHO) innomsdos "Build Win32-MsDos cross compiler installer"
@$(ECHO) innoandroid "Build Win32-Android cross compiler installer"
@@ -162,6 +162,7 @@ ifeq ($(OS_TARGET),wince)
endif
ifeq ($(OS_TARGET),win64)
$(COPY) $(addprefix $(CVSINSTALL)/crossbinw64/, *.exe) $(INSTALL_BINDIR)
+ -$(COPY) $(CVSINSTALL)/binw32/gcc.exe $(INSTALL_BINDIR)/x86_64-win64-gcc.exe
endif
ifeq ($(OS_TARGET),msdos)
$(COPY) $(addprefix $(CVSINSTALL)/crossbinmsdos/, *.exe) $(INSTALL_BINDIR)
@@ -189,6 +190,7 @@ endif
# ignore errors.
ifeq ($(OS_TARGET),win64)
-$(COPY) $(addprefix $(CVSINSTALL)/binw64/,*.ico *.exe *.dll *.h *.manifest) $(INSTALL_BINDIR)
+ -$(COPY) $(CVSINSTALL)/binw32/gcc.exe $(INSTALL_BINDIR)/x86_64-win64-gcc.exe
endif
endif
# binos2 (emx.dll,emxwrap.dll,unzip32.dll,fp2.ico)
@@ -216,7 +218,8 @@ install: $(BUILDSTAMP)
$(MAKE) installbase
$(MAKE) -C fpcsrc installother
-crossinstall: $(BUILDSTAMP)
+crossinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) installbase CROSSINSTALL=1
$(MAKE) -C fpcsrc installother CROSSINSTALL=1
@@ -231,11 +234,13 @@ else
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(TARGETSUFFIX).built.on.$(SOURCESUFFIX)
endif
-crosszipinstall: $(BUILDSTAMP)
+crosszipinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) fpc_zipinstall CROSSINSTALL=1 ZIPTARGET=installbase ZIPNAME=base
$(MAKE) -C fpcsrc zipinstallother CROSSINSTALL=1
-crosssinglezipinstall: $(BUILDSTAMP)
+crosssinglezipinstall:
+ $(MAKE) $(BUILDSTAMP) CROSSINSTALL=1
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(SOURCESUFFIX).cross.$(TARGETSUFFIX) CROSSINSTALL=1
##########################################################################
@@ -346,197 +351,201 @@ sunoszip: checkfpcdir
renametoshort:
# Compiler parts
- -mv $(PKGPRE)base$(ZIPSUFFIX).zip base$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)compiler$(ZIPSUFFIX).zip comp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)installer$(ZIPSUFFIX).zip inst$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)base$(ZIPSUFFIX).zip base$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)compiler$(ZIPSUFFIX).zip comp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)installer$(ZIPSUFFIX).zip inst$(ZIPSUFFIXSHORT).zip
# Utilities parts
- -mv $(PKGPRE)asld$(ZIPSUFFIX).zip asld$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)make$(ZIPSUFFIX).zip make$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)gdb$(ZIPSUFFIX).zip gdb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)asld$(ZIPSUFFIX).zip asld$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)make$(ZIPSUFFIX).zip make$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)gdb$(ZIPSUFFIX).zip gdb$(ZIPSUFFIXSHORT).zip
# Packages in alphabetical order
- -mv $(PKGPRE)$(PKGUNITSPRE)a52$(ZIPSUFFIX).zip ua52$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ami-extra$(ZIPSUFFIX).zip uami$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)amunits$(ZIPSUFFIX).zip uamu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)arosunits$(ZIPSUFFIX).zip uaru$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)aspell$(ZIPSUFFIX).zip uasp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)bfd$(ZIPSUFFIX).zip ubfd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)bzip2$(ZIPSUFFIX).zip ubz2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cairo$(ZIPSUFFIX).zip ucai$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cdrom$(ZIPSUFFIX).zip ucdr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)chm$(ZIPSUFFIX).zip uchm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)cocoaint$(ZIPSUFFIX).zip ucoc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dblib$(ZIPSUFFIX).zip udblb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dbus$(ZIPSUFFIX).zip udbus$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)dts$(ZIPSUFFIX).zip udts$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fastcgi$(ZIPSUFFIX).zip ufcgi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-async$(ZIPSUFFIX).zip ufcla$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-base$(ZIPSUFFIX).zip ufclb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-db$(ZIPSUFFIX).zip ufcld$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-extra$(ZIPSUFFIX).zip ufcex$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-fpcunit$(ZIPSUFFIX).zip ufclu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-image$(ZIPSUFFIX).zip ufcli$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-js$(ZIPSUFFIX).zip ufcjs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-json$(ZIPSUFFIX).zip ufclj$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-net$(ZIPSUFFIX).zip ufcln$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-passrc$(ZIPSUFFIX).zip ufcls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-pdf$(ZIPSUFFIX).zip ufcpd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-process$(ZIPSUFFIX).zip ufclp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-registry$(ZIPSUFFIX).zip ufclr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-report$(ZIPSUFFIX).zip ufcre$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-res$(ZIPSUFFIX).zip ufcle$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-sdo$(ZIPSUFFIX).zip ufcsd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-sound$(ZIPSUFFIX).zip ufsnd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-stl$(ZIPSUFFIX).zip ufcst$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-web$(ZIPSUFFIX).zip ufclw$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fcl-xml$(ZIPSUFFIX).zip ufclx$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fftw$(ZIPSUFFIX).zip ufftw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)a52$(ZIPSUFFIX).zip ua52$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ami-extra$(ZIPSUFFIX).zip uami$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)amunits$(ZIPSUFFIX).zip uamu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)arosunits$(ZIPSUFFIX).zip uaru$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)aspell$(ZIPSUFFIX).zip uasp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)bfd$(ZIPSUFFIX).zip ubfd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)bzip2$(ZIPSUFFIX).zip ubz2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cairo$(ZIPSUFFIX).zip ucai$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cdrom$(ZIPSUFFIX).zip ucdr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)chm$(ZIPSUFFIX).zip uchm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)cocoaint$(ZIPSUFFIX).zip ucoc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dblib$(ZIPSUFFIX).zip udblb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dbus$(ZIPSUFFIX).zip udbus$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)dts$(ZIPSUFFIX).zip udts$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fastcgi$(ZIPSUFFIX).zip ufcgi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-async$(ZIPSUFFIX).zip ufcla$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-base$(ZIPSUFFIX).zip ufclb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-db$(ZIPSUFFIX).zip ufcld$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-extra$(ZIPSUFFIX).zip ufcex$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-fpcunit$(ZIPSUFFIX).zip ufclu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-image$(ZIPSUFFIX).zip ufcli$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-js$(ZIPSUFFIX).zip ufcjs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-json$(ZIPSUFFIX).zip ufclj$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-net$(ZIPSUFFIX).zip ufcln$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-passrc$(ZIPSUFFIX).zip ufcls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-pdf$(ZIPSUFFIX).zip ufcpd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-process$(ZIPSUFFIX).zip ufclp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-registry$(ZIPSUFFIX).zip ufclr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-report$(ZIPSUFFIX).zip ufpre$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-res$(ZIPSUFFIX).zip ufcle$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-sdo$(ZIPSUFFIX).zip ufcsd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-sound$(ZIPSUFFIX).zip ufsnd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-stl$(ZIPSUFFIX).zip ufcst$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-web$(ZIPSUFFIX).zip ufclw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fcl-xml$(ZIPSUFFIX).zip ufclx$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fftw$(ZIPSUFFIX).zip ufftw$(ZIPSUFFIXSHORT).zip
# This package corresponds to fpcsrc/packages main directory
- -mv $(PKGPRE)$(PKGUNITSPRE)fpc-all$(ZIPSUFFIX).zip ufpca$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpgtk$(ZIPSUFFIX).zip ufpgt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpindexer$(ZIPSUFFIX).zip ufpi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fpmkunit$(ZIPSUFFIX).zip ufpmk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fppkg$(ZIPSUFFIX).zip ufppk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fuse$(ZIPSUFFIX).zip ufuse$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)fv$(ZIPSUFFIX).zip ufv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gdbint$(ZIPSUFFIX).zip ugdb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gdbm$(ZIPSUFFIX).zip ugdbm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ggi$(ZIPSUFFIX).zip uggi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gmp$(ZIPSUFFIX).zip ugmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gnome1$(ZIPSUFFIX).zip ugno1$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gnutls$(ZIPSUFFIX).zip ugtls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)googleapi$(ZIPSUFFIX).zip ugapi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)graph$(ZIPSUFFIX).zip ugrph$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gtk1$(ZIPSUFFIX).zip ugtk1$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)gtk2$(ZIPSUFFIX).zip ugtk2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)hash$(ZIPSUFFIX).zip uhash$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)hermes$(ZIPSUFFIX).zip uherm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd13$(ZIPSUFFIX).zip uhd13$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd20$(ZIPSUFFIX).zip uhd20$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd22$(ZIPSUFFIX).zip uhd22$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)httpd24$(ZIPSUFFIX).zip uhd24$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ibase$(ZIPSUFFIX).zip uibas$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)iconvenc$(ZIPSUFFIX).zip uicve$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ide$(ZIPSUFFIX).zip uide$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)imagemagick$(ZIPSUFFIX).zip uimgm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)imlib$(ZIPSUFFIX).zip uimlb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)iosxlocale$(ZIPSUFFIX).zip uiosl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)jni$(ZIPSUFFIX).zip ujni$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ldap$(ZIPSUFFIX).zip uldap$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libc$(ZIPSUFFIX).zip ulibc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libcups$(ZIPSUFFIX).zip ulcup$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libcurl$(ZIPSUFFIX).zip ulcur$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libenet$(ZIPSUFFIX).zip ulnet$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libffi$(ZIPSUFFIX).zip ulffi$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libfontconfig$(ZIPSUFFIX).zip ulfcg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgbafpc$(ZIPSUFFIX).zip ulgba$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgc$(ZIPSUFFIX).zip ulgc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libgd$(ZIPSUFFIX).zip ulgd$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libmagic$(ZIPSUFFIX).zip ulmag$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libmicrohttpd$(ZIPSUFFIX).zip ulmic$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libndsfpc$(ZIPSUFFIX).zip ulnds$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libogcfpc$(ZIPSUFFIX).zip ulogc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libpng$(ZIPSUFFIX).zip ulpng$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libsee$(ZIPSUFFIX).zip ulsee$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libtar$(ZIPSUFFIX).zip ultar$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libusb$(ZIPSUFFIX).zip ulusb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)libvlc$(ZIPSUFFIX).zip ulvlc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpc-all$(ZIPSUFFIX).zip ufpca$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpgtk$(ZIPSUFFIX).zip ufpgt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpindexer$(ZIPSUFFIX).zip ufpi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fpmkunit$(ZIPSUFFIX).zip ufpmk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fppkg$(ZIPSUFFIX).zip ufppk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fuse$(ZIPSUFFIX).zip ufuse$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)fv$(ZIPSUFFIX).zip ufv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gdbint$(ZIPSUFFIX).zip ugdb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gdbm$(ZIPSUFFIX).zip ugdbm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ggi$(ZIPSUFFIX).zip uggi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gmp$(ZIPSUFFIX).zip ugmp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gnome1$(ZIPSUFFIX).zip ugno1$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gnutls$(ZIPSUFFIX).zip ugtls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)googleapi$(ZIPSUFFIX).zip ugapi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)graph$(ZIPSUFFIX).zip ugrph$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gtk1$(ZIPSUFFIX).zip ugtk1$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)gtk2$(ZIPSUFFIX).zip ugtk2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)hash$(ZIPSUFFIX).zip uhash$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)hermes$(ZIPSUFFIX).zip uherm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd13$(ZIPSUFFIX).zip uhd13$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd20$(ZIPSUFFIX).zip uhd20$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd22$(ZIPSUFFIX).zip uhd22$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)httpd24$(ZIPSUFFIX).zip uhd24$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ibase$(ZIPSUFFIX).zip uibas$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)iconvenc$(ZIPSUFFIX).zip uicve$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ide$(ZIPSUFFIX).zip uide$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)imagemagick$(ZIPSUFFIX).zip uimgm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)imlib$(ZIPSUFFIX).zip uimlb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)iosxlocale$(ZIPSUFFIX).zip uiosl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)jni$(ZIPSUFFIX).zip ujni$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ldap$(ZIPSUFFIX).zip uldap$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libc$(ZIPSUFFIX).zip ulibc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libcups$(ZIPSUFFIX).zip ulcup$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libcurl$(ZIPSUFFIX).zip ulcur$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libenet$(ZIPSUFFIX).zip ulnet$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libffi$(ZIPSUFFIX).zip ulffi$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libfontconfig$(ZIPSUFFIX).zip ulfcg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgbafpc$(ZIPSUFFIX).zip ulgba$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgc$(ZIPSUFFIX).zip ulgc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libgd$(ZIPSUFFIX).zip ulgd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libmagic$(ZIPSUFFIX).zip ulmag$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libmicrohttpd$(ZIPSUFFIX).zip ulmic$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libndsfpc$(ZIPSUFFIX).zip ulnds$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libogcfpc$(ZIPSUFFIX).zip ulogc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libpng$(ZIPSUFFIX).zip ulpng$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libsee$(ZIPSUFFIX).zip ulsee$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libtar$(ZIPSUFFIX).zip ultar$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libusb$(ZIPSUFFIX).zip ulusb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libvlc$(ZIPSUFFIX).zip ulvlc$(ZIPSUFFIXSHORT).zip
# This package resides in fpcsrc/packages/libxml directory
- -mv $(PKGPRE)$(PKGUNITSPRE)libxml2$(ZIPSUFFIX).zip ulxml$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)lua$(ZIPSUFFIX).zip ulua$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)mad$(ZIPSUFFIX).zip umad$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)matroska$(ZIPSUFFIX).zip umatk$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)modplug$(ZIPSUFFIX).zip umplg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)morphunits$(ZIPSUFFIX).zip umrph$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)mysql$(ZIPSUFFIX).zip umysq$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ncurses$(ZIPSUFFIX).zip uncrs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)newt$(ZIPSUFFIX).zip unewt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)numlib$(ZIPSUFFIX).zip unlib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)nvapi$(ZIPSUFFIX).zip unva$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)objcrtl$(ZIPSUFFIX).zip uobjc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)odata$(ZIPSUFFIX).zip uodat$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)odbc$(ZIPSUFFIX).zip uodbc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)oggvorbis$(ZIPSUFFIX).zip uoggv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)openal$(ZIPSUFFIX).zip uoal$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opencl$(ZIPSUFFIX).zip uocl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opengl$(ZIPSUFFIX).zip uogl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)opengles$(ZIPSUFFIX).zip uogls$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)openssl$(ZIPSUFFIX).zip uossl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)oracle$(ZIPSUFFIX).zip uora$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)os2units$(ZIPSUFFIX).zip uos2$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)os4units$(ZIPSUFFIX).zip uos4$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)palmunits$(ZIPSUFFIX).zip upalm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pasjpeg$(ZIPSUFFIX).zip upjp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pastojs$(ZIPSUFFIX).zip up2js$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)paszlib$(ZIPSUFFIX).zip upzl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pcap$(ZIPSUFFIX).zip upcap$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)postgres$(ZIPSUFFIX).zip upgr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)proj4$(ZIPSUFFIX).zip uprj4$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)ptc$(ZIPSUFFIX).zip uptc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pthreads$(ZIPSUFFIX).zip upthr$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)pxlib$(ZIPSUFFIX).zip upxl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)regexpr$(ZIPSUFFIX).zip ureg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rexx$(ZIPSUFFIX).zip urexx$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)libxml2$(ZIPSUFFIX).zip ulxml$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)lua$(ZIPSUFFIX).zip ulua$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)mad$(ZIPSUFFIX).zip umad$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)matroska$(ZIPSUFFIX).zip umatk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)modplug$(ZIPSUFFIX).zip umplg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)morphunits$(ZIPSUFFIX).zip umrph$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)mysql$(ZIPSUFFIX).zip umysq$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ncurses$(ZIPSUFFIX).zip uncrs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)newt$(ZIPSUFFIX).zip unewt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)numlib$(ZIPSUFFIX).zip unlib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)nvapi$(ZIPSUFFIX).zip unva$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)objcrtl$(ZIPSUFFIX).zip uobjc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)odata$(ZIPSUFFIX).zip uodat$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)odbc$(ZIPSUFFIX).zip uodbc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)oggvorbis$(ZIPSUFFIX).zip uoggv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)openal$(ZIPSUFFIX).zip uoal$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opencl$(ZIPSUFFIX).zip uocl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opengl$(ZIPSUFFIX).zip uogl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)opengles$(ZIPSUFFIX).zip uogls$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)openssl$(ZIPSUFFIX).zip uossl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)oracle$(ZIPSUFFIX).zip uora$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)os2units$(ZIPSUFFIX).zip uos2$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)os4units$(ZIPSUFFIX).zip uos4$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)palmunits$(ZIPSUFFIX).zip upalm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pasjpeg$(ZIPSUFFIX).zip upjp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pastojs$(ZIPSUFFIX).zip up2js$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)paszlib$(ZIPSUFFIX).zip upzl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pcap$(ZIPSUFFIX).zip upcap$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)postgres$(ZIPSUFFIX).zip upgr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)proj4$(ZIPSUFFIX).zip uprj4$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)ptc$(ZIPSUFFIX).zip uptc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pthreads$(ZIPSUFFIX).zip upthr$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)pxlib$(ZIPSUFFIX).zip upxl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)qlunits$(ZIPSUFFIX).zip uqlun$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)regexpr$(ZIPSUFFIX).zip ureg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rexx$(ZIPSUFFIX).zip urexx$(ZIPSUFFIXSHORT).zip
# This package resides in fpcsrc/packages/librsvg directory
- -mv $(PKGPRE)$(PKGUNITSPRE)rsvg$(ZIPSUFFIX).zip ursvg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-console$(ZIPSUFFIX).zip urtlc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-extra$(ZIPSUFFIX).zip urtle$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-generics$(ZIPSUFFIX).zip urtlg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-objpas$(ZIPSUFFIX).zip urtlo$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)rtl-unicode$(ZIPSUFFIX).zip urtlu$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sdl$(ZIPSUFFIX).zip usdl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sndfile$(ZIPSUFFIX).zip usndf$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)sqlite$(ZIPSUFFIX).zip usqlt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)svgalib$(ZIPSUFFIX).zip usvga$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)symbolic$(ZIPSUFFIX).zip usymb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)syslog$(ZIPSUFFIX).zip usysl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)tcl$(ZIPSUFFIX).zip utcl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)tosunits$(ZIPSUFFIX).zip utos$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)univint$(ZIPSUFFIX).zip uuniv$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)unixutil$(ZIPSUFFIX).zip uunix$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)unzip$(ZIPSUFFIX).zip uzip$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)users$(ZIPSUFFIX).zip uuser$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)utmp$(ZIPSUFFIX).zip uutmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)uuid$(ZIPSUFFIX).zip uuuid$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)vcl-compat$(ZIPSUFFIX).zip uvcl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)webidl$(ZIPSUFFIX).zip uwidl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winceunits$(ZIPSUFFIX).zip uwice$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winunits-base$(ZIPSUFFIX).zip uwib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)winunits-jedi$(ZIPSUFFIX).zip uwij$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)x11$(ZIPSUFFIX).zip ux11$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)xforms$(ZIPSUFFIX).zip uxfrm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)zlib$(ZIPSUFFIX).zip uzlib$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)$(PKGUNITSPRE)zorba$(ZIPSUFFIX).zip uzorb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rsvg$(ZIPSUFFIX).zip ursvg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-console$(ZIPSUFFIX).zip urtlc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-extra$(ZIPSUFFIX).zip urtle$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-generics$(ZIPSUFFIX).zip urtlg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-objpas$(ZIPSUFFIX).zip urtlo$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)rtl-unicode$(ZIPSUFFIX).zip urtlu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sdl$(ZIPSUFFIX).zip usdl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sndfile$(ZIPSUFFIX).zip usndf$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)sqlite$(ZIPSUFFIX).zip usqlt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)svgalib$(ZIPSUFFIX).zip usvga$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)symbolic$(ZIPSUFFIX).zip usymb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)syslog$(ZIPSUFFIX).zip usysl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tcl$(ZIPSUFFIX).zip utcl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tosunits$(ZIPSUFFIX).zip utos$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)tplylib$(ZIPSUFFIX).zip utpll$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)univint$(ZIPSUFFIX).zip uuniv$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)unixutil$(ZIPSUFFIX).zip uunix$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)unzip$(ZIPSUFFIX).zip uzip$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)users$(ZIPSUFFIX).zip uuser$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)utmp$(ZIPSUFFIX).zip uutmp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)uuid$(ZIPSUFFIX).zip uuuid$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)vcl-compat$(ZIPSUFFIX).zip uvcl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)webidl$(ZIPSUFFIX).zip uwidl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winceunits$(ZIPSUFFIX).zip uwice$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winunits-base$(ZIPSUFFIX).zip uwib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)winunits-jedi$(ZIPSUFFIX).zip uwij$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)x11$(ZIPSUFFIX).zip ux11$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)xforms$(ZIPSUFFIX).zip uxfrm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)zlib$(ZIPSUFFIX).zip uzlib$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)$(PKGUNITSPRE)zorba$(ZIPSUFFIX).zip uzorb$(ZIPSUFFIXSHORT).zip
# Utils packages in alphabetical order
- -mv $(PKGPRE)utils$(ZIPSUFFIX).zip utils$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-debugsrv$(ZIPSUFFIX).zip udbgs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-dxegen$(ZIPSUFFIX).zip udxeg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcm$(ZIPSUFFIX).zip ufpcm$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcmkcfg$(ZIPSUFFIX).zip ufpck$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcres$(ZIPSUFFIX).zip ufprs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpcreslipo$(ZIPSUFFIX).zip ufprl$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpdoc$(ZIPSUFFIX).zip ufpdc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fpmc$(ZIPSUFFIX).zip ufpmc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fppkg$(ZIPSUFFIX).zip ufpkg$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-fprcp$(ZIPSUFFIX).zip ufprc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-h2pas$(ZIPSUFFIX).zip uh2pa$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-importtl$(ZIPSUFFIX).zip uimpt$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-instantfpc$(ZIPSUFFIX).zip uifpc$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-javaapp$(ZIPSUFFIX).zip ujvp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-json2pas$(ZIPSUFFIX).zip ujs2p$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils$(ZIPSUFFIX).zip utils$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-debugsrv$(ZIPSUFFIX).zip dbgs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-dxegen$(ZIPSUFFIX).zip dxeg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcm$(ZIPSUFFIX).zip fpcm$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcmkcfg$(ZIPSUFFIX).zip fcmk$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcres$(ZIPSUFFIX).zip fprs$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpcreslipo$(ZIPSUFFIX).zip fprl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpdoc$(ZIPSUFFIX).zip fpdc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fpmc$(ZIPSUFFIX).zip fpmc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fppkg$(ZIPSUFFIX).zip fpkg$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-fprcp$(ZIPSUFFIX).zip fprc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-h2pas$(ZIPSUFFIX).zip h2pa$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-ihxutil$(ZIPSUFFIX).zip ihxu$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-importtl$(ZIPSUFFIX).zip impt$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-instantfpc$(ZIPSUFFIX).zip ifpc$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-javaapp$(ZIPSUFFIX).zip jvp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-json2pas$(ZIPSUFFIX).zip jsnp$(ZIPSUFFIXSHORT).zip
# This package resides in fpcsrc/utils/tply directory
- -mv $(PKGPRE)utils-lexyacc$(ZIPSUFFIX).zip ulexy$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-mksymbian$(ZIPSUFFIX).zip umksb$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2fpm$(ZIPSUFFIX).zip up2fp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2jni$(ZIPSUFFIX).zip up2jn$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2js$(ZIPSUFFIX).zip uupjs$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-pas2ut$(ZIPSUFFIX).zip up2ut$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-rmwait$(ZIPSUFFIX).zip urmw$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-sim_pasc$(ZIPSUFFIX).zip usmp$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-svn2cvs$(ZIPSUFFIX).zip us2c$(ZIPSUFFIXSHORT).zip
- -mv $(PKGPRE)utils-unicode$(ZIPSUFFIX).zip uucd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-lexyacc$(ZIPSUFFIX).zip tply$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-mksymbian$(ZIPSUFFIX).zip mksb$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2fpm$(ZIPSUFFIX).zip p2fp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2jni$(ZIPSUFFIX).zip p2jn$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2js$(ZIPSUFFIX).zip p2js$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-pas2ut$(ZIPSUFFIX).zip p2ut$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-rmwait$(ZIPSUFFIX).zip rmw$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-sim_pasc$(ZIPSUFFIX).zip smp$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-svn2cvs$(ZIPSUFFIX).zip s2c$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-unicode$(ZIPSUFFIX).zip ucd$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)utils-wasmbin$(ZIPSUFFIX).zip wsbn$(ZIPSUFFIXSHORT).zip
# Sources only
- -mv $(PKGPRE)rtl$(ZIPSUFFIX).zip rtl$(ZIPSUFFIXSHORT).zip
+ -$(MOVE) $(PKGPRE)rtl$(ZIPSUFFIX).zip rtl$(ZIPSUFFIXSHORT).zip
shortsrc:
$(MAKE) renametoshort ZIPSUFFIX=$(ZIPSOURCESUFFIX) ZIPSUFFIXSHORT=src
@@ -1032,9 +1041,9 @@ endif
innocheck:
ifndef NODOCS
-# Check for doc-pdf.zip
-ifeq ($(wildcard doc-pdf.zip),)
- @$(ECHO) "No documentation available. Please copy the file doc-pdf.zip to this directory."
+# Check for doc-chm.zip
+ifeq ($(wildcard doc-chm.zip),)
+ @$(ECHO) "No documentation available. Please copy the file doc-chm.zip to this directory."
@exit 1
endif
endif
@@ -1055,13 +1064,13 @@ innobuild: innocheck build
$(COPYTREE) demo $(INNODIR)
$(COPYTREE) install/unicode $(INNODIR)
ifndef NODOCS
- unzip -d $(INNODIR) doc-pdf.zip
+ unzip -d $(INNODIR) doc-chm.zip
endif
$(MAKE) install INSTALL_PREFIX=$(INNODIR)
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpc.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
$(INNOCMD_ISCC)
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
innocebuild: innocheck buildce
rmcvsdir$(EXEEXT) $(INNODIR)
@@ -1072,7 +1081,7 @@ innocebuild: innocheck buildce
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcce.ist -o $(INNODIR)/fpcce.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcce.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
innox64build: innocheck buildx64
rmcvsdir$(EXEEXT) $(INNODIR)
@@ -1083,8 +1092,24 @@ innox64build: innocheck buildx64
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcx64.ist -o $(INNODIR)/fpcx64.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcx64.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
-
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+
+innox86x64build: innocheck
+ rmcvsdir$(EXEEXT) $(INNODIR)
+ $(DELTREE) $(INNODIR)
+ $(MKDIR) $(INNODIR)
+ $(COPYTREE) demo $(INNODIR)
+ $(COPYTREE) install/unicode $(INNODIR)
+ifndef NODOCS
+ unzip -d $(INNODIR) doc-chm.zip
+endif
+ $(MAKE) install INSTALL_PREFIX=$(INNODIR)
+ $(MAKE) crossinstall INSTALL_PREFIX=$(INNODIR) OS_TARGET=win64 CPU_TARGET=x86_64
+ rmcvsdir$(EXEEXT) $(INNODIR)
+ fpcmkcfg -t install/fpcx86x64.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
+ $(INNOCMD_ISCC)
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).win32.and.win64.exe
+
innojvmbuild: innocheck buildjvm
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
@@ -1095,11 +1120,13 @@ innojvmbuild: innocheck buildjvm
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcjvm.ist -o $(INNODIR)/fpcjvm.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcjvm.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(CPU_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(CPU_TARGET).exe
buildmsdos_subarch_mm: fpcsrc/build-stamp.cross-msdos
- $(MAKE) -C fpcsrc/rtl clean install OS_TARGET=msdos FPC=ppc8086 CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MAKE) -C fpcsrc/packages clean install OS_TARGET=msdos FPC=ppc8086 CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
+ $(MAKE) -C fpcsrc/rtl clean FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
+ $(MAKE) -C fpcsrc/rtl install FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
+ $(MAKE) -C fpcsrc/packages clean FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
+ $(MAKE) -C fpcsrc/packages install FPC=$(realpath ./fpcsrc/compiler/ppcross8086.exe) OS_TARGET=msdos CPU_TARGET=i8086 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)" FPCFPMAKE=$(BASEDIR)/fpcsrc/compiler/ppc
$(MOVE) $(INSTALL_BASEDIR)/units/msdos $(INSTALL_BASEDIR)/units/msdos_/$(SUBARCH)-$(MEMORY_MODEL)
buildmsdos_subarch:
@@ -1108,57 +1135,29 @@ buildmsdos_subarch:
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=medium
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=compact
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=large
-ifeq ($(findstring 3.0.,$(FPC_VERSION)),)
$(MAKE) buildmsdos_subarch_mm MEMORY_MODEL=huge
-endif
-
-build_msdos:
- $(DELTREE) $(INSTALL_BASEDIR)/units/msdos_
- $(MKDIR) $(INSTALL_BASEDIR)/units/msdos_
- $(MAKE) buildmsdos_subarch SUBARCH=8086
- $(MAKE) buildmsdos_subarch SUBARCH=80186
- $(MAKE) buildmsdos_subarch SUBARCH=80286
- $(MAKE) buildmsdos_subarch SUBARCH=80386
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos_ $(INSTALL_BASEDIR)/units/msdos
-
-buildmsdos_rtl_subarch_mm:
- $(MAKE) -C fpcsrc/rtl/msdos info clean all FPC=ppc8086 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MAKE) -C fpcsrc/rtl/msdos install FPC=ppc8086 CPU_TARGET=i8086 OS_TARGET=msdos CROSSINSTALL=1 OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs -Wm$(MEMORY_MODEL) -Cp$(SUBARCH)"
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos $(INSTALL_BASEDIR)/units/msdos_/$(SUBARCH)-$(MEMORY_MODEL)
-
-buildmsdos_rtl_subarch:
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=tiny CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=small CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=medium CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=compact CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=large CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
-ifeq ($(findstring 3.0.,$(FPC_VERSION)),)
- $(MAKE) buildmsdos_rtl_subarch_mm MEMORY_MODEL=huge CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
-endif
-
-buildmsdos_rtl: fpcsrc/build-stamp.cross-msdos
- $(DELTREE) $(INSTALL_BASEDIR)/units/msdos_
- $(MKDIR) $(INSTALL_BASEDIR)/units/msdos_
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=8086 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80186 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80286 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MAKE) buildmsdos_rtl_subarch SUBARCH=80386 CPU_TARGET=i8086 OS_TARGET=msdos FPC=ppc8086
- $(MOVE) $(INSTALL_BASEDIR)/units/msdos_ $(INSTALL_BASEDIR)/units/msdos
innomsdosbuild: innocheck
rmcvsdir$(EXEEXT) $(INNODIR)
$(DELTREE) $(INNODIR)
$(MKDIR) $(INNODIR)
$(COPYTREE) demo $(INNODIR)
+ $(MKDIR) $(INNODIR)/doc
+ $(MKDIR) $(INNODIR)/doc/fpc
+ $(COPY) -R install/doc/* $(INNODIR)/doc/fpc
$(MKDIR) $(INNODIR)/units/msdos_
+ $(MAKE) -C fpcsrc/ compiler_cycle RELEASE=1 OS_SOURCE=win32 CPU_SOURCE=i386 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs"
+ $(MAKE) -C fpcsrc/ compiler_install RELEASE=1 OS_SOURCE=win32 CPU_SOURCE=i386 CPU_TARGET=i8086 OS_TARGET=msdos OPT="-CX -XXs" BINUTILSPREFIX= CROSSOPT="$(OPT) -CX -XXs" INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=8086 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=80186 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MAKE) buildmsdos_subarch SUBARCH=80286 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
+ $(MAKE) buildmsdos_subarch SUBARCH=80386 OS_SOURCE=win32 CPU_SOURCE=i386 INSTALL_PREFIX=$(INNODIR)
$(MOVE) $(INNODIR)/units/msdos_ $(INNODIR)/units/msdos
+ $(COPY) install/crossbinmsdos/nasm.exe $(INNODIR)/bin/i386-win32
rmcvsdir$(EXEEXT) $(INNODIR)
fpcsubst -i install/fpcmsdos.ist -o $(INNODIR)/fpcmsdos.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcmsdos.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.$(FULL_TARGET).exe
innoandroidbuild:
rmcvsdir$(EXEEXT) $(INNODIR)
@@ -1193,7 +1192,7 @@ innoandroidbuild:
rmcvsdir$(EXEEXT) $(INNODIR)
fpcmkcfg -t install/fpcandroid.ist -o $(INNODIR)/fpcandroid.iss $(FPCISSSUBST) -d FPCVERSION=$(PACKAGE_VERSION)
"$(ISCCPROG)" $(INNODIR)/fpcandroid.iss
- $(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.android.exe
+ $(MOVE) $(INNODIR)/Output/fpc-setup.exe fpc-$(PACKAGE_VERSION).$(FULL_SOURCE).cross.android.exe
innoclean:
rmcvsdir$(EXEEXT) $(INNODIR)
@@ -1207,6 +1206,10 @@ innox64 : checkfpcdir
$(MAKE) OS_TARGET=win64 CPU_TARGET=x86_64 innox64build NOGDB=1
$(MAKE) innoclean
+innox86x64 : checkfpcdir
+ $(MAKE) innox86x64build
+ $(MAKE) innoclean
+
innojvm : checkfpcdir
$(MAKE) OS_TARGET=java CPU_TARGET=jvm innojvmbuild NOGDB=1
$(MAKE) innoclean
diff --git a/createbranch.sh b/createbranch.sh
index ac9eb1b4..b440da4e 100755
--- a/createbranch.sh
+++ b/createbranch.sh
@@ -1,58 +1,57 @@
#!/bin/sh
+set -e
-# Default read-only HTTP URL used for externals
-SVNHTTPURL=https://svn.freepascal.org/svn
-
-if [ $# -lt 1 ]; then
- echo "Usage: $0 "
+if [ $# -lt 2 ]; then
+ echo "Usage: $0 "
echo
- echo "Example: $0 branches/fixes_2_1"
- echo " $0 tags/release_2_0_4"
+ echo "Example: $0 branch fixes_2_1"
+ echo " $0 tag release_2_0_4"
echo
exit 1
fi
-NEWSVNTAG=$1
-# For testing output the svn commands
-if [ ."$2" = ."test" ]; then
- SVN="echo svn"
+# For testing output the git commands
+if [ ."$3" = ."test" ]; then
+ GIT="echo git"
else
- SVN=svn
+ GIT=git
fi
-# Decode SVN URL from current fpcbuild URL
-FPCBUILDURL=`svn info . | grep URL | grep fpcbuild`
+# Decode git remote from current fpcbuild remote
+FPCBUILDURL=`git remote get-url origin | grep fpc/build.git`
if [ $? -ne 0 ]; then
- echo "This is not an fpcbuild checkout"
+ echo "This is not an fpcbuild checkout"
fi
-SVNURL=`echo $FPCBUILDURL | sed -e 's+URL: ++' -e 's+/fpcbuild/.*$++'`
-OLDSVNTAG=`echo $FPCBUILDURL | sed -e 's+URL:.*fpcbuild/++'`
-COMMITMSG="Creating branch $NEWSVNTAG"
-
-echo "SVN URL: $SVNURL"
-echo "Old SVN (branch) dir: $OLDSVNTAG"
-echo "New SVN (branch) dir: $NEWSVNTAG"
-
-$SVN copy $SVNURL/fpc/$OLDSVNTAG $SVNURL/fpc/$NEWSVNTAG -m "$COMMITMSG"
-$SVN copy $SVNURL/fpcbuild/$OLDSVNTAG $SVNURL/fpcbuild/$NEWSVNTAG -m "$COMMITMSG"
-# Generate svn:externals property
-cat << EXTERNALEOF > external.lst
-../../../fpc/$NEWSVNTAG fpcsrc
-../../../fpcdocs/trunk fpcdocs
-EXTERNALEOF
-echo
-echo "External list:"
-echo "===="
-cat external.lst
-echo "===="
-echo
+echo Using remote url $FPCBUILDURL
-# Setting properties on a remote URL is not supported.
-# To workaround we need to do a (non-recursive) checkout of the
-# just created fpcbuild branch
-$SVN co -N $SVNURL/fpcbuild/$NEWSVNTAG branchtmp
-$SVN ps -F external.lst svn:externals branchtmp
+echo Updating everything
+$GIT submodule update --init --recursive
+$GIT pull --recurse-submodule
+$GIT submodule update --init --recursive
-# Commit and cleanup
-$SVN ci branchtmp -m "$COMMITMSG" && rm -rf branchtmp && rm -f external.lst
+if [ ."$1" = ."tag" ]; then
+ echo Tagging $2
+ $GIT tag -a $2 -m " Tagging $2"
+ $GIT submodule foreach git tag -a $2 -m " Tagging $2"
+ echo Pushing still disabled, check the script $0 for #!!!
+ #!!! $GIT submodule foreach git push origin $2
+ #!!! $GIT push origin $2
+else
+ if [ ."$1" = ."branch" ]; then
+ $GIT checkout -b $2
+ cd fpcsrc
+ $GIT checkout -b $2
+ cd ../fpcdocs
+ $GIT checkout main
+ $GIT pull
+ cd ..
+ $GIT commit -a -m "Creating branch $2"
+ echo Pushing still disabled, check the script $0 for #!!!
+ #!!! $GIT submodule foreach git push origin $2
+ #!!! $GIT push origin $2
+ else
+ echo Unknown operation $1
+ exit 1
+ fi
+fi
diff --git a/demo/Makefile b/demo/Makefile
index a0ef5d0d..8b802e6e 100644
--- a/demo/Makefile
+++ b/demo/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -330,7 +330,7 @@ FPCFPMAKE=$(FPC)
endif
endif
override PACKAGE_NAME=demo
-override PACKAGE_VERSION=3.3.1
+override PACKAGE_VERSION=3.2.3
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_DIRS+=text linux unix graph lister
endif
@@ -415,7 +415,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_DIRS+=text
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -430,7 +430,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_DIRS+=text
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -508,9 +508,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_DIRS+=text
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_DIRS+=text
endif
@@ -532,6 +529,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_DIRS+=text
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_DIRS+=text
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_DIRS+=text linux unix graph lister
endif
@@ -589,24 +589,15 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_DIRS+=text linux unix graph lister
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_DIRS+=text linux unix graph lister
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_DIRS+=text
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=text linux unix graph lister
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
-override TARGET_DIRS+=text
-endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -810,7 +801,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -948,14 +938,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1325,16 +1315,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1452,15 +1433,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1615,14 +1594,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1646,9 +1623,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1669,14 +1645,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
@@ -1910,7 +1885,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
TARGET_DIRS_TEXT=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
TARGET_DIRS_TEXT=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1932,7 +1907,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
TARGET_DIRS_TEXT=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
TARGET_DIRS_TEXT=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -2042,9 +2017,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
TARGET_DIRS_TEXT=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-TARGET_DIRS_TEXT=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
TARGET_DIRS_TEXT=1
endif
@@ -2066,6 +2038,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
TARGET_DIRS_TEXT=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+TARGET_DIRS_TEXT=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
TARGET_DIRS_TEXT=1
TARGET_DIRS_LINUX=1
@@ -2143,36 +2118,19 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
TARGET_DIRS_TEXT=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-TARGET_DIRS_TEXT=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-TARGET_DIRS_TEXT=1
-TARGET_DIRS_LINUX=1
-TARGET_DIRS_UNIX=1
-TARGET_DIRS_GRAPH=1
-TARGET_DIRS_LISTER=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
TARGET_DIRS_TEXT=1
-TARGET_DIRS_LINUX=1
-TARGET_DIRS_UNIX=1
-TARGET_DIRS_GRAPH=1
-TARGET_DIRS_LISTER=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),wasm-wasm)
TARGET_DIRS_TEXT=1
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_TEXT=1
TARGET_DIRS_LINUX=1
TARGET_DIRS_UNIX=1
TARGET_DIRS_GRAPH=1
TARGET_DIRS_LISTER=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
-TARGET_DIRS_TEXT=1
-endif
ifdef TARGET_DIRS_TEXT
text_all:
$(MAKE) -C text all
diff --git a/demo/Makefile.fpc b/demo/Makefile.fpc
index da164ae9..7ac64ae9 100644
--- a/demo/Makefile.fpc
+++ b/demo/Makefile.fpc
@@ -4,7 +4,7 @@
[package]
name=demo
-version=3.3.1
+version=3.2.3
[target]
dirs=text
diff --git a/demo/freebsd/Makefile b/demo/freebsd/Makefile
index 8965a63e..b633c1f1 100644
--- a/demo/freebsd/Makefile
+++ b/demo/freebsd/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -413,7 +413,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -428,7 +428,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -506,9 +506,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
@@ -530,6 +527,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
@@ -587,22 +587,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=fontdemo sysmousetest demo_kqueue demo_sendfile
endif
ifdef REQUIRE_UNITSDIR
@@ -807,7 +798,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -945,14 +935,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1356,7 +1346,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1371,7 +1361,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1449,9 +1439,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1473,6 +1460,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1530,22 +1520,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1637,16 +1618,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1755,7 +1727,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1784,7 +1756,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1815,7 +1787,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1858,15 +1829,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1935,14 +1904,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1966,9 +1933,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1989,14 +1955,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/graph/Makefile b/demo/graph/Makefile
index 4b55db3f..0d83988a 100644
--- a/demo/graph/Makefile
+++ b/demo/graph/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -416,7 +416,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -431,7 +431,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -509,9 +509,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
@@ -533,6 +530,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
@@ -590,22 +590,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=fpctris mandel samegame quad maze gravwars
endif
ifeq ($(FULL_TARGET),i386-linux)
@@ -692,7 +683,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_UNITS+=gameunit
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -707,7 +698,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_UNITS+=gameunit
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -785,9 +776,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_UNITS+=gameunit
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_UNITS+=gameunit
endif
@@ -809,6 +797,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_UNITS+=gameunit
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_UNITS+=gameunit
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_UNITS+=gameunit
endif
@@ -866,22 +857,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-override TARGET_UNITS+=gameunit
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_UNITS+=gameunit
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_UNITS+=gameunit
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_UNITS+=gameunit
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_UNITS+=gameunit
endif
ifdef REQUIRE_UNITSDIR
@@ -1086,7 +1068,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -1224,14 +1205,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1635,7 +1616,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1650,7 +1631,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1728,9 +1709,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1752,6 +1730,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1809,22 +1790,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1916,16 +1888,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -2043,7 +2006,7 @@ fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -2072,7 +2035,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -2103,7 +2066,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -2146,15 +2108,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -2223,14 +2183,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -2254,9 +2212,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -2277,14 +2234,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/linux/Makefile b/demo/linux/Makefile
index f451cd73..de8a3a9a 100644
--- a/demo/linux/Makefile
+++ b/demo/linux/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -365,12 +365,6 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=epoll-pipe
endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=epoll-pipe
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
-override TARGET_PROGRAMS+=epoll-pipe
-endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -573,7 +567,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -711,14 +704,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1122,7 +1115,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1137,7 +1130,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1215,9 +1208,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1239,6 +1229,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1296,22 +1289,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1403,16 +1387,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1521,7 +1496,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1550,7 +1525,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1581,7 +1556,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1624,15 +1598,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1701,14 +1673,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1732,9 +1702,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1755,14 +1724,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/lister/Makefile b/demo/lister/Makefile
index d39a7e42..4f87f18b 100644
--- a/demo/lister/Makefile
+++ b/demo/lister/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -413,7 +413,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_PROGRAMS+=lister
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -428,7 +428,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_PROGRAMS+=lister
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -506,9 +506,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=lister
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_PROGRAMS+=lister
endif
@@ -530,6 +527,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_PROGRAMS+=lister
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_PROGRAMS+=lister
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_PROGRAMS+=lister
endif
@@ -587,22 +587,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-override TARGET_PROGRAMS+=lister
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_PROGRAMS+=lister
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=lister
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_PROGRAMS+=lister
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lister
endif
ifeq ($(FULL_TARGET),i386-linux)
@@ -689,7 +680,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_UNITS+=flist
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -704,7 +695,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_UNITS+=flist
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -782,9 +773,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_UNITS+=flist
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_UNITS+=flist
endif
@@ -806,6 +794,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_UNITS+=flist
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_UNITS+=flist
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_UNITS+=flist
endif
@@ -863,22 +854,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-override TARGET_UNITS+=flist
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_UNITS+=flist
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_UNITS+=flist
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_UNITS+=flist
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_UNITS+=flist
endif
ifdef REQUIRE_UNITSDIR
@@ -1083,7 +1065,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -1221,14 +1202,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1632,7 +1613,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1647,7 +1628,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1725,9 +1706,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1749,6 +1727,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1806,22 +1787,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1913,16 +1885,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -2040,7 +2003,7 @@ fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -2069,7 +2032,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -2100,7 +2063,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -2143,15 +2105,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -2220,14 +2180,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -2251,9 +2209,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -2274,14 +2231,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/modex/Makefile b/demo/modex/Makefile
index 9d8224bc..aaacf0df 100644
--- a/demo/modex/Makefile
+++ b/demo/modex/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -534,7 +534,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -672,14 +671,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1083,7 +1082,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1098,7 +1097,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1176,9 +1175,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1200,6 +1196,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1257,22 +1256,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1364,16 +1354,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1482,7 +1463,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1511,7 +1492,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1542,7 +1523,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1585,15 +1565,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1662,14 +1640,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1693,9 +1669,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1716,14 +1691,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/morphos/Makefile b/demo/morphos/Makefile
index bb65301c..ad0ff8d8 100644
--- a/demo/morphos/Makefile
+++ b/demo/morphos/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -534,7 +534,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -672,14 +671,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1083,7 +1082,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1098,7 +1097,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1176,9 +1175,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1200,6 +1196,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1257,22 +1256,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1364,16 +1354,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1482,7 +1463,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1511,7 +1492,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1542,7 +1523,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1585,15 +1565,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1662,14 +1640,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1693,9 +1669,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1716,14 +1691,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/netware/Makefile b/demo/netware/Makefile
index c758921c..d5153e8c 100644
--- a/demo/netware/Makefile
+++ b/demo/netware/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -534,7 +534,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -672,14 +671,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1083,7 +1082,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1098,7 +1097,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1176,9 +1175,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1200,6 +1196,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1257,22 +1256,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1364,16 +1354,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1482,7 +1463,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1511,7 +1492,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1542,7 +1523,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1585,15 +1565,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1662,14 +1640,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1693,9 +1669,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1716,14 +1691,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/netwlibc/Makefile b/demo/netwlibc/Makefile
index 4a5489e7..8ee16f11 100644
--- a/demo/netwlibc/Makefile
+++ b/demo/netwlibc/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -535,7 +535,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -673,14 +672,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1084,7 +1083,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1099,7 +1098,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1177,9 +1176,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1201,6 +1197,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1258,22 +1257,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1365,16 +1355,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1483,7 +1464,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1512,7 +1493,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1543,7 +1524,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1586,15 +1566,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1663,14 +1641,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1694,9 +1670,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1717,14 +1692,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/os2/Makefile b/demo/os2/Makefile
index c7b990f1..edc0f5d2 100644
--- a/demo/os2/Makefile
+++ b/demo/os2/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -534,7 +534,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -672,14 +671,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1083,7 +1082,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1098,7 +1097,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1176,9 +1175,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1200,6 +1196,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1257,22 +1256,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1364,16 +1354,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1482,7 +1463,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1511,7 +1492,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1542,7 +1523,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1585,15 +1565,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1662,14 +1640,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1693,9 +1669,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1716,14 +1691,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/text/Makefile b/demo/text/Makefile
index 5e63fe96..ddc2f8b3 100644
--- a/demo/text/Makefile
+++ b/demo/text/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -413,7 +413,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -428,7 +428,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -506,9 +506,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
@@ -530,6 +527,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
@@ -587,22 +587,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=eratos qsort hello blackbox magic lines
endif
ifdef REQUIRE_UNITSDIR
@@ -807,7 +798,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -945,14 +935,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1356,7 +1346,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1371,7 +1361,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1449,9 +1439,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1473,6 +1460,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1530,22 +1520,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1637,16 +1618,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1755,7 +1727,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1784,7 +1756,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1815,7 +1787,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1858,15 +1829,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1935,14 +1904,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1966,9 +1933,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1989,14 +1955,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/unix/Makefile b/demo/unix/Makefile
index 273a6463..b29b5935 100644
--- a/demo/unix/Makefile
+++ b/demo/unix/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -413,7 +413,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
override TARGET_PROGRAMS+=cgibmp daemon
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -428,7 +428,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
override TARGET_PROGRAMS+=cgibmp daemon
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -506,9 +506,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-override TARGET_PROGRAMS+=cgibmp daemon
-endif
ifeq ($(FULL_TARGET),arm-wince)
override TARGET_PROGRAMS+=cgibmp daemon
endif
@@ -530,6 +527,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
override TARGET_PROGRAMS+=cgibmp daemon
endif
+ifeq ($(FULL_TARGET),arm-ios)
+override TARGET_PROGRAMS+=cgibmp daemon
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_PROGRAMS+=cgibmp daemon
endif
@@ -587,22 +587,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
+ifeq ($(FULL_TARGET),aarch64-ios)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_PROGRAMS+=cgibmp daemon
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_PROGRAMS+=cgibmp daemon
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_PROGRAMS+=cgibmp daemon
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
override TARGET_PROGRAMS+=cgibmp daemon
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=cgibmp daemon
endif
ifdef REQUIRE_UNITSDIR
@@ -807,7 +798,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -945,14 +935,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1356,7 +1346,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1371,7 +1361,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1449,9 +1439,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1473,6 +1460,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1530,22 +1520,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1637,16 +1618,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1755,7 +1727,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1784,7 +1756,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1815,7 +1787,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1858,15 +1829,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1935,14 +1904,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1966,9 +1933,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1989,14 +1955,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/demo/win32/Makefile b/demo/win32/Makefile
index 81738eb6..234e287a 100644
--- a/demo/win32/Makefile
+++ b/demo/win32/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -269,8 +269,8 @@ endif
ifndef CROSSBINDIR
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
-ifeq ($(OS_SOURCE),darwin)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
+ifneq ($(findstring $(OS_SOURCE),darwin ios),)
DARWIN2DARWIN=1
endif
endif
@@ -537,7 +537,6 @@ EXEEXT=.exe
PPLEXT=.ppl
PPUEXT=.ppu
OEXT=.o
-LTOEXT=.bc
ASMEXT=.s
SMARTEXT=.sl
STATICLIBEXT=.a
@@ -675,14 +674,14 @@ STATICLIBPREFIX=
SHORTSUFFIX=nwl
IMPORTLIBPREFIX=imp
endif
-ifeq ($(OS_TARGET),macos)
+ifeq ($(OS_TARGET),macosclassic)
BATCHEXT=
EXEEXT=
DEBUGSYMEXT=.xcoff
SHORTSUFFIX=mac
IMPORTLIBPREFIX=imp
endif
-ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
+ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
BATCHEXT=.sh
EXEEXT=
HASSHAREDLIB=1
@@ -1086,7 +1085,7 @@ endif
ifeq ($(FULL_TARGET),m68k-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),m68k-macos)
+ifeq ($(FULL_TARGET),m68k-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),m68k-embedded)
@@ -1101,7 +1100,7 @@ endif
ifeq ($(FULL_TARGET),powerpc-amiga)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),powerpc-macos)
+ifeq ($(FULL_TARGET),powerpc-macosclassic)
REQUIRE_PACKAGES_RTL=1
endif
ifeq ($(FULL_TARGET),powerpc-darwin)
@@ -1179,9 +1178,6 @@ endif
ifeq ($(FULL_TARGET),arm-palmos)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),arm-darwin)
-REQUIRE_PACKAGES_RTL=1
-endif
ifeq ($(FULL_TARGET),arm-wince)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1203,6 +1199,9 @@ endif
ifeq ($(FULL_TARGET),arm-aros)
REQUIRE_PACKAGES_RTL=1
endif
+ifeq ($(FULL_TARGET),arm-ios)
+REQUIRE_PACKAGES_RTL=1
+endif
ifeq ($(FULL_TARGET),powerpc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
@@ -1260,22 +1259,13 @@ endif
ifeq ($(FULL_TARGET),aarch64-android)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),wasm-wasm)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),sparc64-linux)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv32-linux)
+ifeq ($(FULL_TARGET),aarch64-ios)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv32-embedded)
-REQUIRE_PACKAGES_RTL=1
-endif
-ifeq ($(FULL_TARGET),riscv64-linux)
+ifeq ($(FULL_TARGET),wasm-wasm)
REQUIRE_PACKAGES_RTL=1
endif
-ifeq ($(FULL_TARGET),riscv64-embedded)
+ifeq ($(FULL_TARGET),sparc64-linux)
REQUIRE_PACKAGES_RTL=1
endif
ifdef REQUIRE_PACKAGES_RTL
@@ -1367,16 +1357,7 @@ override FPCOPT+=-gl
override FPCOPTDEF+=DEBUG
endif
ifdef RELEASE
-ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
-ifeq ($(CPU_TARGET),i386)
-FPCCPUOPT:=-OG2p3
-endif
-ifeq ($(CPU_TARGET),powerpc)
-FPCCPUOPT:=-O1r
-endif
-else
FPCCPUOPT:=-O2
-endif
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
override FPCOPTDEF+=RELEASE
endif
@@ -1485,7 +1466,7 @@ endif
ifndef CROSSINSTALL
ifneq ($(TARGET_PROGRAMS),)
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
-override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
+override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS))
override ALLTARGET+=fpc_exes
override INSTALLEXEFILES+=$(EXEFILES)
@@ -1514,7 +1495,7 @@ fpc_debug:
$(MAKE) all DEBUG=1
fpc_release:
$(MAKE) all RELEASE=1
-.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) $(LTOEXT) .pas .lpr .dpr .pp .rc .res
+.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
$(COMPILER_UNITTARGETDIR):
$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
$(COMPILER_TARGETDIR):
@@ -1545,7 +1526,6 @@ vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
vpath %.inc $(COMPILER_INCLUDEDIR)
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
-vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR)
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
.PHONY: fpc_shared
override INSTALLTARGET+=fpc_shared_install
@@ -1588,15 +1568,13 @@ override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPP
endif
ifdef INSTALLPPUFILES
ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
else
-override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
endif
ifneq ($(UNITTARGETDIRPREFIX),)
-override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES))
-override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES))
-override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES))
-override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES)))
+override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
+override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
endif
override INSTALL_CREATEPACKAGEFPC=1
endif
@@ -1665,14 +1643,12 @@ ifdef CLEAN_UNITS
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
endif
ifdef CLEANPPUFILES
-override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
+override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
ifdef DEBUGSYMEXT
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
endif
-override CLEANPPUFILENAMES:=$(CLEANPPUFILES)
-override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES))
-override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES)
-override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES)))
+override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
+override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
endif
fpc_clean: $(CLEANTARGET)
ifdef CLEANEXEFILES
@@ -1696,9 +1672,8 @@ endif
ifdef LIB_NAME
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
endif
- -$(DEL) $(FPCMADE) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT)
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
fpc_cleanall: $(CLEANTARGET)
ifdef CLEANEXEFILES
-$(DEL) $(CLEANEXEFILES)
@@ -1719,14 +1694,13 @@ ifdef CLEAN_FILES
endif
-$(DELTREE) units
-$(DELTREE) bin
- -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
+ -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
ifneq ($(PPUEXT),.ppu)
-$(DEL) *.o *.ppu *.a
endif
-$(DELTREE) *$(SMARTEXT)
- -$(DEL) fpcmade.* Package.fpc *.fpm
- -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res
- -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
+ -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
+ -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
ifdef AOUTEXT
-$(DEL) *$(AOUTEXT)
endif
diff --git a/fpcdocs b/fpcdocs
new file mode 160000
index 00000000..60407b0f
--- /dev/null
+++ b/fpcdocs
@@ -0,0 +1 @@
+Subproject commit 60407b0f23bdcfee4596ce02e6c3c6d522cf6c08
diff --git a/fpcsrc b/fpcsrc
new file mode 160000
index 00000000..8066a5b4
--- /dev/null
+++ b/fpcsrc
@@ -0,0 +1 @@
+Subproject commit 8066a5b4ffc35f14757aa08e92cb2355c89c596f
diff --git a/install/bingo32/aslddos/ar.exe b/install/bingo32/aslddos/ar.exe
old mode 100644
new mode 100755
index cc1ccd84..2cca79ca
Binary files a/install/bingo32/aslddos/ar.exe and b/install/bingo32/aslddos/ar.exe differ
diff --git a/install/bingo32/aslddos/as.exe b/install/bingo32/aslddos/as.exe
old mode 100644
new mode 100755
index beebbe50..53d363b3
Binary files a/install/bingo32/aslddos/as.exe and b/install/bingo32/aslddos/as.exe differ
diff --git a/install/bingo32/aslddos/ld.exe b/install/bingo32/aslddos/ld.exe
old mode 100644
new mode 100755
index 365cf6f0..d25a628e
Binary files a/install/bingo32/aslddos/ld.exe and b/install/bingo32/aslddos/ld.exe differ
diff --git a/install/bingo32/aslddos/nm.exe b/install/bingo32/aslddos/nm.exe
old mode 100644
new mode 100755
index 534c7354..e451daf5
Binary files a/install/bingo32/aslddos/nm.exe and b/install/bingo32/aslddos/nm.exe differ
diff --git a/install/bingo32/aslddos/objdump.exe b/install/bingo32/aslddos/objdump.exe
old mode 100644
new mode 100755
index d9c450a2..2683c4af
Binary files a/install/bingo32/aslddos/objdump.exe and b/install/bingo32/aslddos/objdump.exe differ
diff --git a/install/bingo32/aslddos/strip.exe b/install/bingo32/aslddos/strip.exe
old mode 100644
new mode 100755
index 533bcc90..f777b26b
Binary files a/install/bingo32/aslddos/strip.exe and b/install/bingo32/aslddos/strip.exe differ
diff --git a/install/bingo32/cwsdpmi.exe b/install/bingo32/cwsdpmi.exe
old mode 100644
new mode 100755
diff --git a/install/bingo32/cwsdstub.exe b/install/bingo32/cwsdstub.exe
old mode 100644
new mode 100755
diff --git a/install/bingo32/cwsparam.exe b/install/bingo32/cwsparam.exe
old mode 100644
new mode 100755
diff --git a/install/bingo32/gdbdos/gdb.exe b/install/bingo32/gdbdos/gdb.exe
old mode 100644
new mode 100755
index 50b9cdd6..540d2882
Binary files a/install/bingo32/gdbdos/gdb.exe and b/install/bingo32/gdbdos/gdb.exe differ
diff --git a/install/bingo32/makedos/cmp.exe b/install/bingo32/makedos/cmp.exe
old mode 100644
new mode 100755
index cc51eb9f..85e78a68
Binary files a/install/bingo32/makedos/cmp.exe and b/install/bingo32/makedos/cmp.exe differ
diff --git a/install/bingo32/makedos/cp.exe b/install/bingo32/makedos/cp.exe
old mode 100644
new mode 100755
index d959c002..684d2b4a
Binary files a/install/bingo32/makedos/cp.exe and b/install/bingo32/makedos/cp.exe differ
diff --git a/install/bingo32/makedos/diff.exe b/install/bingo32/makedos/diff.exe
old mode 100644
new mode 100755
index 020f586b..dd5ef0eb
Binary files a/install/bingo32/makedos/diff.exe and b/install/bingo32/makedos/diff.exe differ
diff --git a/install/bingo32/makedos/gdate.exe b/install/bingo32/makedos/gdate.exe
old mode 100644
new mode 100755
index 5ead5535..a781e2fb
Binary files a/install/bingo32/makedos/gdate.exe and b/install/bingo32/makedos/gdate.exe differ
diff --git a/install/bingo32/makedos/gecho.exe b/install/bingo32/makedos/gecho.exe
old mode 100644
new mode 100755
index 5722321a..131f72b6
Binary files a/install/bingo32/makedos/gecho.exe and b/install/bingo32/makedos/gecho.exe differ
diff --git a/install/bingo32/makedos/ginstall.exe b/install/bingo32/makedos/ginstall.exe
old mode 100644
new mode 100755
index bf423cd6..21cc71fb
Binary files a/install/bingo32/makedos/ginstall.exe and b/install/bingo32/makedos/ginstall.exe differ
diff --git a/install/bingo32/makedos/gmkdir.exe b/install/bingo32/makedos/gmkdir.exe
old mode 100644
new mode 100755
index c662ddbd..ee57904c
Binary files a/install/bingo32/makedos/gmkdir.exe and b/install/bingo32/makedos/gmkdir.exe differ
diff --git a/install/bingo32/makedos/grep.exe b/install/bingo32/makedos/grep.exe
old mode 100644
new mode 100755
index 0d700de9..f73da750
Binary files a/install/bingo32/makedos/grep.exe and b/install/bingo32/makedos/grep.exe differ
diff --git a/install/bingo32/makedos/make.exe b/install/bingo32/makedos/make.exe
old mode 100644
new mode 100755
index f17394cd..c2d7ab95
Binary files a/install/bingo32/makedos/make.exe and b/install/bingo32/makedos/make.exe differ
diff --git a/install/bingo32/makedos/mv.exe b/install/bingo32/makedos/mv.exe
old mode 100644
new mode 100755
index 6ab56afd..2b65d7d9
Binary files a/install/bingo32/makedos/mv.exe and b/install/bingo32/makedos/mv.exe differ
diff --git a/install/bingo32/makedos/patch.exe b/install/bingo32/makedos/patch.exe
old mode 100644
new mode 100755
index f87c2ccb..c51a52c9
Binary files a/install/bingo32/makedos/patch.exe and b/install/bingo32/makedos/patch.exe differ
diff --git a/install/bingo32/makedos/pwd.exe b/install/bingo32/makedos/pwd.exe
old mode 100644
new mode 100755
index 29d242b7..4b332d94
Binary files a/install/bingo32/makedos/pwd.exe and b/install/bingo32/makedos/pwd.exe differ
diff --git a/install/bingo32/makedos/rm.exe b/install/bingo32/makedos/rm.exe
old mode 100644
new mode 100755
index ed1a7f0c..1e7ee4da
Binary files a/install/bingo32/makedos/rm.exe and b/install/bingo32/makedos/rm.exe differ
diff --git a/install/bingo32/makedos/zip.exe b/install/bingo32/makedos/zip.exe
old mode 100644
new mode 100755
diff --git a/install/bingo32/utilities.txt b/install/bingo32/utilities.txt
index 2d9caff6..b1674332 100644
--- a/install/bingo32/utilities.txt
+++ b/install/bingo32/utilities.txt
@@ -7,7 +7,7 @@ directory current/v2gnu.
zip.exe comes from Info-ZIP's Zip (http://www.info-zip.org).
aslddos:
-Files from GNU binutils 2.17 (djgpp 2.03). Original file: bnu217b.zip
+Files from GNU binutils 2.31.1 (djgpp 2.05). Original file: bnu2311b.zip
* ar.exe
* as.exe
* ld.exe
@@ -16,29 +16,29 @@ Files from GNU binutils 2.17 (djgpp 2.03). Original file: bnu217b.zip
* strip.exe
makedos:
-Files from GNU diffutils 2.8.7 (djgpp 2.03). Original file: dif287b.zip
+Files from GNU diffutils 3.7 (djgpp 2.05). Original file: dif37b.zip
* diff.exe
* cmp.exe
-Files from GNU sh-utils 2.0.11 (djgpp 2.03). Original file: shl2011b.zip
+Files from GNU sh-utils 2.0.11 (djgpp 2.05). Original file: shl2011br2.zip
* gdate.exe (renamed from date.exe)
* gecho.exe (renamed from echo.exe)
* pwd.exe
-Files from GNU fileutils 4.1 (djgpp 2.03). Original file: fil41b.zip
+Files from GNU fileutils 4.1 (djgpp 2.05). Original file: fil41br2.zip
* cp.exe
* mv.exe
* ginstall.exe
* rm.exe
* gmkdir.exe (renamed from mkdir.exe)
-Files from GNU grep 2.5.3 (djgpp 2.03). Original file: grep253b.zip
+Files from GNU grep 2.28 (djgpp 2.05). Original file: grep228b.zip
* grep.exe
-Files from GNU patch 2.5.9 (djgpp 2.03). Original file: pat259b.zip
+Files from GNU patch 2.7.5 (djgpp 2.05). Original file: pat275br2.zip
* patch.exe
-Files from GNU make 3.79.1 (djgpp 2.03). Original file: mak3791b.zip
+Files from GNU make 4.2.1 (djgpp 2.05). Original file: mak421b.zip
* make.exe
Files from Info-ZIP's Zip 2.32. Original file: zip232x.zip
* zip.exe
gdbdos:
-Files from GNU gdb 6.1.1 (djgpp 2.03). Original file: gdb611b.zip
+Files from GNU gdb 8.0.1 (djgpp 2.05). Original file: gdb801b.zip
* gdb.exe
diff --git a/install/binos2/asldos2/bin/os2/ar.exe b/install/binos2/asldos2/bin/os2/ar.exe
new file mode 100644
index 00000000..310d7a7b
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/ar.exe differ
diff --git a/install/binos2/asldos2/bin/os2/as.exe b/install/binos2/asldos2/bin/os2/as.exe
new file mode 100644
index 00000000..dda9b781
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/as.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emx.exe b/install/binos2/asldos2/bin/os2/emx.exe
new file mode 100644
index 00000000..2d9c9f1b
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emx.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxaout.exe b/install/binos2/asldos2/bin/os2/emxaout.exe
new file mode 100644
index 00000000..290c817a
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxaout.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxbind.exe b/install/binos2/asldos2/bin/os2/emxbind.exe
new file mode 100644
index 00000000..386db90b
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxbind.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxcat.exe b/install/binos2/asldos2/bin/os2/emxcat.exe
new file mode 100644
index 00000000..ce22acfe
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxcat.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxd.exe b/install/binos2/asldos2/bin/os2/emxd.exe
new file mode 100644
index 00000000..632886d1
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxd.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxfpemu b/install/binos2/asldos2/bin/os2/emxfpemu
new file mode 100644
index 00000000..1b3d88d3
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxfpemu differ
diff --git a/install/binos2/asldos2/bin/os2/emximp.exe b/install/binos2/asldos2/bin/os2/emximp.exe
new file mode 100644
index 00000000..cef34cf5
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emximp.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxl.exe b/install/binos2/asldos2/bin/os2/emxl.exe
new file mode 100644
index 00000000..375c6f22
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxl.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxload.exe b/install/binos2/asldos2/bin/os2/emxload.exe
new file mode 100644
index 00000000..de150d97
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxload.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxomf.exe b/install/binos2/asldos2/bin/os2/emxomf.exe
new file mode 100644
index 00000000..ec7f0c10
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxomf.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxrev.cmd b/install/binos2/asldos2/bin/os2/emxrev.cmd
new file mode 100644
index 00000000..e4ccaa35
--- /dev/null
+++ b/install/binos2/asldos2/bin/os2/emxrev.cmd
@@ -0,0 +1,132 @@
+/* emxrev.cmd -- Display revision numbers of emx DLLs
+ Copyright (c) 1993-1995 Eberhard Mattes
+
+This file is part of emx.
+
+emx is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+emx is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with emx; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+
+ call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
+ call SysLoadFuncs
+
+ parse arg arg1 rest
+ arg1 = strip( arg1, 'T')
+ rest = strip( rest, 'T')
+ select
+ when arg1 = '' then do
+ say revision( 'emx')
+ say revision( 'emxio')
+ say revision( 'emxlibc')
+ say revision( 'emxlibcm')
+ say revision( 'emxlibcs')
+ say revision( 'emxwrap')
+ end
+ when arg1 = '-a' then do
+ if rest \= '' then
+ call usage
+ call find_all
+ end
+ when arg1 = '-c' then do
+ if (rest = '') | (words( rest) > 1) then
+ call usage
+ parse var rest drive':'rest
+ if (length( drive) \= 1) | (rest \= '') then
+ call usage
+ call find_tree( drive':')
+ end
+ when arg1 = '-d' then do
+ if (rest = '') | (words( rest) > 1) then
+ call usage
+ call find_dir rest, 'S'
+ end
+ when arg1 = '-f' then do
+ if (rest = '') | (words( rest) > 1) then
+ call usage
+ say revision( rest)
+ end
+ when arg1 = '-p' then do
+ if (rest = '') | (words( rest) > 1) then
+ call usage
+ call find_config rest
+ end
+ otherwise
+ call usage
+ end
+ exit 0
+
+usage:
+ say 'Usage:'
+ say ' emxrev Display revision number of default emx DLLs'
+ say ' emxrev -a Scan all disks for emx DLLs'
+ say ' emxrev -c d: Scan complete drive D: for emx DLLs'
+ say ' emxrev -d dir Scan directory DIR for emx DLLs'
+ say ' emxrev -f file Display revision number of FILE'
+ say ' emxrev -p file Scan directories in LIBPATH statement of FILE'
+ say ''
+ say 'emx DLLs are emx.dll, emxio.dll, emxlibc.dll, emxlibcm.dll,'
+ say ' emxlibcs.dll, and emxwrap.dll.'
+exit 1
+
+find_all: procedure
+ drives = SysDriveMap()
+ do i = 1 to words( drives)
+ call find_tree( word( drives, i))
+ end
+ return
+
+find_tree: procedure
+ arg drive
+ call find_dir drive'\', 'S'
+ return
+
+find_dir: procedure
+ arg dir, opt
+ last = right( dir, 1)
+ if (last \= '/') & (last \= '\') & (last \= ':') then
+ dir = dir'\'
+ call SysFileTree dir'emx*.dll', files, 'FO'||opt
+ do i = 1 to files.0
+ name = translate( filespec( 'name', files.i))
+ if (name = 'EMX.DLL') | (name = 'EMXIO.DLL') | (name = 'EMXLIBC.DLL'),
+ | (name = 'EMXLIBCM.DLL') | (name = 'EMXLIBCS.DLL'),
+ | (name = 'EMXWRAP.DLL') then
+ say revision( files.i)
+ end
+ return
+
+find_config: procedure
+ arg config
+ call SysFileSearch 'LIBPATH=', config, lines
+ do i = 1 to lines.0
+ parse var lines.i 'LIBPATH='rest
+ list = translate( rest, ' ', ';')
+ do j = 1 to words( list)
+ call find_dir word( list, j), ''
+ end
+ end
+ return
+
+revision: procedure
+ arg pathname
+ call RxFuncAdd emx_revision, pathname, emx_revision
+ signal on syntax name error
+ tmp = emx_revision()
+ signal off syntax
+ call RxFuncDrop emx_revision
+ return pathname ': revision =' tmp
+
+error:
+ return pathname ': revision number not available'
diff --git a/install/binos2/asldos2/bin/os2/emxstack.exe b/install/binos2/asldos2/bin/os2/emxstack.exe
new file mode 100644
index 00000000..672a9b0f
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxstack.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxupd.exe b/install/binos2/asldos2/bin/os2/emxupd.exe
new file mode 100644
index 00000000..694f2cba
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/emxupd.exe differ
diff --git a/install/binos2/asldos2/bin/os2/emxuzdll.cmd b/install/binos2/asldos2/bin/os2/emxuzdll.cmd
new file mode 100644
index 00000000..44bb4d06
--- /dev/null
+++ b/install/binos2/asldos2/bin/os2/emxuzdll.cmd
@@ -0,0 +1,23 @@
+@echo off
+if "%1"=="" goto usage
+if "%2"=="" goto usage
+if not "%3"=="" goto usage
+
+if exist *.dll goto exist
+unzip -j -C %1 *.dll
+if errorlevel 1 goto cleanup
+for %%f in (*.dll) do emxupd %%f %2
+:cleanup
+del *.dll 2>nul
+goto end
+
+:usage
+echo Usage: emxuzdll ^ ^
+echo Example: emxuzdll a:\emxfix04.zip c:\emx\dll
+goto end
+
+:exist
+echo Sorry, there are DLL files in the current directory
+goto end
+
+:end
diff --git a/install/binos2/asldos2/bin/os2/gasp.exe b/install/binos2/asldos2/bin/os2/gasp.exe
new file mode 100644
index 00000000..c3048431
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/gasp.exe differ
diff --git a/install/binos2/asldos2/bin/os2/ld.exe b/install/binos2/asldos2/bin/os2/ld.exe
new file mode 100644
index 00000000..f166c33c
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/ld.exe differ
diff --git a/install/binos2/asldos2/bin/os2/nm.exe b/install/binos2/asldos2/bin/os2/nm.exe
new file mode 100644
index 00000000..6ba59446
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/nm.exe differ
diff --git a/install/binos2/asldos2/bin/os2/objcopy.exe b/install/binos2/asldos2/bin/os2/objcopy.exe
new file mode 100644
index 00000000..93d35ddd
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/objcopy.exe differ
diff --git a/install/binos2/asldos2/bin/os2/objdump.exe b/install/binos2/asldos2/bin/os2/objdump.exe
new file mode 100644
index 00000000..8e422773
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/objdump.exe differ
diff --git a/install/binos2/asldos2/bin/os2/ranlib.exe b/install/binos2/asldos2/bin/os2/ranlib.exe
new file mode 100644
index 00000000..c8e4edfa
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/ranlib.exe differ
diff --git a/install/binos2/asldos2/bin/os2/rsx.exe b/install/binos2/asldos2/bin/os2/rsx.exe
new file mode 100644
index 00000000..4deee19f
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/rsx.exe differ
diff --git a/install/binos2/asldos2/bin/os2/rsxopt.exe b/install/binos2/asldos2/bin/os2/rsxopt.exe
new file mode 100644
index 00000000..d117c5fe
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/rsxopt.exe differ
diff --git a/install/binos2/asldos2/bin/os2/size.exe b/install/binos2/asldos2/bin/os2/size.exe
new file mode 100644
index 00000000..1380281f
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/size.exe differ
diff --git a/install/binos2/asldos2/bin/os2/strip.exe b/install/binos2/asldos2/bin/os2/strip.exe
new file mode 100644
index 00000000..13b4cfe8
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/strip.exe differ
diff --git a/install/binos2/asldos2/bin/os2/touch.exe b/install/binos2/asldos2/bin/os2/touch.exe
new file mode 100644
index 00000000..6762bff4
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/touch.exe differ
diff --git a/install/binos2/asldos2/bin/os2/wrc.exe b/install/binos2/asldos2/bin/os2/wrc.exe
new file mode 100644
index 00000000..91d99df0
Binary files /dev/null and b/install/binos2/asldos2/bin/os2/wrc.exe differ
diff --git a/install/binos2/asldos2/book/emxrt.inf b/install/binos2/asldos2/book/emxrt.inf
new file mode 100644
index 00000000..1cb3a5b0
Binary files /dev/null and b/install/binos2/asldos2/book/emxrt.inf differ
diff --git a/install/binos2/asldos2/dll/bfd2e.dll b/install/binos2/asldos2/dll/bfd2e.dll
new file mode 100644
index 00000000..3dffd28b
Binary files /dev/null and b/install/binos2/asldos2/dll/bfd2e.dll differ
diff --git a/install/binos2/asldos2/dll/emx.dll b/install/binos2/asldos2/dll/emx.dll
new file mode 100644
index 00000000..342b073f
Binary files /dev/null and b/install/binos2/asldos2/dll/emx.dll differ
diff --git a/install/binos2/asldos2/dll/emxio.dll b/install/binos2/asldos2/dll/emxio.dll
new file mode 100644
index 00000000..18d89b94
Binary files /dev/null and b/install/binos2/asldos2/dll/emxio.dll differ
diff --git a/install/binos2/asldos2/dll/emxlibc.dll b/install/binos2/asldos2/dll/emxlibc.dll
new file mode 100644
index 00000000..5d68761e
Binary files /dev/null and b/install/binos2/asldos2/dll/emxlibc.dll differ
diff --git a/install/binos2/asldos2/dll/emxlibcm.dll b/install/binos2/asldos2/dll/emxlibcm.dll
new file mode 100644
index 00000000..b9f6ab77
Binary files /dev/null and b/install/binos2/asldos2/dll/emxlibcm.dll differ
diff --git a/install/binos2/asldos2/dll/emxlibcs.dll b/install/binos2/asldos2/dll/emxlibcs.dll
new file mode 100644
index 00000000..b51c5dbf
Binary files /dev/null and b/install/binos2/asldos2/dll/emxlibcs.dll differ
diff --git a/install/binos2/asldos2/dll/emxwrap.dll b/install/binos2/asldos2/dll/emxwrap.dll
new file mode 100644
index 00000000..b6536b74
Binary files /dev/null and b/install/binos2/asldos2/dll/emxwrap.dll differ
diff --git a/install/binos2/asldos2/dll/iintl6i.dll b/install/binos2/asldos2/dll/iintl6i.dll
new file mode 100644
index 00000000..5efad94a
Binary files /dev/null and b/install/binos2/asldos2/dll/iintl6i.dll differ
diff --git a/install/binos2/asldos2/dll/libc05.dll b/install/binos2/asldos2/dll/libc05.dll
new file mode 100644
index 00000000..5ec6b9d7
Binary files /dev/null and b/install/binos2/asldos2/dll/libc05.dll differ
diff --git a/install/binos2/gdbos2/bin/os2/gdb.exe b/install/binos2/gdbos2/bin/os2/gdb.exe
new file mode 100644
index 00000000..22140230
Binary files /dev/null and b/install/binos2/gdbos2/bin/os2/gdb.exe differ
diff --git a/install/binos2/gdbos2/bin/os2/gprof.exe b/install/binos2/gdbos2/bin/os2/gprof.exe
new file mode 100644
index 00000000..b53924fc
Binary files /dev/null and b/install/binos2/gdbos2/bin/os2/gprof.exe differ
diff --git a/install/binos2/gdbos2/bin/os2/pmgdb.exe b/install/binos2/gdbos2/bin/os2/pmgdb.exe
new file mode 100644
index 00000000..829de95e
Binary files /dev/null and b/install/binos2/gdbos2/bin/os2/pmgdb.exe differ
diff --git a/install/binos2/gdbos2/bin/os2/pmgdb.hlp b/install/binos2/gdbos2/bin/os2/pmgdb.hlp
new file mode 100644
index 00000000..f0e3e9a4
Binary files /dev/null and b/install/binos2/gdbos2/bin/os2/pmgdb.hlp differ
diff --git a/install/binos2/makeos2/bin/os2/chmod.exe b/install/binos2/makeos2/bin/os2/chmod.exe
new file mode 100644
index 00000000..1f951684
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/chmod.exe differ
diff --git a/install/binos2/makeos2/bin/os2/cp.exe b/install/binos2/makeos2/bin/os2/cp.exe
new file mode 100644
index 00000000..e24af989
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/cp.exe differ
diff --git a/install/binos2/makeos2/bin/os2/dd.exe b/install/binos2/makeos2/bin/os2/dd.exe
new file mode 100644
index 00000000..fb74b1d1
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/dd.exe differ
diff --git a/install/binos2/makeos2/bin/os2/df.exe b/install/binos2/makeos2/bin/os2/df.exe
new file mode 100644
index 00000000..b811c645
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/df.exe differ
diff --git a/install/binos2/makeos2/bin/os2/diff.exe b/install/binos2/makeos2/bin/os2/diff.exe
new file mode 100644
index 00000000..2961c8ef
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/diff.exe differ
diff --git a/install/binos2/makeos2/bin/os2/dir.exe b/install/binos2/makeos2/bin/os2/dir.exe
new file mode 100644
index 00000000..73016fe2
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/dir.exe differ
diff --git a/install/binos2/makeos2/bin/os2/du.exe b/install/binos2/makeos2/bin/os2/du.exe
new file mode 100644
index 00000000..7c9c973e
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/du.exe differ
diff --git a/install/binos2/makeos2/bin/os2/gdate.exe b/install/binos2/makeos2/bin/os2/gdate.exe
new file mode 100644
index 00000000..85873226
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/gdate.exe differ
diff --git a/install/binos2/makeos2/bin/os2/ginstall.exe b/install/binos2/makeos2/bin/os2/ginstall.exe
new file mode 100644
index 00000000..07188a52
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/ginstall.exe differ
diff --git a/install/binos2/makeos2/bin/os2/ls.exe b/install/binos2/makeos2/bin/os2/ls.exe
new file mode 100644
index 00000000..e6f319ad
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/ls.exe differ
diff --git a/install/binos2/makeos2/bin/os2/make.exe b/install/binos2/makeos2/bin/os2/make.exe
new file mode 100644
index 00000000..76564edc
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/make.exe differ
diff --git a/install/binos2/makeos2/bin/os2/mkdir.exe b/install/binos2/makeos2/bin/os2/mkdir.exe
new file mode 100644
index 00000000..28870157
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/mkdir.exe differ
diff --git a/install/binos2/makeos2/bin/os2/mv.exe b/install/binos2/makeos2/bin/os2/mv.exe
new file mode 100644
index 00000000..11365c2a
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/mv.exe differ
diff --git a/install/binos2/makeos2/bin/os2/pwd.exe b/install/binos2/makeos2/bin/os2/pwd.exe
new file mode 100644
index 00000000..5a72c3b1
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/pwd.exe differ
diff --git a/install/binos2/makeos2/bin/os2/rm.exe b/install/binos2/makeos2/bin/os2/rm.exe
new file mode 100644
index 00000000..e824ada0
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/rm.exe differ
diff --git a/install/binos2/makeos2/bin/os2/rmdir.exe b/install/binos2/makeos2/bin/os2/rmdir.exe
new file mode 100644
index 00000000..43de17dd
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/rmdir.exe differ
diff --git a/install/binos2/makeos2/bin/os2/vdir.exe b/install/binos2/makeos2/bin/os2/vdir.exe
new file mode 100644
index 00000000..6fafcf2b
Binary files /dev/null and b/install/binos2/makeos2/bin/os2/vdir.exe differ
diff --git a/install/binos2/makeos2/dll/gnufu.dll b/install/binos2/makeos2/dll/gnufu.dll
new file mode 100644
index 00000000..bd8ec5e4
Binary files /dev/null and b/install/binos2/makeos2/dll/gnufu.dll differ
diff --git a/install/binos2/makeos2/dll/gnuintl.dll b/install/binos2/makeos2/dll/gnuintl.dll
new file mode 100644
index 00000000..4dc0c017
Binary files /dev/null and b/install/binos2/makeos2/dll/gnuintl.dll differ
diff --git a/install/binos2/makeos2/dll/gnuregex.dll b/install/binos2/makeos2/dll/gnuregex.dll
new file mode 100644
index 00000000..f52fbee0
Binary files /dev/null and b/install/binos2/makeos2/dll/gnuregex.dll differ
diff --git a/install/binos2/makeos2/dll/gnushu.dll b/install/binos2/makeos2/dll/gnushu.dll
new file mode 100644
index 00000000..f3e63c9b
Binary files /dev/null and b/install/binos2/makeos2/dll/gnushu.dll differ
diff --git a/install/binos2/makeos2/doc/chmod.1 b/install/binos2/makeos2/doc/chmod.1
new file mode 100644
index 00000000..b5842c34
--- /dev/null
+++ b/install/binos2/makeos2/doc/chmod.1
@@ -0,0 +1,84 @@
+.TH CHMOD 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+chmod \- change the access permissions of files
+.SH SYNOPSIS
+.B chmod
+[\-Rcfv] [\-\-recursive] [\-\-changes]
+[\-\-silent] [\-\-quiet] [\-\-verbose] [\-\-help] [\-\-version] mode file...
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR chmod .
+.B chmod
+changes the permissions of each given file according to
+.IR mode ,
+which can be either a symbolic representation of changes to make, or
+an octal number representing the bit pattern for the new permissions.
+.PP
+The format of a symbolic mode is
+`[ugoa...][[+-=][rwxXstugo...]...][,...]'. Multiple symbolic
+operations can be given, separated by commas.
+.PP
+A combination of the letters `ugoa' controls which users' access to
+the file will be changed: the user who owns it (u), other users in the
+file's group (g), other users not in the file's group (o), or all
+users (a). If none of these are given, the effect is as if `a' were
+given, but bits that are set in the umask are not affected.
+.PP
+The operator `+' causes the permissions selected to be added to the
+existing permissions of each file; `-' causes them to be removed; and
+`=' causes them to be the only permissions that the file has.
+.PP
+The letters `rwxXstugo' select the new permissions for the affected
+users: read (r), write (w), execute (or access for directories) (x),
+execute only if the file is a directory or already has execute
+permission for some user (X), set user or group ID on execution (s),
+save program text on swap device (t), the permissions that the user
+who owns the file currently has for it (u), the permissions that other
+users in the file's group have for it (g), and the permissions that
+other users not in the file's group have for it (o).
+.PP
+A numeric mode is from one to four octal digits (0-7), derived by
+adding up the bits with values 4, 2, and 1. Any omitted digits are
+assumed to be leading zeros. The first digit selects the set user ID
+(4) and set group ID (2) and save text image (1) attributes. The
+second digit selects permissions for the user who owns the file: read
+(4), write (2), and execute (1); the third selects permissions for
+other users in the file's group, with the same values; and the fourth
+for other users not in the file's group, with the same values.
+.PP
+.B chmod
+never changes the permissions of symbolic links; the
+.B chmod
+system call cannot change their permissions. This is not a problem
+since the permissions of symbolic links are never used.
+However, for each symbolic link listed on the command line,
+.B chmod
+changes the permissions of the pointed-to file.
+In contrast,
+.B chmod
+ignores symbolic links encountered during recursive directory
+traversals.
+.SS OPTIONS
+.TP
+.I "\-c, \-\-changes"
+Verbosely describe only files whose permissions actually change.
+.TP
+.I "\-f, \-\-silent, \-\-quiet"
+Do not print error messages about files whose permissions cannot be
+changed.
+.TP
+.I "\-v, \-\-verbose"
+Verbosely describe changed permissions.
+.TP
+.I "\-R, \-\-recursive"
+Recursively change permissions of directories and their contents.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/cp.1 b/install/binos2/makeos2/doc/cp.1
new file mode 100644
index 00000000..84615f68
--- /dev/null
+++ b/install/binos2/makeos2/doc/cp.1
@@ -0,0 +1,131 @@
+.TH CP 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+cp \- copy files
+.SH SYNOPSIS
+.B cp
+[options] source dest
+.br
+.B cp
+[options] source... directory
+.br
+Options:
+.br
+[\-abdfilprsuvxPR] [\-S backup-suffix] [\-V {numbered,existing,simple}]
+[\-\-backup] [\-\-no-dereference] [\-\-force] [\-\-interactive]
+[\-\-one-file-system] [\-\-preserve] [\-\-recursive] [\-\-update]
+[\-\-verbose] [\-\-suffix=backup-suffix]
+[\-\-version-control={numbered,existing,simple}] [\-\-archive] [\-\-parents]
+[\-\-link] [\-\-symbolic-link] [\-\-help] [\-\-version]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR cp .
+If the last argument names an existing directory,
+.B cp
+copies each other given file into a file with the same name in that
+directory. Otherwise, if only two files are given, it copies the
+first onto the second. It is an error if the last argument is not a
+directory and more than two files are given. By default, it does not
+copy directories.
+.SS OPTIONS
+.TP
+.I "\-a, \-\-archive"
+Preserve as much as possible of the structure and attributes of the
+original files in the copy. The same as
+.IR \-dpR .
+.TP
+.I "\-b, \-\-backup"
+Make backups of files that are about to be overwritten or removed.
+.TP
+.I "\-d, \-\-no-dereference"
+Copy symbolic links as symbolic links rather than copying the files
+that they point to, and preserve hard link relationships between
+source files in the copies.
+.TP
+.I "\-f, \-\-force"
+Remove existing destination files.
+.TP
+.I "\-i, \-\-interactive"
+Prompt whether to overwrite existing regular destination files.
+.TP
+.I "\-l, \-\-link"
+Make hard links instead of copies of non-directories.
+.TP
+.I "\-P, \-\-parents"
+Form the name of each destination file by appending to the target
+directory a slash and the specified name of the source file. The last
+argument given to
+.B cp
+must be the name of an existing directory. For example, the command
+`cp \-\-parents a/b/c existing_dir' copies the file
+.I a/b/c
+to
+.I existing_dir/a/b/c,
+creating any missing intermediate directories.
+.TP
+.I "\-p, \-\-preserve"
+Preserve the original files' owner, group, permissions, and timestamps.
+.TP
+.I \-r
+Copy directories recursively, copying all non-directories as if they
+were regular files.
+.TP
+.I "\-s, \-\-symbolic-link"
+Make symbolic links instead of copies of non-directories.
+All source filenames must be absolute (starting with `/')
+unless the destination files are in the current directory.
+This option produces an error message on systems that do not support
+symbolic links.
+.TP
+.I "\-u, \-\-update"
+Do not copy a nondirectory that has an existing destination with the
+same or newer modification time.
+.TP
+.I "\-v, \-\-verbose"
+Print the name of each file before copying it.
+.TP
+.I "\-x, \-\-one-file-system"
+Skip subdirectories that are on different filesystems from the one
+that the copy started on.
+.TP
+.I "\-R, \-\-recursive"
+Copy directories recursively.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.TP
+.I "\-S, \-\-suffix backup-suffix"
+The suffix used for making simple backup files can be set with the
+.B SIMPLE_BACKUP_SUFFIX
+environment variable, which can be overridden by this option. If
+neither of those is given, the default is `~', as it is in Emacs.
+.TP
+.I "\-V, \-\-version-control {numbered,existing,simple}"
+The type of backups made can be set with the
+.B VERSION_CONTROL
+environment variable, which can be overridden by this option. If
+.B VERSION_CONTROL
+is not set and this option is not given, the default backup type is
+`existing'. The value of the
+.B VERSION_CONTROL
+environment variable and the argument to this option are like the GNU
+Emacs `version-control' variable; they also recognize synonyms that
+are more descriptive. The valid values are (unique abbreviations are
+accepted):
+.RS
+.TP
+`t' or `numbered'
+Always make numbered backups.
+.TP
+`nil' or `existing'
+Make numbered backups of files that already
+have them, simple backups of the others.
+.TP
+`never' or `simple'
+Always make simple backups.
diff --git a/install/binos2/makeos2/doc/date.1 b/install/binos2/makeos2/doc/date.1
new file mode 100644
index 00000000..741b5600
--- /dev/null
+++ b/install/binos2/makeos2/doc/date.1
@@ -0,0 +1,177 @@
+.TH DATE 1L "GNU Shell Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+date \- print or set the system date and time
+.SH SYNOPSIS
+.B date
+[\-u] [\-d datestr] [\-s datestr] [\-\-utc] [\-\-universal]
+[\-\-date=datestr] [\-\-set=datestr] [\-\-help] [\-\-version]
+[+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
+
+.SH DESCRIPTION
+This manual page
+documents the GNU version of
+.BR date .
+.B date
+with no arguments prints the current time and date (in the format
+of the `%c' directive described below).
+If given an argument that starts with a `+', it prints the current
+time and date in a format controlled by that argument, which has the
+same format as the format string passed to the `strftime' function.
+Except for directives that start with `%', characters in that string
+are printed unchanged.
+.PP
+The directives are:
+.IP %
+a literal %
+.IP n
+a newline
+.IP t
+a horizontal tab
+.PP
+Time fields:
+.IP %H
+hour (00..23)
+.IP %I
+hour (01..12)
+.IP %k
+hour ( 0..23)
+.IP %l
+hour ( 1..12)
+.IP %M
+minute (00..59)
+.IP %p
+locale's AM or PM
+.IP %r
+time, 12-hour (hh:mm:ss [AP]M)
+.IP %s
+seconds since 1970-01-01 00:00:00 UTC (a nonstandard extension)
+.IP %S
+second (00..61)
+.IP %T
+time, 24-hour (hh:mm:ss)
+.IP %X
+locale's time representation (%H:%M:%S)
+.IP %Z
+time zone (e.g., EDT), or nothing if no time zone is determinable
+.PP
+Date fields:
+.IP %a
+locale's abbreviated weekday name (Sun..Sat)
+.IP %A
+locale's full weekday name, variable length (Sunday..Saturday)
+.IP %b
+locale's abbreviated month name (Jan..Dec)
+.IP %B
+locale's full month name, variable length (January..December)
+.IP %c
+locale's date and time (Sat Nov 04 12:02:33 EST 1989)
+.IP %d
+day of month (01..31)
+.IP %D
+date (mm/dd/yy)
+.IP %h
+same as %b
+.IP %j
+day of year (001..366)
+.IP %m
+month (01..12)
+.IP %U
+week number of year with Sunday as first day of week (00..53)
+.IP %w
+day of week (0..6) with 0 corresponding to Sunday
+.IP %W
+week number of year with Monday as first day of week (00..53)
+.IP %x
+locale's date representation (mm/dd/yy)
+.IP %y
+last two digits of year (00..99)
+.IP %Y
+year (1970...)
+.PP
+By default,
+.BR date
+pads numeric fields with zeroes.
+GNU
+.BR date
+recognizes the following nonstandard numeric modifiers:
+.IP \-
+(hyphen) do not pad the field
+.IP _
+(underscore) pad the field with spaces
+.PP
+If given an argument that does not start with `+',
+.B date
+sets the system clock to the time and date specified by that argument.
+The argument must consist entirely of digits, which have the following
+meaning:
+.IP MM
+month
+.IP DD
+day within month
+.IP hh
+hour
+.IP mm
+minute
+.IP CC
+first two digits of year (optional)
+.IP YY
+last two digits of year (optional)
+.IP ss
+second (optional)
+.PP
+Only the superuser can set the system clock.
+.SS OPTIONS
+.TP
+.I "\-d datestr, \-\-date datestr"
+Display the time and date specified in
+.IR datestr ,
+which can be in almost any common format. The display is in
+the default output format, or if an argument starting with `+' is
+given to
+.BR date ,
+in the format specified by that argument.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-s datestr, \-\-set datestr"
+Set the time and date to
+.IR datestr ,
+which can be in almost any common format.
+It can contain month names, timezones, `am' and `pm', etc.
+.TP
+.I "\-u, \-\-universal"
+Print or set the time and date in Coordinated Universal Time (also
+known as Greenwich Mean Time) instead of in local (wall clock) time.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.SH EXAMPLES
+.PP
+To print the date of the day before yesterday
+.IP
+date \-\-date \'2 days ago\'
+.PP
+To print the date of the day three months and one day hence
+.IP
+date \-\-date \'3 months 1 day\'
+.PP
+To print the day of year of Christmas in the current year
+.IP
+date --date \'25 Dec\' +%j
+.PP
+To print the current date in a format including the full month name and
+the day of the month
+.IP
+date \'+%B %d\'
+.PP
+But this may not be what you want because for the first nine days
+of the month, the \`%d\' expands to a zero-padded two-digit field,
+for example \`date \-d 1-may \'+%B %d\'\' will print
+\`May 01\'.
+.PP
+To print the same date but without the leading zero for one-digit
+days of month, you can use the nonstandard \`\-\' modifier to suppress
+the padding altogether.
+.IP
+date \-d 1-may \'+%B %-d\'
diff --git a/install/binos2/makeos2/doc/dd.1 b/install/binos2/makeos2/doc/dd.1
new file mode 100644
index 00000000..a0f31505
--- /dev/null
+++ b/install/binos2/makeos2/doc/dd.1
@@ -0,0 +1,129 @@
+.TH DD 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+dd \- convert a file while copying it
+.SH SYNOPSIS
+.B dd
+[\-\-help] [\-\-version]
+[if=file] [of=file] [ibs=bytes] [obs=bytes] [bs=bytes] [cbs=bytes]
+[skip=blocks] [seek=blocks] [count=blocks]
+[conv={ascii,ebcdic,ibm,block,unblock,lcase,ucase,swab,noerror,notrunc,
+sync}]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR dd .
+.B dd
+copies a file (from the standard input to the standard output, by
+default) with a user-selectable blocksize, while optionally performing
+conversions on it.
+.SS OPTIONS
+Numbers can be followed by a multiplier:
+.br
+b=512, c=1, k=1024, w=2, xm=number m
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.TP
+.I if=file
+Read from
+.I file
+instead of the standard input.
+.TP
+.I of=file
+Write to
+.I file
+instead of the standard output.
+Unless
+.I conv=notrunc
+is given, truncate
+.I file
+to the size specified by
+.I seek=
+(0 bytes if
+.I seek=
+is not given).
+.TP
+.I ibs=bytes
+Read
+.I bytes
+bytes at a time.
+.TP
+.I obs=bytes
+Write
+.I bytes
+bytes at a time.
+.TP
+.I bs=bytes
+Read and write
+.I bytes
+bytes at atime. Override ibs and obs.
+.TP
+.I cbs=bytes
+Convert
+.I bytes
+bytes at a time.
+.TP
+.I skip=blocks
+Skip
+.I blocks
+ibs-sized blocks at start of input.
+.TP
+.I seek=blocks
+Skip
+.I blocks
+obs-sized blocks at start of output.
+.TP
+.I count=blocks
+Copy only
+.I blocks
+ibs-sized input blocks.
+.TP
+.I conv=conversion[,conversion...]
+Convert the file as specified by the
+.I conversion
+arguments.
+.RS
+Conversions:
+.TP
+ascii
+Convert EBCDIC to ASCII.
+.TP
+ebcdic
+Convert ASCII to EBCDIC.
+.TP
+ibm
+Convert ASCII to alternate EBCDIC.
+.TP
+block
+Pad newline-terminated records to size of cbs, replacing newline with
+trailing spaces.
+.TP
+unblock
+Replace trailing spaces in cbs-sized block with newline.
+.TP
+lcase
+Change uppercase characters to lowercase.
+.TP
+ucase
+Change lowercase characters to uppercase.
+.TP
+swab
+Swap every pair of input bytes. Unlike the Unix dd, this works when
+an odd number of bytes are read. If the input file contains an odd
+number of bytes, the last byte is simply copied (since there is
+nothing to swap it with).
+.TP
+noerror
+Continue after read errors.
+.TP
+notrunc
+Do not truncate the output file.
+.TP
+sync
+Pad every input block to size of ibs with trailing NULs.
diff --git a/install/binos2/makeos2/doc/df.1 b/install/binos2/makeos2/doc/df.1
new file mode 100644
index 00000000..4abdb46a
--- /dev/null
+++ b/install/binos2/makeos2/doc/df.1
@@ -0,0 +1,87 @@
+.TH DF 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+df \- summarize free disk space
+.SH SYNOPSIS
+.B df
+[\-aikPv] [\-t fstype] [\-x fstype] [\-\-all] [\-\-inodes]
+[\-\-type=fstype] [\-\-exclude\-type=fstype] [\-\-kilobytes]
+[\-\-portability] [\-\-print\-type] [\-\-help] [\-\-version] [filename...]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR df .
+.B df
+displays the amount of disk space available on the filesystem
+containing each file name argument. If no file name is given, the
+space available on all currently mounted filesystems is shown. Disk
+space is shown in 1K blocks by default, unless the environment
+variable POSIXLY_CORRECT is set, in which case 512-byte blocks are
+used.
+.PP
+If an argument is the absolute file name of a disk device node containing a
+mounted filesystem,
+.B df
+shows the space available on that filesystem rather than on the
+filesystem containing the device node (which is always the root
+filesystem). This version of
+.B df
+cannot show the space available on unmounted filesystems, because on
+most kinds of systems doing so requires very nonportable intimate
+knowledge of filesystem structures.
+.SS OPTIONS
+.TP
+.I "\-a, \-\-all"
+Include in the listing filesystems that have 0 blocks, which are
+omitted by default. Such filesystems are typically special-purpose
+pseudo-filesystems, such as automounter entries. On some systems,
+filesystems of type ``ignore'' or ``auto'' are also omitted by
+default and included in the listing by this option.
+.TP
+.I "\-i, \-\-inodes"
+List inode usage information instead of block usage. An inode (short
+for ``index node'') is a special kind of disk block that contains
+information about a file, such as its owner, permissions, timestamps,
+and location on the disk.
+.TP
+.I "\-k, \-\-kilobytes"
+Print sizes in 1K blocks instead of 512-byte blocks. This overrides
+the environment variable POSIXLY_CORRECT.
+.TP
+.I "\-P, \-\-portability"
+Use the POSIX output format. This is like the default format except
+that the information about each filesystem is always printed on
+exactly one line; a mount device is never put on a line by itself.
+This means that if the mount device name is more than 20 characters
+long (as for some network mounts), the columns are misaligned.
+.TP
+.I "\-T, \-\-print\-type"
+Print a type string for each filesystem. Any such printed filesystem
+type name may be used as an argument to either of the \-\-type= or
+\-\-exclude\-type= options.
+.TP
+.I "\-t, \-\-type=fstype"
+Limit the listing to filesystems of type
+.IR fstype .
+Multiple filesystem types can be shown by giving multiple
+.I \-t
+options. By default, all filesystem types are listed.
+.TP
+.I "\-x, \-\-exclude\-type=fstype"
+Limit the listing to filesystems not of type
+.IR fstype .
+Multiple filesystem types can be eliminated by giving multiple
+.I \-x
+options. By default, all filesystem types are listed.
+.TP
+.I \-v
+Ignored; for compatibility with System V versions of
+.BR df .
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/diff.1 b/install/binos2/makeos2/doc/diff.1
new file mode 100644
index 00000000..03fffedf
--- /dev/null
+++ b/install/binos2/makeos2/doc/diff.1
@@ -0,0 +1,225 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.27.
+.TH DIFF "1" "March 2002" "diffutils 2.8" "User Commands"
+.SH NAME
+diff \- compare files line by line
+.SH SYNOPSIS
+.B diff
+[\fIOPTION\fR]... \fIFILES\fR
+.SH DESCRIPTION
+Compare files line by line.
+.TP
+\fB\-i\fR \fB\-\-ignore\-case\fR
+Ignore case differences in file contents.
+.TP
+\fB\-\-ignore\-file\-name\-case\fR
+Ignore case when comparing file names.
+.TP
+\fB\-\-no\-ignore\-file\-name\-case\fR
+Consider case when comparing file names.
+.TP
+\fB\-E\fR \fB\-\-ignore\-tab\-expansion\fR
+Ignore changes due to tab expansion.
+.TP
+\fB\-b\fR \fB\-\-ignore\-space\-change\fR
+Ignore changes in the amount of white space.
+.TP
+\fB\-w\fR \fB\-\-ignore\-all\-space\fR
+Ignore all white space.
+.TP
+\fB\-B\fR \fB\-\-ignore\-blank\-lines\fR
+Ignore changes whose lines are all blank.
+.TP
+\fB\-I\fR RE \fB\-\-ignore\-matching\-lines\fR=\fIRE\fR
+Ignore changes whose lines all match RE.
+.TP
+\fB\-\-strip\-trailing\-cr\fR
+Strip trailing carriage return on input.
+.TP
+\fB\-a\fR \fB\-\-text\fR
+Treat all files as text.
+.TP
+\fB\-c\fR \fB\-C\fR NUM \fB\-\-context\fR[=\fINUM\fR]
+Output NUM (default 3) lines of copied context.
+.TP
+\fB\-u\fR \fB\-U\fR NUM \fB\-\-unified\fR[=\fINUM\fR]
+Output NUM (default 3) lines of unified context.
+.TP
+\fB\-\-label\fR LABEL
+Use LABEL instead of file name.
+.TP
+\fB\-p\fR \fB\-\-show\-c\-function\fR
+Show which C function each change is in.
+.TP
+\fB\-F\fR RE \fB\-\-show\-function\-line\fR=\fIRE\fR
+Show the most recent line matching RE.
+.TP
+\fB\-q\fR \fB\-\-brief\fR
+Output only whether files differ.
+.TP
+\fB\-e\fR \fB\-\-ed\fR
+Output an ed script.
+.TP
+\fB\-\-normal\fR
+Output a normal diff.
+.TP
+\fB\-n\fR \fB\-\-rcs\fR
+Output an RCS format diff.
+.TP
+\fB\-y\fR \fB\-\-side\-by\-side\fR
+Output in two columns.
+.TP
+\fB\-W\fR NUM \fB\-\-width\fR=\fINUM\fR
+Output at most NUM (default 130) print columns.
+.TP
+\fB\-\-left\-column\fR
+Output only the left column of common lines.
+.TP
+\fB\-\-suppress\-common\-lines\fR
+Do not output common lines.
+.TP
+\fB\-D\fR NAME \fB\-\-ifdef\fR=\fINAME\fR
+Output merged file to show `#ifdef NAME' diffs.
+.TP
+\fB\-\-GTYPE\-group\-format\fR=\fIGFMT\fR
+Similar, but format GTYPE input groups with GFMT.
+.TP
+\fB\-\-line\-format\fR=\fILFMT\fR
+Similar, but format all input lines with LFMT.
+.TP
+\fB\-\-LTYPE\-line\-format\fR=\fILFMT\fR
+Similar, but format LTYPE input lines with LFMT.
+.TP
+LTYPE is `old', `new', or `unchanged'.
+GTYPE is LTYPE or `changed'.
+.IP
+GFMT may contain:
+.TP
+%<
+lines from FILE1
+.TP
+%>
+lines from FILE2
+.TP
+%=
+lines common to FILE1 and FILE2
+.TP
+%[-][WIDTH][.[PREC]]{doxX}LETTER
+printf-style spec for LETTER
+.IP
+LETTERs are as follows for new group, lower case for old group:
+.TP
+F
+first line number
+.TP
+L
+last line number
+.TP
+N
+number of lines = L-F+1
+.TP
+E
+F-1
+.TP
+M
+L+1
+.IP
+LFMT may contain:
+.TP
+%L
+contents of line
+.TP
+%l
+contents of line, excluding any trailing newline
+.TP
+%[-][WIDTH][.[PREC]]{doxX}n
+printf-style spec for input line number
+.IP
+Either GFMT or LFMT may contain:
+.TP
+%%
+%
+.TP
+%c'C'
+the single character C
+.TP
+%c'\eOOO'
+the character with octal code OOO
+.TP
+\fB\-l\fR \fB\-\-paginate\fR
+Pass the output through `pr' to paginate it.
+.TP
+\fB\-t\fR \fB\-\-expand\-tabs\fR
+Expand tabs to spaces in output.
+.TP
+\fB\-T\fR \fB\-\-initial\-tab\fR
+Make tabs line up by prepending a tab.
+.TP
+\fB\-r\fR \fB\-\-recursive\fR
+Recursively compare any subdirectories found.
+.TP
+\fB\-N\fR \fB\-\-new\-file\fR
+Treat absent files as empty.
+.TP
+\fB\-\-unidirectional\-new\-file\fR
+Treat absent first files as empty.
+.TP
+\fB\-s\fR \fB\-\-report\-identical\-files\fR
+Report when two files are the same.
+.TP
+\fB\-x\fR PAT \fB\-\-exclude\fR=\fIPAT\fR
+Exclude files that match PAT.
+.TP
+\fB\-X\fR FILE \fB\-\-exclude\-from\fR=\fIFILE\fR
+Exclude files that match any pattern in FILE.
+.TP
+\fB\-S\fR FILE \fB\-\-starting\-file\fR=\fIFILE\fR
+Start with FILE when comparing directories.
+.TP
+\fB\-\-from\-file\fR=\fIFILE1\fR
+Compare FILE1 to all operands. FILE1 can be a directory.
+.TP
+\fB\-\-to\-file\fR=\fIFILE2\fR
+Compare all operands to FILE2. FILE2 can be a directory.
+.TP
+\fB\-\-horizon\-lines\fR=\fINUM\fR
+Keep NUM lines of the common prefix and suffix.
+.TP
+\fB\-d\fR \fB\-\-minimal\fR
+Try hard to find a smaller set of changes.
+.TP
+\fB\-\-speed\-large\-files\fR
+Assume large files and many scattered small changes.
+.TP
+\fB\-v\fR \fB\-\-version\fR
+Output version info.
+.TP
+\fB\-\-help\fR
+Output this help.
+.PP
+FILES are `FILE1 FILE2' or `DIR1 DIR2' or `DIR FILE...' or `FILE... DIR'.
+If \fB\-\-from\-file\fR or \fB\-\-to\-file\fR is given, there are no restrictions on FILES.
+If a FILE is `-', read standard input.
+.SH AUTHOR
+Written by Paul Eggert, Mike Haertel, David Hayes,
+Richard Stallman, and Len Tower.
+.SH "REPORTING BUGS"
+Report bugs to .
+.SH COPYRIGHT
+Copyright \(co 2002 Free Software Foundation, Inc.
+.PP
+This program comes with NO WARRANTY, to the extent permitted by law.
+You may redistribute copies of this program
+under the terms of the GNU General Public License.
+For more information about these matters, see the file named COPYING.
+.SH "SEE ALSO"
+The full documentation for
+.B diff
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B diff
+programs are properly installed at your site, the command
+.IP
+.B info diff
+.PP
+should give you access to the complete manual.
diff --git a/install/binos2/makeos2/doc/du.1 b/install/binos2/makeos2/doc/du.1
new file mode 100644
index 00000000..d7f092d8
--- /dev/null
+++ b/install/binos2/makeos2/doc/du.1
@@ -0,0 +1,77 @@
+.TH DU 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+du \- summarize disk usage
+.SH SYNOPSIS
+.B du
+[\-abcklsxDLS] [\-\-all] [\-\-total] [\-\-count-links] [\-\-summarize]
+[\-\-bytes] [\-\-kilobytes] [\-\-one-file-system] [\-\-separate-dirs]
+[\-\-dereference] [\-\-dereference-args] [\-\-help] [\-\-version] [filename...]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR du .
+.B du
+displays the amount of disk space used by each argument and for each
+subdirectory of directory arguments. The space is measured in 1K
+blocks by default, unless the environment variable POSIXLY_CORRECT is
+set, in which case 512-byte blocks are used.
+.SS OPTIONS
+.TP
+.I "\-a, \-\-all"
+Display counts for all files, not just directories.
+.TP
+.I "\-b, \-\-bytes"
+Print sizes in bytes.
+.TP
+.I "\-c, \-\-total"
+Write a grand total of all of the arguments after all
+arguments have been processed. This can be used to find
+out the disk usage of a directory, with some files excluded.
+.TP
+.I "\-k, \-\-kilobytes"
+Print sizes in kilobytes. This overrides the environment variable
+POSIXLY_CORRECT.
+.TP
+.I "\-l, \-\-count-links"
+Count the size of all files, even if they have appeared already in
+another hard link.
+.TP
+.I "\-s, \-\-summarize"
+Display only a total for each argument.
+.TP
+.I "\-x, \-\-one-file-system"
+Skip directories that are on different filesystems from the one that
+the argument being processed is on.
+.TP
+.I "\-D, \-\-dereference-args"
+Dereference symbolic links that are command line arguments. Does not
+affect other symbolic links. This is helpful for finding out the disk
+usage of directories like /usr/tmp where they are symbolic links.
+.TP
+.I "\-L, \-\-dereference"
+Dereference symbolic links (show the disk space used by the file or
+directory that the link points to instead of the space used by the
+link).
+.TP
+.I "\-S, \-\-separate-dirs"
+Count the size of each directory separately, not including the sizes
+of subdirectories.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.SH BUGS
+On BSD systems,
+.B du
+reports sizes that are half the correct values for files that are
+NFS-mounted from HP-UX systems. On HP-UX systems, it reports sizes
+that are twice the correct values for files that are NFS-mounted from
+BSD systems. This is due to a flaw in HP-UX; it also affects the
+HP-UX
+.B du
+program.
diff --git a/install/binos2/makeos2/doc/gnufutil.os2 b/install/binos2/makeos2/doc/gnufutil.os2
new file mode 100644
index 00000000..8057b497
--- /dev/null
+++ b/install/binos2/makeos2/doc/gnufutil.os2
@@ -0,0 +1,117 @@
+This copy of the GNU file utilities for OS/2 has been compiled for OS/2
+using the emx 0.9b development tools.
+
+An up to date copy should always be available as
+
+ ftp://ftp.leo.org/pub/comp/os/os2/gnu/systools/gnufutil.zip
+
+The programs were tested under OS/2 2.x with a HPFS, they support long
+filenames and extended attibutes (only cp, mv and install need to
+support EA's and thus do it, the other programs don't). The upper/lower
+case conversion in dd works correctly with national language characters.
+8-bit (such as NLS-) characters are displayed directly by ls, only
+nonprintable characters are replaced by ? or \-Sequences as usual.
+Support for \ and / as path separators was added where neccessary, i.e.
+in ls, cp, mv, rm, install, mkdir and rmdir. In dd there is support to
+access logical and physical drives by their drive name.
+
+a) The following programs of the GNU file utilities were ported to OS/2:
+
+chmod supports DOS & OS/2 archive/hidden/system flags (partial,
+ flags can be changed, but changes are not reported by -v)
+cp supports EA's
+dd NLS support for conv=ucase/lcase, direct drive access support
+df shows type instead of inode information
+du
+install supports EA's
+ls/dir/vdir shows DOS & OS/2 archive/hidden/system flags and 8-bit chars
+mkdir
+mv supports EA's
+rm
+rmdir
+touch
+dircolors
+
+b) programs not ported:
+
+- chown, chgrp, ln, mkfifo and sync make no much sense under OS/2
+- mvdir is not needed, OS/2 has a rename() that can handle directories,
+ so mv already works for this purpose
+
+This version supports internationalization. To use it, set the
+LANGUAGE environment variable (for german messages, set it to "de").
+
+For that to work, you must set the LOCALEDIR environment variable to
+point to the base locale directory (default is /lib/locale). Into this
+directory, you must copy po/de.gmo (german message catalog, for
+example) from the distribution as de/LC_MESSAGES/@@@.mo and so
+on for other languages.
+
+Kai Uwe Rommel
+
+--
+/* Kai Uwe Rommel ARS Computer & Consulting GmbH, Muenchen, Germany *
+ * rommel@ars.de CompuServe 100265,2651, Fax +49 89 324 4524 *
+ * rommel@leo.org (ftp://ftp.leo.org/pub/comp/os/os2 maintenance) */
+
+DOS ... is still a real mode only non-reentrant interrupt
+handler, and always will be. -Russell Williams
+
+
+Version 2.1
+Thu 01-Aug-1991
+
+Adapted for version 3.1
+Sun 15-Sep-1991
+
+Adapted for version 3.2 (Actually ported over again from plain
+sources because the old 16-bit port was screwed up too much.)
+now using emx/gcc (32-bit) under OS/2 2.0
+Sun 28-Jun-1992
+
+Bug fixes and enhancements.
+Wed 22-Jul-1992
+
+Adapted for version 3.3
+Wed 29-Jul-1992
+
+Changes for emx 0.8e, DLL version
+Thu 15-Oct-1992
+
+Version 3.4
+Sat 31-Oct-1992
+
+Version 3.6
+Sun 23-May-1993
+
+Bugfixes by Ric Andersson (traps in rm on many files with short names)
+and myself (rm -f warning on nonexisting *.o etc.)
+Sat 21-Aug-1993
+
+Version 3.12
+emx 0.9a
+Fri 16-Dec-1994
+
+Bugfix for direct disk access
+In dd, valid names are now A:, B:, C: ... for logical drives and
+$1:, $2: ... for physical fixed disks (be extremely careful!).
+Thu 16-Mar-1995
+
+Bugfix for "cp foo ." and "mv foo ." problems.
+Thu 30-Mar-1995
+
+Bugfix for "cp foo x:\" and "mv foo x:\" problems
+Sun 09-Apr-1995
+
+Bugfix for "mkdir -p" with path names with drive specification
+emx 0.9b
+Sat 20-Apr-1996
+
+Version 3.13
+Fri 02-Aug-1996
+
+Bugfix for touch and text mode error
+Bugfix for df on >4GB volumes
+Fixed ls mode flags output format
+Tue 31-Mar-1998
+
diff --git a/install/binos2/makeos2/doc/gnusutil.os2 b/install/binos2/makeos2/doc/gnusutil.os2
new file mode 100644
index 00000000..0b43a5e6
--- /dev/null
+++ b/install/binos2/makeos2/doc/gnusutil.os2
@@ -0,0 +1,60 @@
+GNU shell utilities for OS/2
+
+The programs were tested under OS/2 with HPFS, they support long
+filenames. They are mostly really simple under OS/2 (id, logname etc.)
+and perhaps most useful together with some shell under OS/2 to run
+real unmodified shell scripts.
+
+The following programs of the GNU shell utilities were ported to OS/2:
+
+basename
+date
+dirname
+env
+expr
+false
+id
+logname
+nice
+pathchk
+printenv
+printf
+sleep
+tee
+test
+true
+tty
+uname
+whoami
+yes
+
+And not ported:
+
+su
+who/users
+stty
+groups.sh (well, could be used, but why?)
+nohup.sh
+
+
+Kai Uwe Rommel
+rommel@ars.muc.de
+
+Version 1.3, MS C 6.00, OS/2 1.3
+Tue 29-Oct-1991
+
+Version 1.6, emx+gcc, OS/2 2.0
+Fri 21-Aug-1992
+
+Version 1.7, emx+gcc, OS/2 2.0
+Sun 20-Aug-1992
+Sat 12-Sep-1992, 0.8e, DLL version
+
+Version 1.8,
+Sat 31-Oct-1992
+
+Version 1.10,
+Mon 23-May-1994
+
+Vesion 1.12, emx 0.9a,
+Fri 16-Dec-1994
diff --git a/install/binos2/makeos2/doc/install.1 b/install/binos2/makeos2/doc/install.1
new file mode 100644
index 00000000..e2e05a84
--- /dev/null
+++ b/install/binos2/makeos2/doc/install.1
@@ -0,0 +1,78 @@
+.TH INSTALL 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+install \- copy files and set their attributes
+.SH SYNOPSIS
+.B install
+[options] [\-s] [\-\-strip] source dest
+.br
+.B install
+[options] [\-s] [\-\-strip] source... directory
+.br
+.B install
+[options] [\-d,\-\-directory] directory...
+.br
+Options:
+.br
+[\-c] [\-g group] [\-m mode] [\-o owner]
+[\-\-group=group] [\-\-mode=mode] [\-\-owner=owner]
+[\-\-help] [\-\-version]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR install .
+.B install
+copies files and sets their permission modes and, if possible,
+their owner and group. Used similarly to
+.BR cp ;
+typically used in Makefiles to copy programs into their destination
+directories. It can also be used to create the destination
+directories and any leading directories, and to set the final
+directory's modes. It refuses to copy files onto themselves.
+.SS OPTIONS
+.TP
+.I \-c
+Ignored; for compatibility with old Unix versions of install.
+.TP
+.I "\-d, \-\-directory"
+Create each given directory and its leading directories, if they do
+not already exist. Set the owner, group and mode as given on the
+command line or to the defaults. Also gives any leading directories
+that are created those attributes. This is different from the SunOS
+4.x
+.IR install ,
+which gives directories that it creates the default attributes.
+.TP
+.I "\-g, \-\-group group"
+Set the group ownership of the installed file or directory to the
+group ID of
+.I group
+(default is process's current group).
+.I group
+may also be a numeric group ID.
+.TP
+.I "\-m, \-\-mode mode"
+Set the permission mode for the installed file or directory to
+.IR mode ,
+which can be either an octal number, or a symbolic mode as in chmod,
+with 0 as the point of departure.
+The default mode is 0755.
+.TP
+.I "\-o, \-\-owner owner"
+If run as root, set the ownership of the installed file to the user ID
+of
+.I owner
+(default is root).
+.I owner
+may also be a numeric user ID.
+.TP
+.I "\-s, \-\-strip"
+Strip the symbol tables from installed programs.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/ls.1 b/install/binos2/makeos2/doc/ls.1
new file mode 100644
index 00000000..5b67f806
--- /dev/null
+++ b/install/binos2/makeos2/doc/ls.1
@@ -0,0 +1,350 @@
+.TH LS 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+ls, dir, vdir \- list contents of directories
+.SH SYNOPSIS
+.B ls
+[\-abcdfgiklmnpqrstuxABCFGLNQRSUX1] [\-w cols] [\-T cols] [\-I pattern]
+[\-\-all] [\-\-escape] [\-\-directory] [\-\-inode] [\-\-kilobytes]
+[\-\-numeric-uid-gid] [--no-group] [\-\-hide-control-chars] [\-\-reverse]
+[\-\-size] [\-\-width=cols] [\-\-tabsize=cols] [\-\-almost-all]
+[\-\-ignore-backups] [\-\-classify] [\-\-file-type] [\-\-full-time]
+[\-\-ignore=pattern] [\-\-dereference] [\-\-literal] [\-\-quote-name]
+[\-\-recursive] [\-\-sort={none,time,size,extension}]
+[\-\-format={long,verbose,commas,across,vertical,single-column}]
+[\-\-time={atime,access,use,ctime,status}] [\-\-help] [\-\-version]
+[\-\-color[={yes,no,tty}]] [\-\-colour[={yes,no,tty}]] [name...]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR ls .
+.B dir
+and
+.B vdir
+are versions of
+.B ls
+with different default output formats.
+These programs list each given file or directory name. Directory contents are
+sorted alphabetically. For
+.BR ls ,
+files are by default listed in columns, sorted
+vertically, if the standard output is a terminal; otherwise they are
+listed one per line. For
+.BR dir ,
+files are by default listed in columns, sorted vertically. For
+.BR vdir ,
+files are by default listed in long format.
+.SS OPTIONS
+.TP
+.I "\-a, \-\-all"
+List all files in directories, including all files that start with `.'.
+.TP
+.I "\-b, \-\-escape"
+Quote nongraphic characters in file names using alphabetic and octal
+backslash sequences like those used in C.
+.TP
+.I "\-c, \-\-time=ctime, \-\-time=status"
+Sort directory contents according to the files' status change time
+instead of the modification time. If the long listing format is being
+used, print the status change time instead of the modification time.
+.TP
+.I "\-d, \-\-directory"
+List directories like other files, rather than listing their contents.
+.TP
+.I "\-f"
+Do not sort directory contents; list them in whatever order they are
+stored on the disk.
+The same as enabling
+.I \-a
+and
+.I \-U
+and disabling
+.I \-l,
+.I \-s,
+and
+.I \-t.
+.TP
+.I "\-\-full-time"
+List times in full, rather than using the standard abbreviation
+heuristics.
+.TP
+.I \-g
+Ignored; for Unix compatibility.
+.TP
+.I "\-i, \-\-inode"
+Print the index number of each file to the left of the file name.
+.TP
+.I "\-k, \-\-kilobytes"
+If file sizes are being listed, print them in kilobytes. This
+overrides the environment variable POSIXLY_CORRECT.
+.TP
+.I "\-l, \-\-format=long, \-\-format=verbose"
+In addition to the name of each file, print the file type,
+permissions, number of hard links, owner name, group name, size in
+bytes, and timestamp (the modification time unless other times are
+selected). For files with a time that is more than 6 months old or
+more than 1 hour into the future, the timestamp contains the year
+instead of the time of day.
+.TP
+.I "\-m, \-\-format=commas"
+List files horizontally, with as many as will fit on each line,
+separated by commas.
+.TP
+.I "\-n, \-\-numeric-uid-gid"
+List the numeric UID and GID instead of the names.
+.TP
+.I \-p
+Append a character to each file name indicating the file type.
+.TP
+.I "\-q, \-\-hide-control-chars"
+Print question marks instead of nongraphic characters in file names.
+.TP
+.I "\-r, \-\-reverse"
+Sort directory contents in reverse order.
+.TP
+.I "\-s, \-\-size"
+Print the size of each file in 1K blocks to the left of the file name.
+If the environment variable POSIXLY_CORRECT is set, 512-byte blocks
+are used instead.
+.TP
+.I "\-t, \-\-sort=time"
+Sort directory contents by timestamp instead of alphabetically, with
+the newest files listed first.
+.TP
+.I "\-u, \-\-time=atime, \-\-time=access, \-\-time=use"
+Sort directory contents according to the files' last access time
+instead of the modification time. If the long listing format is being
+used, print the last access time instead of the modification time.
+.TP
+.I "\-x, \-\-format=across, \-\-format=horizontal"
+List the files in columns, sorted horizontally.
+.TP
+.I "\-A, \-\-almost-all"
+List all files in directories, except for `.' and `..'.
+.TP
+.I "\-B, \-\-ignore-backups"
+Do not list files that end with `~', unless they are given on the
+command line.
+.TP
+.I "\-C, \-\-format=vertical"
+List files in columns, sorted vertically.
+.TP
+.I "\-F, \-\-classify"
+Append a character to each file name indicating the file type. For
+regular files that are executable, append a `*'. The file type
+indicators are `/' for directories, `@' for symbolic links, `|' for
+FIFOs, `=' for sockets, and nothing for regular files.
+.TP
+.I "\-G, \-\-no\-group"
+Inhibit display of group information in a long format directory listing.
+.TP
+.I "\-L, \-\-dereference"
+List the files linked to by symbolic links instead of listing the
+contents of the links.
+.TP
+.I "\-N, \-\-literal"
+Do not quote file names.
+.TP
+.I "\-Q, \-\-quote-name"
+Enclose file names in double quotes and quote nongraphic characters as
+in C.
+.TP
+.I "\-R, \-\-recursive"
+List the contents of all directories recursively.
+.TP
+.I "\-S, \-\-sort=size"
+Sort directory contents by file size instead of alphabetically, with
+the largest files listed first.
+.TP
+.I "\-U, \-\-sort=none"
+Do not sort directory contents; list them in whatever order they are
+stored on the disk. This option is not called
+.I \-f
+because the Unix
+.B ls
+.I \-f
+option also enables
+.I \-a
+and disables
+.IR \-l ,
+.IR \-s ,
+and
+.IR \-t .
+It seems useless and ugly to group those unrelated things together in
+one option. Since this option doesn't do that, it has a different
+name.
+.TP
+.I "\-X, \-\-sort=extension"
+Sort directory contents alphabetically by file extension (characters
+after the last `.'); files with no extension are sorted first.
+.TP
+.I "\-1, \-\-format=single-column"
+List one file per line.
+.TP
+.I "\-w, \-\-width cols"
+Assume the screen is
+.I cols
+columns wide. The default is taken from the terminal driver if
+possible; otherwise the environment variable
+.B COLUMNS
+is used if it is set; otherwise the default is 80.
+.TP
+.I "\-T, \-\-tabsize cols"
+Assume that each tabstop is
+.I cols
+columns wide. The default is 8.
+.TP
+.I "\-I, \-\-ignore pattern"
+Do not list files whose names match the shell pattern
+.I pattern
+unless they are given on the command line. As in the shell, an
+initial `.' in a filename does not match a wildcard at the start of
+.I pattern.
+.TP
+.I "\-\-color, \-\-colour, \-\-color=yes, \-\-colour=yes"
+Colorize the names of files depending on the type of file.
+See
+.B DISPLAY COLORIZATION
+below.
+.TP
+.I "\-\-color=tty, \-\-colour=tty"
+Same as
+.I \-\-color
+but only if standard output is a terminal. This is very useful for
+shell scripts and command aliases, especially if your favorite pager
+does not support color control codes.
+.TP
+.I "\-\-color=no, \-\-colour=no"
+Disables colorization. This is the default. Provided to override a
+previous color option.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.SS DISPLAY COLORIZATION
+When using the
+.I "\-\-color"
+option, this version of
+.B ls
+will colorize the file names printed according to the name and type of
+file. By default, this colorization is by type only, and the codes
+used are ISO 6429 (ANSI) compliant.
+.PP
+You can override the default colors by defining the environment
+variable
+.B LS_COLORS
+(or
+.BR LS_COLOURS ).
+The format of this variable is reminicent of the termcap(5) file
+format; a colon-separated list of expressions of the form "xx=string",
+where "xx" is a two-character variable name. The variables with their
+associated defaults are:
+.sp
+.RS +.2i
+.ta 1.0i 2.5i
+.nf
+\fBno\fR 0 Normal (non-filename) text
+\fBfi\fR 0 Regular file
+\fBdi\fR 32 Directory
+\fBln\fR 36 Symbolic link
+\fBpi\fR 31 Named pipe (FIFO)
+\fBso\fR 33 Socket
+\fBbd\fR 44;37 Block device
+\fBcd\fR 44;37 Character device
+\fBex\fR 35 Executable file
+\fBmi\fR (none) Missing file (defaults to fi)
+\fBor\fR (none) Orphanned symbolic link (defaults to ln)
+\fBlc\fR \ee[ Left code
+\fBrc\fR m Right code
+\fBec\fR (none) End code (replaces lc+no+rc)
+.fi
+.RE
+.sp
+You only need to include the variables you want to change from the
+default.
+.PP
+File names can also be colorized based on filename extension. This is
+specified in the LS_COLORS variable using the syntax "*ext=string".
+For example, using ISO 6429 codes, to color all C-language source
+files blue you would specify "*.c=34". This would color all files
+ending in .c in blue (34) color.
+.PP
+Control characters can be written either in C-style \e-escaped
+notation, or in
+.BR stty -like
+^-notation. The C-style notation adds \ee for Escape, \e_ for a
+normal space characer, and \e? for Delete. In addition, the \e escape
+character can be used to override the default interpretation of \e, ^,
+: and =.
+.PP
+Each file will be written as .
+If the code is undefined, the sequence will be
+used instead. This is generally more convenient to use, but less
+general. The left, right and end codes are provided so you don't have
+to type common parts over and over again and to support weird
+terminals; you will generally not need to change them at all unless
+your terminal does not use ISO 6429 color sequences but a different
+system.
+.PP
+If your terminal does use ISO 6429 color codes, you can compose the type
+codes (i.e. all except the
+.BR lc ,
+.BR rc ,
+and
+.B ec
+codes) from numerical commands separated by semicolons. The most
+common commands are:
+.sp
+.RS +.2i
+.ta 1.0i
+.nf
+ 0 to restore default color
+ 1 for brighter colors
+ 4 for underlined text
+ 5 for flashing text
+30 for black foreground
+31 for red foreground
+32 for green foreground
+33 for yellow (or brown) foreground
+34 for blue foreground
+35 for purple foreground
+36 for cyan foreground
+37 for white (or gray) foreground
+40 for black background
+41 for red background
+42 for green background
+43 for yellow (or brown) background
+44 for blue background
+45 for purple background
+46 for cyan background
+47 for white (or gray) background
+.fi
+.RE
+.sp
+Not all commands will work on all systems or display devices.
+.PP
+A few terminal programs do not recognize the default end code
+properly. If all text gets colorized after you do a directory
+listing, try changing the
+.B no
+and
+.B fi
+codes from 0 to the numerical codes for your standard fore- and
+background colors.
+.SH BUGS
+On BSD systems, the
+.I \-s
+option reports sizes that are half the correct values for files that
+are NFS-mounted from HP-UX systems. On HP-UX systems, it reports
+sizes that are twice the correct values for files that are NFS-mounted
+from BSD systems. This is due to a flaw in HP-UX; it also affects the
+HP-UX
+.B ls
+program.
+.PP
+If there was a single standard for the English language it would not
+be necessary to support redundant spellings.
diff --git a/install/binos2/makeos2/doc/make.emx b/install/binos2/makeos2/doc/make.emx
new file mode 100644
index 00000000..6f45d236
--- /dev/null
+++ b/install/binos2/makeos2/doc/make.emx
@@ -0,0 +1,91 @@
+This is the EMX OS/2 port of GNU make. It was initially done by
+Kent Williams . It has later been taken
+over by Kai Uwe Rommel . It can be used with EMX
+for OS/2 and Win32 (RSX).
+
+The Win32 flavor of this EMX port does not rely on the native Win32
+patches that were integrated by Cygnus. They do also support a Win32
+version, but that port seems to be very incomplete, according to their
+own docs.
+
+This version of GNU make supports embedded REXX commands under OS/2.
+Similar like Unix users can embed shell commands into command lists of
+rules, OS/2 users can use REXX for this purpose. The major difference
+is that the Unix version executes an external shell with the shell
+commands passed as arguments while the OS/2 version executes REXX
+commands internally, by passing them directly to the resident OS/2
+REXX interpreter, without need for subprocesses. This should thus be
+faster.
+
+Compared to REXX commands written as external .CMD procedures, the
+following restrictions apply, however:
+
+- any REXX command in a rule's command list must be prefixed by the
+ keyword "rexx"
+- all REXX commands can be only one line long, similarly to the
+ restrictions for shell commands in Makefiles under Unix, but:
+- similar like the Unix implementation does with embedded shell
+ commands, GNU make allows you to let a REXX command (script) span
+ multiple lines if you use the backslash as "continuation" character
+ at the end of each line and also use the semicolon to end each REXX
+ command line, since they will be concatenated into one single line
+- GNU make uses quoting characters (\, " and ') internally, so if you
+ need to use them in REXX commands, you have to quote them properly,
+ just like you have to if you embed shell commands in Unix Makefiles
+- a REXX command script may end with a "return" or "exit" statement
+ with a numeric parameter which is interpreted by make like the exit
+ code of an external command, if no such statement is used, the exit
+ code is assumed to be zero (i.e. no error)
+- this is a quick hack and may have bugs, let me know if you find any
+
+Example:
+
+test:
+ rexx do i=1 to 10; say i; end; return 0
+
+which could also be written as
+
+test:
+ rexx \
+ do i=1 to 10; \
+ say i; \
+ end; \
+ return 0
+
+If a REXX script parses "source", then the third parameter will
+contain the word "MAKE" instead of the .CMD file's pathname that
+external REXX procedures get in this place.
+
+History:
+93/08/08: update to 3.68, fixed handling of " and ' quotes.
+93/11/23: preliminary update to 3.69, none of the pending fixes done yet.
+94/02/18: cleanup of quoting and shell problems, update to version 3.70
+94/03/14: fixes for still outstanding and newly introduced bugs
+94/04/24: fix for drive letters in targets and backslashes in command
+ lines, should run under DOS too now
+94/06/07: update to 3.71, fix for bug with trailing backslashes
+94/08/03: fixes for /c and for drive letters
+94/12/13: update for 3.72
+95/04/20: update for 3.73, needed major changes in job.c
+95/04/24: fix for ` characters in command lines
+95/06/12: update for 3.74
+96/05/19: fixes for crashes, case insensitivity, tab/spaces, added REXX support
+96/06/16: fixes for quoting bug and rexx incompatibility with other shells,
+ removed tab/spaces fix because it causes other problems
+96/09/15: update for 3.75
+96/09/21: fixed VPATH handling (for \ instead of /)
+96/10/20: added fix or hanging on Ctrl-C, by Eberhard Mattes
+96/12/28: fixed endless recursion for some kinds of quoting,
+ added Win32 support
+97/04/01: fixed VPATH separator bug
+98/04/20: update for 3.76.1 (with help from Sharon Dagan, )
+98/04/24: fixed various bugs (perhaps)
+ added PATH_SEPARATOR_CHAR environment variable for VPATH override
+
+--
+/* Kai Uwe Rommel ARS Computer & Consulting GmbH *
+ * rommel@ars.de (http://www.ars.de) Muenchen, Germany *
+ * rommel@leo.org (http://www.leo.org/pub/comp/os/os2 maintenance) */
+
+DOS ... is still a real mode only non-reentrant interrupt
+handler, and always will be. -Russell Williams
diff --git a/install/binos2/makeos2/doc/make.man b/install/binos2/makeos2/doc/make.man
new file mode 100644
index 00000000..1bd37a7e
--- /dev/null
+++ b/install/binos2/makeos2/doc/make.man
@@ -0,0 +1,302 @@
+.TH MAKE 1L "22 August 1989" "GNU" "LOCAL USER COMMANDS"
+.SH NAME
+make \- GNU make utility to maintain groups of programs
+.SH SYNOPSIS
+.B "make "
+[
+.B \-f
+makefile ] [ option ] ...
+target ...
+.SH WARNING
+This man page is an extract of the documentation of
+.I GNU make .
+It is updated only occasionally, because the GNU project does not use nroff.
+For complete, current documentation, refer to the Info file
+.B make
+or the DVI file
+.B make.dvi
+which are made from the Texinfo source file
+.BR make.texinfo .
+.SH DESCRIPTION
+.LP
+The purpose of the
+.I make
+utility is to determine automatically which
+pieces of a large program need to be recompiled, and issue the commands to
+recompile them.
+This manual describes the GNU implementation of
+.IR make ,
+which was written by Richard Stallman and Roland McGrath.
+Our examples show C programs, since they are most common, but you can use
+.I make
+with any programming language whose compiler can be run with a
+shell command.
+In fact,
+.I make
+is not limited to programs.
+You can use it to describe any task where some files must be
+updated automatically from others whenever the others change.
+.LP
+To prepare to use
+.IR make ,
+you must write a file called the
+.I makefile
+that describes the relationships among files in your program, and the
+states the commands for updating each file.
+In a program, typically the executable file is updated from object
+files, which are in turn made by compiling source files.
+.LP
+Once a suitable makefile exists, each time you change some source files,
+this simple shell command:
+.sp 1
+.RS
+.B make
+.RE
+.sp 1
+suffices to perform all necessary recompilations.
+The
+.I make
+program uses the makefile data base and the last-modification times
+of the files to decide which of the files need to be updated.
+For each of those files, it issues the commands recorded in the data base.
+.LP
+.I make
+executes commands in the
+.I makefile
+to update
+one or more target
+.IR names ,
+where
+.I name
+is typically a program.
+If no
+.B \-f
+option is present,
+.I make
+will look for the makefiles
+.IR GNUmakefile ,
+.IR makefile ,
+and
+.IR Makefile ,
+in that order.
+.LP
+Normally you should call your makefile either
+.I makefile
+or
+.IR Makefile .
+(We recommend
+.I Makefile
+because it appears prominently near the beginning of a directory
+listing, right near other important files such as
+.IR README .)
+The first name checked,
+.IR GNUmakefile ,
+is not recommended for most makefiles.
+You should use this name if you have a makefile that is specific to GNU
+.IR make ,
+and will not be understood by other versions of
+.IR make .
+If
+.I makefile
+is `\-', the standard input is read.
+.LP
+.I make
+updates a target if it depends on prerequisite files
+that have been modified since the target was last modified,
+or if the target does not exist.
+.SH OPTIONS
+.sp 1
+.TP 0.5i
+.B \-b
+.TP 0.5i
+.B \-m
+These options are ignored for compatibility with other versions of
+.IR make .
+.TP 0.5i
+.BI "\-C " dir
+Change to directory
+.I dir
+before reading the makefiles or doing anything else.
+If multiple
+.B \-C
+options are specified, each is interpreted relative to the
+previous one:
+.BR "\-C " /
+.BR "\-C " etc
+is equivalent to
+.BR "\-C " /etc.
+This is typically used with recursive invocations of
+.IR make .
+.TP 0.5i
+.B \-d
+Print debugging information in addition to normal processing.
+The debugging information says which files are being considered for
+remaking, which file-times are being compared and with what results,
+which files actually need to be remade, which implicit rules are
+considered and which are applied---everything interesting about how
+.I make
+decides what to do.
+.TP 0.5i
+.B \-e
+Give variables taken from the environment precedence
+over variables from makefiles.
+.TP 0.5i
+.BI "\-f " file
+Use
+.I file
+as a makefile.
+.TP 0.5i
+.B \-i
+Ignore all errors in commands executed to remake files.
+.TP 0.5i
+.BI "\-I " dir
+Specifies a directory
+.I dir
+to search for included makefiles.
+If several
+.B \-I
+options are used to specify several directories, the directories are
+searched in the order specified.
+Unlike the arguments to other flags of
+.IR make ,
+directories given with
+.B \-I
+flags may come directly after the flag:
+.BI \-I dir
+is allowed, as well as
+.BI "\-I " dir.
+This syntax is allowed for compatibility with the C
+preprocessor's
+.B \-I
+flag.
+.TP 0.5i
+.BI "\-j " jobs
+Specifies the number of jobs (commands) to run simultaneously.
+If there is more than one
+.B \-j
+option, the last one is effective.
+If the
+.B \-j
+option is given without an argument,
+.IR make
+will not limit the number of jobs that can run simultaneously.
+.TP 0.5i
+.B \-k
+Continue as much as possible after an error.
+While the target that failed, and those that depend on it, cannot
+be remade, the other dependencies of these targets can be processed
+all the same.
+.TP 0.5i
+.B \-l
+.TP 0.5i
+.BI "\-l " load
+Specifies that no new jobs (commands) should be started if there are
+others jobs running and the load average is at least
+.I load
+(a floating-point number).
+With no argument, removes a previous load limit.
+.TP 0.5i
+.B \-n
+Print the commands that would be executed, but do not execute them.
+.TP 0.5i
+.BI "\-o " file
+Do not remake the file
+.I file
+even if it is older than its dependencies, and do not remake anything
+on account of changes in
+.IR file .
+Essentially the file is treated as very old and its rules are ignored.
+.TP 0.5i
+.B \-p
+Print the data base (rules and variable values) that results from
+reading the makefiles; then execute as usual or as otherwise
+specified.
+This also prints the version information given by the
+.B \-v
+switch (see below).
+To print the data base without trying to remake any files, use
+.B make
+.B \-p
+.BI \-f /dev/null.
+.TP 0.5i
+.B \-q
+``Question mode''.
+Do not run any commands, or print anything; just return an exit status
+that is zero if the specified targets are already up to date, nonzero
+otherwise.
+.TP 0.5i
+.B \-r
+Eliminate use of the built-in implicit rules.
+Also clear out the default list of suffixes for suffix rules.
+.TP 0.5i
+.B \-s
+Silent operation; do not print the commands as they are executed.
+.TP 0.5i
+.B \-S
+Cancel the effect of the
+.B \-k
+option.
+This is never necessary except in a recursive
+.I make
+where
+.B \-k
+might be inherited from the top-level
+.I make
+via MAKEFLAGS or if you set
+.B \-k
+in MAKEFLAGS in your environment.
+.TP 0.5i
+.B \-t
+Touch files (mark them up to date without really changing them)
+instead of running their commands.
+This is used to pretend that the commands were done, in order to fool
+future invocations of
+.IR make .
+.TP 0.5i
+.B \-v
+Print the version of the
+.I make
+program plus a copyright, a list of authors and a notice that there
+is no warranty.
+After this information is printed, processing continues normally.
+To get this information without doing anything else, use
+.B make
+.B \-v
+.BI \-f /dev/null.
+.TP 0.5i
+.B \-w
+Print a message containing the working directory
+before and after other processing.
+This may be useful for tracking down errors from complicated nests of
+recursive
+.I make
+commands.
+.TP 0.5i
+.BI "\-W " file
+Pretend that the target
+.I file
+has just been modified.
+When used with the
+.B \-n
+flag, this shows you what would happen if you were to modify that file.
+Without
+.BR \-n ,
+it is almost the same as running a
+.I touch
+command on the given file before running
+.IR make ,
+except that the modification time is changed only in the imagination of
+.IR make .
+.SH "SEE ALSO"
+.PD 0
+.TP 2.0i
+/usr/local/doc/gnumake.dvi
+.I
+The GNU Make Manual
+.PD
+.SH BUGS
+See the chapter `Problems and Bugs' in
+.I "The GNU Make Manual" .
+.SH AUTHOR
+This manual page contributed by Dennis Morse of Stanford University.
+It has been reworked by Roland McGrath.
diff --git a/install/binos2/makeos2/doc/mkdir.1 b/install/binos2/makeos2/doc/mkdir.1
new file mode 100644
index 00000000..67f62784
--- /dev/null
+++ b/install/binos2/makeos2/doc/mkdir.1
@@ -0,0 +1,35 @@
+.TH MKDIR 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+mkdir \- make directories
+.SH SYNOPSIS
+.B mkdir
+[\-p] [\-m mode] [\-\-parents] [\-\-mode=mode] [\-\-help] [\-\-version] dir...
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR mkdir .
+.B mkdir
+creates a directory with each given name. By default, the mode of
+created directories is 0777 minus the bits set in the umask.
+.SS OPTIONS
+.TP
+.I "\-m, \-\-mode mode"
+Set the mode of created directories to
+.IR mode ,
+which is symbolic as in chmod and uses the default mode as the point of
+departure.
+.TP
+.I "\-p, \-\-parents"
+Ensure that each given directory exists. Create any missing parent
+directories for each argument. Parent directories default to the
+umask modified by `u+wx'. Do not consider an argument directory that
+already exists to be an error.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/mv.1 b/install/binos2/makeos2/doc/mv.1
new file mode 100644
index 00000000..7a4847f4
--- /dev/null
+++ b/install/binos2/makeos2/doc/mv.1
@@ -0,0 +1,92 @@
+.TH MV 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+mv \- rename files
+.SH SYNOPSIS
+.B mv
+[options] source dest
+.br
+.B mv
+[options] source... directory
+.br
+Options:
+.br
+[\-bfiuv] [\-S backup-suffix] [\-V {numbered,existing,simple}]
+[\-\-backup] [\-\-force] [\-\-interactive] [\-\-update] [\-\-verbose]
+[\-\-suffix=backup-suffix] [\-\-version-control={numbered,existing,simple}]
+[\-\-help] [\-\-version]
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR mv .
+If the last argument names an existing directory,
+.B mv
+moves each other
+given file into a file with the same name in that directory.
+Otherwise, if only two files are given, it moves the first onto the
+second. It is an error if the last argument is not a directory and
+more than two files are given. It can move only regular files across
+filesystems.
+.P
+If a destination file is unwritable, the standard input is a tty, and
+the \fI\-f\fR or \fI\-\-force\fR option is not given,
+.B mv
+prompts the user for whether to overwrite the file. If the response
+does not begin with `y' or `Y', the file is skipped.
+.SS OPTIONS
+.TP
+.I "\-b, \-\-backup"
+Make backups of files that are about to be removed.
+.TP
+.I "\-f, \-\-force"
+Remove existing destination files and never prompt the user.
+.TP
+.I "\-i, \-\-interactive"
+Prompt whether to overwrite each destination file that already
+exists. If the response does not begin with `y' or `Y', the file is
+skipped.
+.TP
+.I "\-u, \-\-update"
+Do not move a nondirectory that has an existing destination with the
+same or newer modification time.
+.TP
+.I "\-v, \-\-verbose"
+Print the name of each file before moving it.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
+.TP
+.I "\-S, \-\-suffix backup-suffix"
+The suffix used for making simple backup files can be set with the
+.B SIMPLE_BACKUP_SUFFIX
+environment variable, which can be overridden by this option. If
+neither of those is given, the default is `~', as it is in Emacs.
+.TP
+.I "\-V, \-\-version-control {numbered,existing,simple}"
+The type of backups made can be set with the
+.B VERSION_CONTROL
+environment variable, which can be overridden by this option. If
+.B VERSION_CONTROL
+is not set and this option is not given, the default backup type is
+`existing'. The value of the
+.B VERSION_CONTROL
+environment variable and the argument to this option are like the GNU
+Emacs `version-control' variable; they also recognize synonyms that
+are more descriptive. The valid values are (unique abbreviations are
+accepted):
+.RS
+.TP
+`t' or `numbered'
+Always make numbered backups.
+.TP
+`nil' or `existing'
+Make numbered backups of files that already
+have them, simple backups of the others.
+.TP
+`never' or `simple'
+Always make simple backups.
diff --git a/install/binos2/makeos2/doc/pwd.1 b/install/binos2/makeos2/doc/pwd.1
new file mode 100644
index 00000000..0a78453a
--- /dev/null
+++ b/install/binos2/makeos2/doc/pwd.1
@@ -0,0 +1,29 @@
+.TH PWD 1L "GNU Shell Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+pwd \- print name of current/working directory
+.SH SYNOPSIS
+.B pwd
+.br
+.B pwd
+{\-\-help,\-\-version}
+.SH DESCRIPTION
+This manual page
+documents the GNU version of
+.BR pwd .
+.B pwd
+prints the fully resolved name of the current directory.
+That is, all components of the printed name will be actual
+directory names \-\- none will be symbolic links.
+.PP
+Note that most Unix shells provide a built-in
+.B pwd
+command with similar functionality so the unadorned, interactive
+.B pwd
+command will usually execute the built-in version and not this one.
+.SS OPTIONS
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/rm.1 b/install/binos2/makeos2/doc/rm.1
new file mode 100644
index 00000000..bff877b2
--- /dev/null
+++ b/install/binos2/makeos2/doc/rm.1
@@ -0,0 +1,71 @@
+.TH RM 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+rm \- remove files
+.SH SYNOPSIS
+.B rm
+[\-dfirvR] [\-\-directory] [\-\-force] [\-\-interactive] [\-\-recursive]
+[\-\-help] [\-\-version] [\-\-verbose] name...
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR rm .
+.B rm
+removes each specified file. By default, it does not remove
+directories.
+.P
+If a file is unwritable, the standard input is a tty, and
+the \fI\-f\fR or \fI\-\-force\fR option is not given,
+.B rm
+prompts the user for whether to remove the file. If the response
+does not begin with `y' or `Y', the file is skipped.
+.LP
+GNU
+.BR rm ,
+like every program that uses the getopt function to parse its
+arguments, lets you use the
+.I \-\-
+option to indicate that all following arguments are non-options. To
+remove a file called `\-f' in the current directory, you could type
+either
+.RS
+rm \-\- \-f
+.RE
+or
+.RS
+rm ./\-f
+.RE
+The Unix
+.B rm
+program's use of a single `\-' for this purpose predates the
+development of the getopt standard syntax.
+.SS OPTIONS
+.TP
+.I "\-d, \-\-directory"
+Remove directories with `unlink' instead of `rmdir', and don't require
+a directory to be empty before trying to unlink it. Only works for
+the super-user. Because unlinking a directory causes any files in the
+deleted directory to become unreferenced, it is wise to
+.B fsck
+the filesystem after doing this.
+.TP
+.I "\-f, \-\-force"
+Ignore nonexistent files and never prompt the user.
+.TP
+.I "\-i, \-\-interactive"
+Prompt whether to remove each file. If the response does not begin
+with `y' or `Y', the file is skipped.
+.TP
+.I "\-r, \-R, \-\-recursive"
+Remove the contents of directories recursively.
+.TP
+.I "\-v, \-\-verbose"
+Print the name of each file before removing it.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binos2/makeos2/doc/rmdir.1 b/install/binos2/makeos2/doc/rmdir.1
new file mode 100644
index 00000000..bd11ef55
--- /dev/null
+++ b/install/binos2/makeos2/doc/rmdir.1
@@ -0,0 +1,27 @@
+.TH RMDIR 1 "GNU File Utilities" "FSF" \" -*- nroff -*-
+.SH NAME
+rmdir \- remove empty directories
+.SH SYNOPSIS
+.B rmdir
+[\-p] [\-\-parents] [\-\-help] [\-\-version] dir...
+.SH DESCRIPTION
+This documentation is no longer being maintained and may be inaccurate
+or incomplete. The Texinfo documentation is now the authoritative source.
+.PP
+This manual page
+documents the GNU version of
+.BR rmdir .
+.B rmdir
+removes each given empty directory. If any non-option argument
+does not refer to an existing empty directory, it is an error.
+.SS OPTIONS
+.TP
+.I "\-p, \-\-parents"
+Remove any parent directories that are explicitly mentioned in an
+argument, if they become empty after the argument file is removed.
+.TP
+.I "\-\-help"
+Print a usage message on standard output and exit successfully.
+.TP
+.I "\-\-version"
+Print version information on standard output then exit successfully.
diff --git a/install/binw32/ar.exe b/install/binw32/ar.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/as.exe b/install/binw32/as.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/cmp.exe b/install/binw32/cmp.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/cp.exe b/install/binw32/cp.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/cpp.exe b/install/binw32/cpp.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/diff.exe b/install/binw32/diff.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/dlltool.exe b/install/binw32/dlltool.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/gcc.exe b/install/binw32/gcc.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/gdate.exe b/install/binw32/gdate.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/gdb.exe b/install/binw32/gdb.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/gecho.exe b/install/binw32/gecho.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/ginstall.exe b/install/binw32/ginstall.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/gmkdir.exe b/install/binw32/gmkdir.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/grep.exe b/install/binw32/grep.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/ld.exe b/install/binw32/ld.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/make.exe b/install/binw32/make.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/mv.exe b/install/binw32/mv.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/nm.exe b/install/binw32/nm.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/objcopy.exe b/install/binw32/objcopy.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/objdump.exe b/install/binw32/objdump.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/patch.exe b/install/binw32/patch.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/pwd.exe b/install/binw32/pwd.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/rm.exe b/install/binw32/rm.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/strip.exe b/install/binw32/strip.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/unzip.exe b/install/binw32/unzip.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/windres.exe b/install/binw32/windres.exe
old mode 100644
new mode 100755
diff --git a/install/binw32/zip.exe b/install/binw32/zip.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/cmp.exe b/install/binw64/cmp.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/cp.exe b/install/binw64/cp.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/diff.exe b/install/binw64/diff.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/gdate.exe b/install/binw64/gdate.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/gecho.exe b/install/binw64/gecho.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/ginstall.exe b/install/binw64/ginstall.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/gmkdir.exe b/install/binw64/gmkdir.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/make.exe b/install/binw64/make.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/mv.exe b/install/binw64/mv.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/pwd.exe b/install/binw64/pwd.exe
old mode 100644
new mode 100755
diff --git a/install/binw64/rm.exe b/install/binw64/rm.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinmsdos/nasm.exe b/install/crossbinmsdos/nasm.exe
old mode 100644
new mode 100755
index 2ecdc4f9..d487bd82
Binary files a/install/crossbinmsdos/nasm.exe and b/install/crossbinmsdos/nasm.exe differ
diff --git a/install/crossbinw64/x86_64-win64-ar.exe b/install/crossbinw64/x86_64-win64-ar.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-as.exe b/install/crossbinw64/x86_64-win64-as.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-ld.exe b/install/crossbinw64/x86_64-win64-ld.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-nm.exe b/install/crossbinw64/x86_64-win64-nm.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-objcopy.exe b/install/crossbinw64/x86_64-win64-objcopy.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-objdump.exe b/install/crossbinw64/x86_64-win64-objdump.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-strip.exe b/install/crossbinw64/x86_64-win64-strip.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinw64/x86_64-win64-windres.exe b/install/crossbinw64/x86_64-win64-windres.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-ar.exe b/install/crossbinwce/arm-wince-ar.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-as.exe b/install/crossbinwce/arm-wince-as.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-dlltool.exe b/install/crossbinwce/arm-wince-dlltool.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-gdb.exe b/install/crossbinwce/arm-wince-gdb.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-ld.exe b/install/crossbinwce/arm-wince-ld.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-nm.exe b/install/crossbinwce/arm-wince-nm.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-objcopy.exe b/install/crossbinwce/arm-wince-objcopy.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-objdump.exe b/install/crossbinwce/arm-wince-objdump.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-pe-stub.exe b/install/crossbinwce/arm-wince-pe-stub.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-strip.exe b/install/crossbinwce/arm-wince-strip.exe
old mode 100644
new mode 100755
diff --git a/install/crossbinwce/arm-wince-windres.exe b/install/crossbinwce/arm-wince-windres.exe
old mode 100644
new mode 100755
diff --git a/install/darwin/macos/CommandLineToolsCheck b/install/darwin/macos/CommandLineToolsCheck
new file mode 100755
index 00000000..f2d89d15
--- /dev/null
+++ b/install/darwin/macos/CommandLineToolsCheck
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+# based on https://github.com/Homebrew/install/blob/master/install.sh
+
+major_minor() {
+ echo "${1%%.*}.$(x="${1#*.}"; echo "${x%%.*}")"
+}
+
+if [[ -z "${HOMEBREW_ON_LINUX-}" ]]; then
+ macos_version="$(major_minor "$(/usr/bin/sw_vers -productVersion)")"
+fi
+
+version_gt() {
+ [[ "${1%.*}" -gt "${2%.*}" ]] || [[ "${1%.*}" -eq "${2%.*}" && "${1#*.}" -gt "${2#*.}" ]]
+}
+
+should_install_command_line_tools() {
+ if version_gt "$macos_version" "10.13"; then
+ ! [[ -e "/Library/Developer/CommandLineTools/usr/bin/git" ]]
+ else
+ ! [[ -e "/usr/lib/crt1.o" ]]
+ fi
+}
+
+if should_install_command_line_tools; then
+ exit 1
+else
+ exit 0
+fi
diff --git a/install/darwin/macos/fpc-intel-macosx/ReadMe.txt b/install/darwin/macos/fpc-intel-macosx/ReadMe.txt
new file mode 100644
index 00000000..ec845e22
--- /dev/null
+++ b/install/darwin/macos/fpc-intel-macosx/ReadMe.txt
@@ -0,0 +1,265 @@
+
+ Free Pascal Compiler
+
+ Version 3.2.2
+
+****************************************************************************
+* Introduction
+****************************************************************************
+
+Please also read the platform specific README file, if it exists.
+
+This package contains an advanced freeware 32-bit/64-bit/16-bit pascal compiler for several platforms. The language and the runtime library are almost compatible with Turbo Pascal 7.0 and recent Delphi releases. There is also partial support for the Macintosh pascal dialect.
+
+News and changes related to this release are described in whatsnew.txt.
+
+Free Pascal 3.2.2 is currently available for the following platforms:
+- Linux-i386
+- Linux-x86_64 (amd64)
+- Linux-powerpc
+- Linux-sparc
+- Linux-ARM
+- Win32-i386 (2000/XP, WinNT or later)
+- Win64-x86_64 (XP or later)
+- Wince-ARM (cross compiled from win32-i386)
+- FreeBSD-i386
+- FreeBSD-x86_64
+- Mac OS X/Darwin for PowerPC (32 and 64 bit)
+- Mac OS X/Darwin for Intel (32 and 64 bit)
+- Mac OS X/Darwin for AArch64/ARM64
+- iOS (ARM and AArch64/ARM64) and iPhoneSimulator (32 and 64 bit)
+- OS/2-i386 (OS/2 Warp v3.0, 4.0, WarpServer for e-Business and eComStation)
+- Haiku-i386
+- GO32v2-i386
+- Nintendo Gameboy Advance-ARM (cross compile from win32-i386)
+- Nintendo DS-ARM (cross compile from win32-i386)
+- Nintendo Wii-powerpc (cross compile from win32-i386)
+- AIX 5.3 and later for PowerPC (32 and 64 bit)
+- Java JVM (1.5 and later) and Android Dalvik (Android 4.0 and later)
+- Android (AArch64, x86_64, ARM, i386, MIPS) via cross-compiling.
+- MSDos-i8086 (cross compiled from win32-i386 or Linux)
+- Amiga, MorphOS and AROS
+
+There are other platforms (like other BSD variants) which are more or less working, but there is currently no maintainer for them and thus we cannot provide adequate support. If you want to change this and create and maintain versions for other platforms and targets, feel free to contact us, e-mail addresses are listed below.
+
+
+****************************************************************************
+* Features
+****************************************************************************
+
+- high speed compiler
+- fully 16, 32 or 64-bit code
+ - 32 bit compiler can be used on x86_64 Linux distributions to compile 32 bit applications
+- language features:
+ - almost fully compatible with Borland Pascal and Borland Delphi
+ - ansi strings
+ - wide strings
+ - exception support
+ - RTTI support
+ - procedure overloading
+ - generics
+ - operator overloading
+ - COM, CORBA and raw interfaces support
+ - dynamic array support
+ - variant support
+ - inlining
+- code optimizer:
+ - peephole optimizer (80x86 only)
+ - jump optimizer
+ - loading of variables into registers
+ - assembler level dataflow analyzer (80x86 only)
+ - stack frame eliminations
+ - sophisticated register allocator
+- integrated BASM (built-in assembler) parser
+ - supports ATT syntax used by GNU C
+ - supports Intel syntax used by Turbo Pascal (x86-only)
+- can compile code into assembler source code for these assemblers:
+ - GNU Assembler (GAS)
+ - Netwide assembler (Nasm)
+ - Microsoft Assembler/Turbo Assembler (Masm/Tasm)
+ - Watcom assembler (wasm)
+- internal assembler for ultra fast object file generation
+- can call external C code
+ - h2pas utility to convert .h files to Pascal units
+- smart linking (also known as dead code stripping)
+- support for the GNU debugger
+- integrated development environment (disabled by default on Mac OS X)
+ - powerful user friendly Wordstar compatible multi file editor
+ - context sensitive help supports help files in HTML, Windows HLP and Borland TPH format.
+ - debugger on most platforms
+- can create binaries running natively under both DOS and OS/2 (EMX version)
+- no need for Linux distribution specific binaries, programs you write run on all distributions
+- high quality documentation
+
+
+****************************************************************************
+* Minimum requirements
+****************************************************************************
+
+Processor:
+ i386, x86_64, PowerPC, ARM, MIPS, i8086, Motorola 68k, Sparc or JVM
+ runtime
+Win32:
+ - MS Windows NT/2000/XP or later (Win95, 98 and ME are not supported in FPC officially any longer).
+ - 16 MB RAM
+OS/2:
+ - OS/2 Warp v3.0 with one of late fixpaks - FP 35 should be fine, OS/2 Warp v4.0 with FP 5 and above, WSeB, MCP or any eComStation version (OS/2 2.0/2.1 currently not supported, not even for compiled programs).
+ - ArcaOS should be OK too, but it hasn't been tested.
+ - Certain features (e.g. Unicode support in the RTL) require proper support only available in later OS/2 versions (at least OS/2 Warp 4.0 FP14), otherwise the functionality may be limited (but the binaries still work even on the older versions, albeit with some limitations).
+Linux:
+ - system running a 2.4.x kernel
+FreeBSD:
+ - There are separate releases for FreeBSD 7.x system or 8.x system. The code works on 6.x too. Older versions might need specific adaptations.
+Mac OS X:
+ - Mac OS X 10.4 and higher
+
+
+****************************************************************************
+* Quick start - Win32
+****************************************************************************
+
+Download the distribution package (fpc-3.2.2.i386-win32.exe) and run it - it is a self-extracting installer, so just follow the instructions to install it. The installer should set the PATH environment variable as appropriate.
+
+To test the compiler, change to the demo\text directory of the FPC tree and type on the command line:
+ fpc hello
+ hello
+
+
+****************************************************************************
+* Quick start - DOS
+****************************************************************************
+
+Download distribution archive (dos322.zip for GO32v2) and unzip it into a temporary directory.
+
+Start the install program INSTALL.EXE and follow the instructions.
+
+Don't forget to set PATH as mentioned by the install program. If running under plain DOS, this can be done by opening file named AUTOEXEC.BAT located in the root directory of your boot drive (usually C:\) with a plain text editor (like EDIT.COM), extending the line starting with "set PATH=" (case insensitive) with path to newly installed binaries (installation root as selected in the installation program appended with "\BIN\GO32v2") and save it.
+
+To test the compiler, change to the demo\text directory of the FPC tree and type
+ fpc hello
+ hello
+
+
+****************************************************************************
+* Quick start - OS/2 / eComStation / ArcaOS
+****************************************************************************
+
+Download distribution archive (os2322full.zip or os2322.zip for OS/2, eComStation or ArcaOS) and unzip it into a temporary directory.
+
+Start the install program INSTALL.EXE and follow the instructions.
+
+Don't forget to set PATH and LIBPATH as mentioned by the install program. This can be done by opening file named CONFIG.SYS located in the root directory of your boot drive (e.g. C:\) with a plain text editor (e.g. E.EXE), extending the lines starting with "set PATH=" and "LIBPATH=" (both are case insensitive) with path to newly installed binaries (installation root as selected in the installation program appended with "\BIN\OS2" for PATH and "\DLL" for LIBPATH) and save it again as a plain text file. Note that changes to LIBPATH require restart of your machine in order to come into effect.
+
+To test the compiler, change to the demo\text directory of the FPC tree and type
+ fpc hello
+ hello
+
+
+****************************************************************************
+* Quick start - Linux/FreeBSD
+****************************************************************************
+
+Download fpc-3.2.2.-.tar and untar into a temporary directory.
+
+Start the install script with ./install.sh and follow the instructions.
+
+To test the compiler, change to the demo/text directory of the FPC tree and type
+ fpc hello
+ hello
+
+
+****************************************************************************
+* Quick start - Mac OS X/Darwin
+****************************************************************************
+
+The Xcode command line tools must be installed before FPC is installed. See the download page for more information (the method changes with almost every new Xcode and/or Mac OS X release, so the information in this readme is usually out of date).
+
+There are two methods to install Free Pascal for Mac OS X.
+
+1) Download and install the Mac OS X installer package
+
+2) Install fpc using fink
+
+This second method additionally includes a text mode IDE, which partly works using XQuartz xterm.
+
+
+After installing the package, you can write your source code in your favorite editor (including Project Builder and XCode). To compile something, go to the directory containing your source files in Terminal and type:
+
+ fpc name_of_your_source_file
+
+The compiler only accepts one file name as argument, but will automatically search for and compile any units used by the specified source file. Run "fpc" without any arguments to get an overview of the possible command line options.
+
+
+****************************************************************************
+* Documentation
+****************************************************************************
+
+The documentation is available as HTML pages, PDF, PS, and text although the recommended format is pdf. The latest PDF version is available on ftp://ftp.freepascal.org/fpc/dist/docs-pdf/, other formats are available for download in the directory of the respective distributed release.
+
+NB that there is at present no FPC specific documentation for the platform specific API (like Win32 system functions, etc.). There is a note in the ftp /doc explaining where MS help file documenting Win32 API can be obtained, other platforms (especially Unix-based ones) often come with this documentation included in system installation.
+
+
+****************************************************************************
+* Suggestions, Help, Bug reporting, snapshots, ...
+****************************************************************************
+
+Suggestions, Help ...
+---------------------
+e-mail: fpc-devel@lists.freepascal.org (bugs, developer related questions)
+e-mail: fpc-pascal@lists.freepascal.org (general pascal related questions)
+
+Both these adresses are for mailing lists. If you're not subscribed, be sure to mention this fact when sending questions to these lists, so that people sending answers know about it and send you a copy. Information about available lists and subscription can be found on http://lists.freepascal.org/mailman/listinfo
+
+Combined with Lazarus, an IDE for the Free Pascal Compiler: Web forum: http://forum.lazarus.freepascal.org (all questions) Wiki: http://wiki.freepascal.org
+
+WWW: http://www.freepascal.org
+FTP: ftp://ftp.freepascal.org/fpc
+(several mirrors exist, see website for links)
+
+Additional information about mailing lists, news, future plans etc. can be found on the web site.
+
+SNAPSHOTS & SOURCES
+-------------------
+One of the features of FPC is the snapshots. These are made daily or weekly from the developers' latest versions of the source. Snapshots are available for GO32v2, Win32 and Linux versions. The latest snapshots are in: ftp://ftp.freepascal.org/fpc/snapshot/ in appropriately named .zip/tar files.
+
+You will also normally find in the snapshot archive file a readme, with a note about the latest included changes. It is quite common, though it doesn't always happen, that when a bug is reported it is fixed and a fixed version can be obtained the NEXT day in the appropriate snapshot.... yes really!
+
+Also on the ftp site you'll find a /dist directory, with the latest distributed releases, a /docs directory, and a /snapshot//source directory, in which every night at about 0100 GMT the latest source generated by the developers during the day & evening before is exported from SVN into ZIP file fpc.zip.
+
+
+Making your own snapshots
+-------------------------
+By downloading the /source files (makefiles are included) it is possible to make your own version of the fpc compiler/rtl and to modify it. You are of course free to do this so as long as you observe the licence conditions. In order to make the compiler/rtl & IDE in a resonable time (eg <30 minutes) you'll need at least 32 MB of physical memory (64 MB is better), at least a 200 MHz processor and at least 100 MB of free disk space. You'll also need some knowledge of makefiles & programming... it is not difficult but it isn't easy either!
+
+REPORTING BUGS
+----------------
+If you find a bug in the released version, you may want to try a snapshot (see SNAPSHOTS above) to see if it has been fixed before reporting it to the fpc-devel mailing list.
+
+If you find a fault or 'feature' in a release, please report it either using the bug reporting interface at http://bugs.freepascal.org, or to the fpc-devel mailing list. PLEASE ALWAYS INCLUDE A COMPILABLE CODE FRAGMENT that can be used to reproduce the problem (or a link to larger archive if it cannot be reproduced with small example). Also state the FPC version, target platform (Win32, Linux, ...), operating system version (XP, Ubuntu 12.04, ...), the used compiler options and any other useful info so the developers can reproduce the problem. Otherwise they may not be able to fix it.
+
+
+****************************************************************************
+* License
+****************************************************************************
+
+The compiler and most utilities and executables distributed in this package fall under the GPL, for more information read the file COPYING.v2.
+
+Some specific utilities and programs come under the license described in COPYING.v3, COPYING.DJ, COPYING.EMX, COPYING.RSX and licensez.ip.
+
+FPC for JVM comes with some third party tools which are convered by the following licenses:
+ - jasmin.jar comes under the license described in jasminli.txt
+ - bcel-6.0-SNAPSHOT.jar comes under the Apache 2.0 license, described by apache2.txt
+
+Portions of FPC are based on libffi. See libffi.txt for the license of that code.
+
+Some of the licenses of the third party tools require to make the source available. If you cannot find the sources or information where to find them for a certain tool under such a license included into the FPC distribution, please contact us through the contact details given at http://www.freepascal.org/moreinfo.var and we will provide you the sources or information where to find them.
+
+The documentation, unless otherwise noted, is distributed as free text, and is distributed under the GNU Library General Public License as found in file COPYING.
+
+The runtime library, package libraries, free component library, and other libraries which are used to create executables by the compiler come under a modified GNU Library General Public license. Additional information about the library license is found in COPYING.FPC.
+
+License conditions for DPMI provider for GO32v2 version (CWSDPMI.EXE) can be found in cwsdpmi.txt, sources and/or binary updates may be downloaded from http://clio.rice.edu/cwsdpmi/.
+
+The DOS version (go32v2) contains some binaries of DJGPP. You can obtain the full DJGPP package at: http://www.delorie.com/djgpp/
+
+NOTE: OS/2 version of the installer uses the library UNZIP32.DLL from Info-ZIP. Info-ZIP's software (Zip, UnZip and related utilities) is free and can be obtained as source code or executables from Internet/WWW sites, including http://www.info-zip.org.
diff --git a/install/darwin/macos/fpc-intel-macosx/x86/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (Intel).rtf b/install/darwin/macos/fpc-intel-macosx/build/fpc-3.2.2rc1.intelarm64-macosx/Getting Started (Intel and ARM64).rtf
similarity index 61%
rename from install/darwin/macos/fpc-intel-macosx/x86/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (Intel).rtf
rename to install/darwin/macos/fpc-intel-macosx/build/fpc-3.2.2rc1.intelarm64-macosx/Getting Started (Intel and ARM64).rtf
index aba8331a..e3cba721 100644
--- a/install/darwin/macos/fpc-intel-macosx/x86/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (Intel).rtf
+++ b/install/darwin/macos/fpc-intel-macosx/build/fpc-3.2.2rc1.intelarm64-macosx/Getting Started (Intel and ARM64).rtf
@@ -1,30 +1,52 @@
{\rtf1\ansi\ansicpg1252\cocoartf1671\cocoasubrtf600
\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica-Bold;\f1\fswiss\fcharset0 Helvetica;\f2\fnil\fcharset0 Menlo-Regular;
\f3\fswiss\fcharset0 Helvetica-Oblique;}
-{\colortbl;\red255\green255\blue255;}
-{\*\expandedcolortbl;;}
+{\colortbl;\red255\green255\blue255;\red0\green0\blue0;}
+{\*\expandedcolortbl;;\cssrgb\c0\c0\c0;}
{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid1\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid1}
-{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}}
-{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}}
+{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid101\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid2}
+{\list\listtemplateid3\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid201\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid3}
+{\list\listtemplateid4\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid301\'01\uc0\u8226 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid4}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}}
\paperw11900\paperh16840\margl1440\margr1440\vieww23940\viewh15120\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f0\b\fs24 \cf0 About & requirements
\f1\b0 \
\
-This package installs the Free Pascal Compiler 3.2.0rc1 for Intel (32 and 64 bit). It requires Mac OS X 10.4.0 or later with Xcode and the Xcode command line tools installed. Specific Xcode version instructions:\
+This package installs the Free Pascal Compiler 3.2.2rc1 for Mac OS X/Intel (32 and 64 bit) and macOS/ARM64. It can be used to compile for\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls1\ilvl0\cf0 {\listtext \uc0\u8226 }
+\ls1\ilvl0\cf0 {\listtext \uc0\u8226 }Intel 32 bit (targeting Mac OS X 10.4 and up)\
+{\listtext \uc0\u8226 }Intel 64 bit (targeting Mac OS X 10.5 and up)\
+\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
+\ls2\ilvl0\cf0 {\listtext \uc0\u8226 }ARM64 (targeting macOS 11.0 and up)\
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+\cf0 \
+Requirements:\
+\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
+\ls3\ilvl0\cf0 {\listtext \uc0\u8226 }Intel: Mac OS X 10.6.0 or later with Xcode and the Xcode command line tools installed.\
+{\listtext \uc0\u8226 }ARM64: macOS 11.0 or later with Xcode and the Xcode command line tools installed.\
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+\cf0 \
+Specific Xcode version instructions:\
+\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
+\ls4\ilvl0\cf0 {\listtext \uc0\u8226 }
\f0\b macOS 10.15+ (Catalina and later)
\f1\b0 : after installing Xcode, open a Terminal window and execute "
\f2 xcode-select --install"
-\f1 (without the quotes). Additionally, this toolchain no longer supports compiling for Intel 32 bit (i386). If you do want to i386 on macOS 10.15+, you will need an older toolchain and SDK, and specify the path to those to the compiler using the -FD resp. -XR command line parameters.\
+\f1 (without the quotes) followed by "
+\f2 \cf2 \expnd0\expndtw0\kerning0
+sudo xcodebuild -license accept
+\f1 " (again without the quotes)\cf0 \kerning1\expnd0\expndtw0 . Additionally, this toolchain no longer supports compiling for Intel 32 bit (i386). If you do want to target i386 on macOS 10.15+, you will need an older toolchain and SDK, and specify the path to those to the compiler using the -FD resp. -XR command line parameters.\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls1\ilvl0
-\f0\b \cf0 {\listtext \uc0\u8226 }Xcode 5+ (OS X 10.9+, macOS 10.12+; for OS X 10.8, see next item):
+\ls4\ilvl0
+\f0\b \cf0 {\listtext \uc0\u8226 }Xcode 5+ (OS X 10.9+, macOS 10.12+):
\f1\b0 after installing Xcode, open a Terminal window and execute "
\f2 xcode-select --install"
-\f1 (without the quotes)\
+\f1 (without the quotes) followed by "
+\f2 \cf2 \expnd0\expndtw0\kerning0
+sudo xcodebuild -license accept
+\f1 " (again without the quotes).\cf0 \kerning1\expnd0\expndtw0 \
{\listtext \uc0\u8226 }
\f0\b Xcode 4.3-5.x Mac OS X 10.7/OS X 10.8)
\f1\b0 : after installing Xcode, go to
@@ -33,23 +55,18 @@ This package installs the Free Pascal Compiler 3.2.0rc1 for Intel (32 and 64 bit
\f3\i Downloads
\f1\i0 and install the
\f3\i Command Line Tools
-\f1\i0 package\
+\f1\i0 package.\
{\listtext \uc0\u8226 }
\f0\b Xcode 3.x-4.2 (Mac OS X 10.6)
-\f1\b0 : make sure
-\f0\b not to deselect
+\f1\b0 : make sure to
+\f0\b not deselect
\f1\b0
\f3\i UNIX Development Support
\f1\i0 during the Xcode installation process.\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
-This package can be used to compile for\
-\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls2\ilvl0\cf0 {\listtext \uc0\u8226 }Intel 32 bit (targeting Mac OS X 10.4 and up)\
-{\listtext \uc0\u8226 }Intel 64 bit (targeting Mac OS X 10.5 and up)\
\pard\tx560\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
-\cf0 \
-To compile for
+\cf0 To compile for
\f0\b iOS
\f1\b0 (ARM and ARM64, 32 and 64 bit iPhoneSimulator), please download and install the iOS cross-compilation package after installing this one.\
@@ -73,7 +90,7 @@ There is a
\f3\i -k-no_order_inits
\f1\i0 parameter when compiling a dynamic library (it's only required while compiling the library itself, not while compiling units it uses).\
\
-This bug has however been
+This bug has been
\f0\b fixed in Xcode 4 and later
\f1\b0 , so no special parameters are required anymore when using newer versions.\
\
@@ -87,9 +104,11 @@ This bug has however been
\
\'95 You may also want to check out the Light Weight Pascal IDE, available at {\field{\*\fldinst{HYPERLINK "http://www.ragnemalm.se/lightweight/"}}{\fldrslt http://www.ragnemalm.se/lightweight/}}. It is much easier to use than Xcode and recommended if you do not need all the features offered by Xcode.\
\
-\'95 The compiler can also be used at the command line, in which case you use Terminal to compile programs. For editing source files, you can use your favourite editor. After installation, the compiler -called "fpc"- will be located in the directory /usr/local/bin. You may have to add this directory to your PATH before you can use the compiler from the command line.\
+\'95 The compiler can also be used at the command line, in which case you use Terminal to compile programs. For editing source files, you can use your favourite editor. After installation, the compiler -called "fpc"- will be located in the directory
+\f2 /usr/local/bin
+\f1 . You may have to add this directory to your PATH before you can use the compiler from the command line.\
\
-\'95 The documentation is installed in {\field{\*\fldinst{HYPERLINK "file:///Users/Shared/Free%20Pascal%20Compiler/Documentation"}}{\fldrslt file:///Users/Shared/Free Pascal Compiler/Documentation}}.\
+\'95 The documentation is installed in {\field{\*\fldinst{HYPERLINK "file:///Developer/Documentation/Free%20Pascal%20Compiler"}}{\fldrslt file:///Developer/Documentation/Free Pascal Compiler}}.\
\
\
For more information, see the ReadMe.txt file or visit {\field{\*\fldinst{HYPERLINK "https://www.freepascal.org"}}{\fldrslt https://www.freepascal.org}}}
\ No newline at end of file
diff --git a/install/darwin/macos/fpc-intel-macosx/createdmgs.sh b/install/darwin/macos/fpc-intel-macosx/createdmgs.sh
new file mode 100755
index 00000000..d5743234
--- /dev/null
+++ b/install/darwin/macos/fpc-intel-macosx/createdmgs.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+set -vex
+
+VERSION=3.2.2
+rm -rf build/fpc-"${VERSION}".intelarm64-macosx build/fpc-"${VERSION}".intel-macosx.cross.ios build/fpc-"${VERSION}".intel-macosx.cross.powerpc-macosx build/fpc-"${VERSION}".intel-macosx.cross.jvm
+mkdir -p build/fpc-"${VERSION}".intelarm64-macosx build/fpc-"${VERSION}".intel-macosx.cross.ios build/fpc-"${VERSION}".intel-macosx.cross.powerpc-macosx build/fpc-"${VERSION}".intel-macosx.cross.jvm
+
+cp x86/Users/Shared/Free\ Pascal\ Compiler/Documentation/Getting* What*.txt build/fpc-"${VERSION}".intelarm64-macosx
+cp ios/Users/Shared/Free\ Pascal\ Compiler/Documentation/Getting* build/fpc-"${VERSION}".intel-macosx.cross.ios
+cp ppc/Users/Shared/Free\ Pascal\ Compiler/Documentation/Getting* build/fpc-"${VERSION}".intel-macosx.cross.powerpc-macosx
+cp jvm/Users/Shared/Free\ Pascal\ Compiler/Documentation/Getting* build/fpc-"${VERSION}".intel-macosx.cross.jvm
+
+for file in *.pkgproj
+do
+ builddir=`basename -s .pkgproj $file|sed -e "s/fpc-/fpc-"${VERSION}"./"`
+ (
+ cp ../../../doc/whatsnew.txt "build/$builddir"/"What's New.txt"
+ cp ReadMe.txt "build/$builddir"
+ packagesbuild --build-folder "$PWD"/build/"$builddir" "$file"
+ hdiutil create -ov -fs HFS+ -srcfolder "build/$builddir" -volname `basename "$builddir"` -format UDZO build/`basename "$builddir"`.dmg
+ ) &
+done
+
+#packagebuild --build-folder build/fpc-"${VERSION}".intel-macosx fpc-intel-macosx.pkgproj
+#packagebuild --build-folder build/fpc-"${VERSION}".intel-macosx.cross.ios fpc-intel-macosx.cross.ios.pkgproj
+#packagebuild --build-folder build/fpc-"${VERSION}".intel-macosx fpc-intel-macosx.pkgproj
+#packagebuild --build-folder build/fpc-"${VERSION}".intel-macosx fpc-intel-macosx.pkgproj
+
+#for dir in build/*/
+#do
+# hdiutil create -fs HFS+ -srcfolder "$dir" -volname `basename "$dir"` -format UDZO `basename $dir`.dmg &
+#done
+wait
diff --git a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.ios.pkgproj b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.ios.pkgproj
index 1436b2ef..c244ebb8 100644
--- a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.ios.pkgproj
+++ b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.ios.pkgproj
@@ -554,11 +554,11 @@
FOLLOW_SYMBOLIC_LINKS
IDENTIFIER
- org.freepascal.freePascalCompiler320.fpcinstx86-ios
+ org.freepascal.freePascalCompiler322.fpcinstx86-ios
LOCATION
0
NAME
- fpc-3.2.0rc1.intel-macosx.cross.ios
+ fpc-3.2.2.intel-macosx.cross.ios
OVERWRITE_PERMISSIONS
PAYLOAD_SIZE
@@ -570,7 +570,7 @@
USE_HFS+_COMPRESSION
VERSION
- 1.0
+ 2.0
TYPE
0
@@ -755,9 +755,9 @@
VALUE
PATH
- /Volumes/Data/dev/fpcbuild/install/doc/readme.txt
+ /Volumes/Data/dev/fpcbuild/install/darwin/macos/fpc-intel-macosx/ReadMe.txt
PATH_TYPE
- 0
+ 1
@@ -775,7 +775,7 @@
LANGUAGE
English
VALUE
- Free Pascal Compiler for Intel 3.2.0rc1 - iOS cross-compilers
+ Free Pascal Compiler for Intel 3.2.2 - iOS cross-compilers
@@ -831,7 +831,7 @@
0
IC_REQUIREMENT_FILES_LIST
- /usr/local/lib/fpc/3.2.0/ppcx64
+ /usr/local/lib/fpc/3.2.2/ppcx64
IC_REQUIREMENT_FILES_SELECTOR
0
@@ -846,11 +846,11 @@
LANGUAGE
English
VALUE
- Please install FPC 3.2.0rc1 for Intel before installing these cross-compilers.
+ Please install FPC 3.2.2 for Intel before installing these cross-compilers.
NAME
- FPC 3.2.0rc1 for Intel not yet installed
+ FPC 3.2.2 for Intel not yet installed
STATE
@@ -867,7 +867,7 @@
BUILD_PATH
PATH
- build
+ build/fpc-3.2.2.intel-macosx.cross.ios
PATH_TYPE
1
@@ -1040,7 +1040,7 @@
NAME
- fpc-3.2.0rc1.intel-macosx.cross.ios
+ fpc-3.2.2.intel-macosx.cross.ios
PAYLOAD_ONLY
TREAT_MISSING_PRESENTATION_DOCUMENTS_AS_WARNING
diff --git a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.jvm.pkgproj b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.jvm.pkgproj
index fc53a2d0..0c0506b7 100644
--- a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.jvm.pkgproj
+++ b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.jvm.pkgproj
@@ -554,11 +554,11 @@
FOLLOW_SYMBOLIC_LINKS
IDENTIFIER
- org.freepascal.freePascalCompiler320.fpcinst386-jvm
+ org.freepascal.freePascalCompiler322.fpcinst386-jvm
LOCATION
0
NAME
- fpc-3.2.0rc1.intel-macosx.cross.jvm
+ fpc-3.2.2.intel-macosx.cross.jvm
OVERWRITE_PERMISSIONS
PAYLOAD_SIZE
@@ -570,7 +570,7 @@
USE_HFS+_COMPRESSION
VERSION
- 1.0
+ 2.0
TYPE
0
@@ -753,9 +753,9 @@
VALUE
PATH
- /Volumes/Data/dev/fpcbuild/install/doc/readme.txt
+ /Volumes/Data/dev/fpcbuild/install/darwin/macos/fpc-intel-macosx/ReadMe.txt
PATH_TYPE
- 0
+ 1
@@ -773,7 +773,7 @@
LANGUAGE
English
VALUE
- Free Pascal Compiler for Intel 3.2.0rc1 - JVM cross-compilers
+ Free Pascal Compiler for Intel 3.2.2 - JVM cross-compilers
@@ -829,7 +829,7 @@
0
IC_REQUIREMENT_FILES_LIST
- /usr/local/lib/fpc/3.2.0/ppcx64
+ /usr/local/lib/fpc/3.2.2/ppcx64
IC_REQUIREMENT_FILES_SELECTOR
0
@@ -844,11 +844,11 @@
LANGUAGE
English
VALUE
- Please install FPC 3.2.0rc1 for Intel before installing these cross-compilers.
+ Please install FPC 3.2.2 for Intel before installing these cross-compilers.
NAME
- FPC 3.2.0rc1 for Intel not yet installed
+ FPC 3.2.2 for Intel not yet installed
STATE
@@ -865,7 +865,7 @@
BUILD_PATH
PATH
- build/fpc-3.2.0rc1.intel-macosx.cross.jvm
+ build/fpc-3.2.2.intel-macosx.cross.jvm
PATH_TYPE
1
@@ -1038,7 +1038,7 @@
NAME
- fpc-3.2.0rc1.intel-macosx.cross.jvm
+ fpc-3.2.2.intel-macosx.cross.jvm
PAYLOAD_ONLY
TREAT_MISSING_PRESENTATION_DOCUMENTS_AS_WARNING
diff --git a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.powerpc-macosx.pkgproj b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.powerpc-macosx.pkgproj
index fb0843fc..0c864b0e 100644
--- a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.powerpc-macosx.pkgproj
+++ b/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.cross.powerpc-macosx.pkgproj
@@ -554,11 +554,11 @@
FOLLOW_SYMBOLIC_LINKS
IDENTIFIER
- org.freepascal.freePascalCompiler320.fpcinst386-ppc
+ org.freepascal.freePascalCompiler322.fpcinst386-ppc
LOCATION
0
NAME
- fpc-3.2.0rc1.intel-macosx.cross.powerpc-macosx
+ fpc-3.2.2.intel-macosx.cross.powerpc-macosx
OVERWRITE_PERMISSIONS
PAYLOAD_SIZE
@@ -570,7 +570,7 @@
USE_HFS+_COMPRESSION
VERSION
- 1.0
+ 2.0
TYPE
0
@@ -753,9 +753,9 @@
VALUE
PATH
- /Volumes/Data/dev/fpcbuild/install/doc/readme.txt
+ /Volumes/Data/dev/fpcbuild/install/darwin/macos/fpc-intel-macosx/ReadMe.txt
PATH_TYPE
- 0
+ 1
@@ -773,7 +773,7 @@
LANGUAGE
English
VALUE
- Free Pascal Compiler for Intel 3.2.0rc1 - PowerPC cross-compilers
+ Free Pascal Compiler for Intel 3.2.2 - PowerPC cross-compilers
@@ -829,7 +829,7 @@
0
IC_REQUIREMENT_FILES_LIST
- /usr/local/lib/fpc/3.2.0/ppcx64
+ /usr/local/lib/fpc/3.2.2/ppcx64
IC_REQUIREMENT_FILES_SELECTOR
0
@@ -844,11 +844,11 @@
LANGUAGE
English
VALUE
- Please install FPC 3.2.0rc1 for Intel before installing these cross-compilers.
+ Please install FPC 3.2.2 for Intel before installing these cross-compilers.
NAME
- FPC 3.2.0rc1 for Intel not yet installed
+ FPC 3.2.2 for Intel not yet installed
STATE
@@ -865,7 +865,7 @@
BUILD_PATH
PATH
- ppc
+ build/fpc-3.2.2.intel-macosx.cross.powerpc-macosx
PATH_TYPE
1
@@ -1038,7 +1038,7 @@
NAME
- fpc-3.2.0rc1.intel-macosx.cross.powerpc-macosx
+ fpc-3.2.2.intel-macosx.cross.powerpc-macosx
PAYLOAD_ONLY
TREAT_MISSING_PRESENTATION_DOCUMENTS_AS_WARNING
diff --git a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.pkgproj b/install/darwin/macos/fpc-intel-macosx/fpc-intelarm64-macosx.pkgproj
similarity index 94%
rename from install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.pkgproj
rename to install/darwin/macos/fpc-intel-macosx/fpc-intelarm64-macosx.pkgproj
index 128f50fc..8daa254b 100644
--- a/install/darwin/macos/fpc-intel-macosx/fpc-intel-macosx.pkgproj
+++ b/install/darwin/macos/fpc-intel-macosx/fpc-intelarm64-macosx.pkgproj
@@ -475,7 +475,7 @@
PREINSTALL_PATH
PATH_TYPE
- 0
+ 1
RESOURCES
@@ -489,11 +489,11 @@
FOLLOW_SYMBOLIC_LINKS
IDENTIFIER
- org.freepascal.freePascalCompiler320.fpcinst386
+ org.freepascal.freePascalCompiler322.fpcinstintelarm64
LOCATION
0
NAME
- fpc-3.2.0rc1-intel-macosx
+ fpc-3.2.2-intelarm64-macosx
OVERWRITE_PERMISSIONS
PAYLOAD_SIZE
@@ -505,7 +505,7 @@
USE_HFS+_COMPRESSION
VERSION
- 1.0
+ 2.0
TYPE
0
@@ -641,7 +641,7 @@
VALUE
PATH
- x86/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (Intel).rtf
+ x86/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (Intel and ARM64).rtf
PATH_TYPE
1
@@ -677,7 +677,7 @@
VALUE
PATH
- ../../../doc/readme.txt
+ ReadMe.txt
PATH_TYPE
1
@@ -697,7 +697,7 @@
LANGUAGE
English
VALUE
- Free Pascal Compiler Intel 3.2.0rc1
+ Free Pascal Compiler Intel and ARM64 3.2.2
@@ -708,37 +708,42 @@
BEHAVIOR
- 3
+ 2
DICTIONARY
- IC_REQUIREMENT_CPU_ARCHITECTURE_FAMILY
- 2
- IC_REQUIREMENT_CPU_INTEL_ARCHITECTURE_TYPE
+ IC_REQUIREMENT_SCRIPT_ARGUMENTS
+
+ IC_REQUIREMENT_SCRIPT_COMPARATOR
0
- IC_REQUIREMENT_CPU_MINIMUM_CPU_CORES_COUNT
- 1
- IC_REQUIREMENT_CPU_MINIMUM_FREQUENCY
- 866666
- IC_REQUIREMENT_CPU_POWERPC_ARCHITECTURE_TYPE
+ IC_REQUIREMENT_SCRIPT_EMBED
+
+ IC_REQUIREMENT_SCRIPT_PATH
+
+ PATH
+ ../CommandLineToolsCheck
+ PATH_TYPE
+ 1
+
+ IC_REQUIREMENT_SCRIPT_VALUE
0
IC_REQUIREMENT_CHECK_TYPE
0
IDENTIFIER
- fr.whitebox.Packages.requirement.cpu
+ fr.whitebox.Packages.requirement.scripts
MESSAGE
LANGUAGE
English
SECONDARY_VALUE
- This package contains only Intel binaries, which cannot be used on a PowerPC-based Macintosh. Install the PowerPC version of FPC instead.
+ You must install the Xcode command line tools BEFORE installing FPC, otherwise the generated FPC configuration file will be incomplete. For more information, see the pages linked from https://www.freepascal.org/down/i386/macosx.html
VALUE
-
+ Install Xcode Command Line Tools
NAME
- Processor
+ Result of External Script
STATE
@@ -751,11 +756,11 @@
PROJECT_SETTINGS
BUILD_FORMAT
- 0
+ 1
BUILD_PATH
PATH
- x86
+ build/fpc-3.2.2.intelarm64-macosx
PATH_TYPE
1
@@ -928,13 +933,18 @@
NAME
- fpc-3.2.0rc1-intel-macosx
+ fpc-3.2.2-intelarm64-macosx
PAYLOAD_ONLY
TREAT_MISSING_PRESENTATION_DOCUMENTS_AS_WARNING
+ SHARED_GLOBAL_DATA
+
+ IC_REQUIREMENT_JAVASCRIPT_SHARED_SOURCE_CODE
+
+
TYPE
0
VERSION
diff --git a/install/darwin/macos/fpc-intel-macosx/ios/Users/Shared/Free Pascal Compiler/Documentation/Getting Started - iOS.rtf b/install/darwin/macos/fpc-intel-macosx/ios/Users/Shared/Free Pascal Compiler/Documentation/Getting Started - iOS.rtf
index cbc52a5b..e96ea768 100644
--- a/install/darwin/macos/fpc-intel-macosx/ios/Users/Shared/Free Pascal Compiler/Documentation/Getting Started - iOS.rtf
+++ b/install/darwin/macos/fpc-intel-macosx/ios/Users/Shared/Free Pascal Compiler/Documentation/Getting Started - iOS.rtf
@@ -18,12 +18,14 @@
{\list\listtemplateid13\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1201\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid13}
{\list\listtemplateid14\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1301\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid14}
{\list\listtemplateid15\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1401\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid15}
-{\list\listtemplateid16\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1501\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid16}}
-{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}{\listoverride\listid7\listoverridecount0\ls7}{\listoverride\listid8\listoverridecount0\ls8}{\listoverride\listid9\listoverridecount0\ls9}{\listoverride\listid10\listoverridecount0\ls10}{\listoverride\listid11\listoverridecount0\ls11}{\listoverride\listid12\listoverridecount0\ls12}{\listoverride\listid13\listoverridecount0\ls13}{\listoverride\listid14\listoverridecount0\ls14}{\listoverride\listid15\listoverridecount0\ls15}{\listoverride\listid16\listoverridecount0\ls16}}
+{\list\listtemplateid16\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1501\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid16}
+{\list\listtemplateid17\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1601\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid17}
+{\list\listtemplateid18\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{hyphen\}}{\leveltext\leveltemplateid1701\'01\uc0\u8259 ;}{\levelnumbers;}\fi-360\li720\lin720 }{\listname ;}\listid18}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}{\listoverride\listid7\listoverridecount0\ls7}{\listoverride\listid8\listoverridecount0\ls8}{\listoverride\listid9\listoverridecount0\ls9}{\listoverride\listid10\listoverridecount0\ls10}{\listoverride\listid11\listoverridecount0\ls11}{\listoverride\listid12\listoverridecount0\ls12}{\listoverride\listid13\listoverridecount0\ls13}{\listoverride\listid14\listoverridecount0\ls14}{\listoverride\listid15\listoverridecount0\ls15}{\listoverride\listid16\listoverridecount0\ls16}{\listoverride\listid17\listoverridecount0\ls17}{\listoverride\listid18\listoverridecount0\ls18}}
\paperw11900\paperh16840\margl1440\margr1440\vieww22440\viewh13060\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
-\f0\b\fs36 \cf0 \ul \ulc0 Free Pascal for iOS 3.2.0rc1
+\f0\b\fs36 \cf0 \ul \ulc0 Free Pascal for iOS 3.2.2
\f1\b0 \ulnone \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -46,7 +48,7 @@
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f1\b0 \cf0 \ulnone \
-This package will install the Free Pascal Compiler 3.2.0rc1 for running on Intel-based Macs to create iOS applications. It includes support for
+This package will install the Free Pascal Compiler 3.2.2 for running on Intel-based Macs to create iOS applications. It includes support for
\f0\b ARM (32 bit ARMv7),
\f1\b0
\f0\b ARM64
@@ -125,17 +127,33 @@ Questions or remarks regarding the templates themselves can be sent to either li
\
\f0\b \ul 4. Version history\
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+\cf0 \ulnone \'95 3.2.2
+\f1\b0 (16 May 2021):\
+\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
+\ls2\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.2.2\ul \
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+
+\f0\b \cf0 \ulc0 \
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+\cf0 \ulnone \'95 3.2.2rc1
+\f1\b0 (20 March 2021):\
+\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
+\ls3\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.2.2tc1\ul \
+\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
+
+\f0\b \cf0 \
\ulnone \'95 3.2.0
\f1\b0 (1 May 2020):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls2\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.2.0\ul \
+\ls4\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.2.0\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f0\b \cf0 \
\ulnone \'95 3.0.5
\f1\b0 (26 November 2017):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls3\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0.4\ul \
+\ls5\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0.4\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -143,7 +161,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 3.0.3
\f1\b0 (14 February 2017):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls4\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0.2\ul \
+\ls6\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0.2\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -151,7 +169,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 3.0.1
\f1\b0 (15th November 2015):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls5\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0\ul \
+\ls7\ilvl0\cf0 {\listtext \uc0\u8259 }Synchronised with FPC 3.0\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -159,14 +177,14 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 3.0.1
\f1\b0 (11th October 2015):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls6\ilvl0\cf0 {\listtext \uc0\u8259 }Resolved compatibility issues with Xcode 7\
+\ls8\ilvl0\cf0 {\listtext \uc0\u8259 }Resolved compatibility issues with Xcode 7\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\f0\b \cf0 \
\'95 3.0.1
\f1\b0 (9th August 2015):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls7\ilvl0\cf0 {\listtext \uc0\u8259 }Support for ARM64 (AArch64)\
+\ls9\ilvl0\cf0 {\listtext \uc0\u8259 }Support for ARM64 (AArch64)\
{\listtext \uc0\u8259 }Support for 64 bit iPhoneSimulator\
{\listtext \uc0\u8259 }Removed the old Xcode project and related information\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -175,7 +193,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\'95 2.6.2rc1
\f1\b0 (31st December 2011):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls8\ilvl0\cf0 {\listtext \uc0\u8259 }Support in the installation script for Xcode.app bundles installed in /Applications\
+\ls10\ilvl0\cf0 {\listtext \uc0\u8259 }Support in the installation script for Xcode.app bundles installed in /Applications\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -183,7 +201,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.6.0
\f1\b0 (31st December 2011):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls9\ilvl0\cf0 {\listtext \uc0\u8259 }No changes\
+\ls11\ilvl0\cf0 {\listtext \uc0\u8259 }No changes\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -191,7 +209,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.6.0rc1
\f1\b0 (16th October 2011):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls10\ilvl0\cf0 {\listtext \uc0\u8259 }Generic support for any iOS SDK version in the installation script\
+\ls12\ilvl0\cf0 {\listtext \uc0\u8259 }Generic support for any iOS SDK version in the installation script\
{\listtext \uc0\u8259 }Include both ARMv6/VFPv2 and ARMv7/VFPv3 versions of the object files\
{\listtext \uc0\u8259 }Support for Simulator SDK in Xcode 3.2.4 and later via the "iphonesim" target\
{\listtext \uc0\u8259 }Xcode template adjusted so it can build ARMv6/ARMv7 universal binaries, uses the iphonesim target when compiling for i386, and extra options to specify architecture-specific parameters to the compiler\
@@ -202,7 +220,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.4.2
\f1\b0 (9th November 2010):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls11\ilvl0\cf0 {\listtext \uc0\u8259 }Also add hypothetical iOS 4.3 support\
+\ls13\ilvl0\cf0 {\listtext \uc0\u8259 }Also add hypothetical iOS 4.3 support\
{\listtext \uc0\u8259 }Install the project template again in the right directory (
\f3\i /Developer/Library/Xcode/Shared/Project Templates
\f1\i0 instead of
@@ -214,7 +232,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\'95 2.4.2rc1
\f1\b0 (2nd October 2010):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls12\ilvl0\cf0 {\listtext \uc0\u8259 }The MacOSAll unit is now available for iPhoneOS/iOS targets\
+\ls14\ilvl0\cf0 {\listtext \uc0\u8259 }The MacOSAll unit is now available for iPhoneOS/iOS targets\
{\listtext \uc0\u8259 }Installation script supports up to iOS SDK 4.2\
{\listtext \uc0\u8259 }Mention that the iPhoneSimulator shipped with the 3.2 SDK and later is not yet supported with this release\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -223,7 +241,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\'95 2.4.0rc1
\f1\b0 (20th December 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls13\ilvl0\cf0 {\listtext \uc0\u8259 }Some small language cleanups in this readme\ul \
+\ls15\ilvl0\cf0 {\listtext \uc0\u8259 }Some small language cleanups in this readme\ul \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
\cf0 \
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -231,7 +249,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.4.0rc1
\f1\b0 (1st November 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls14\ilvl0\cf0 {\listtext \uc0\u8259 }Tested up to and including Xcode 3.2\
+\ls16\ilvl0\cf0 {\listtext \uc0\u8259 }Tested up to and including Xcode 3.2\
{\listtext \uc0\u8259 }Mention that future FPC versions will include MacOSAll for the iPhone/iPod Touch\
{\listtext \uc0\u8259 }Only compile/install the ARM version of the compiler (since we now require FPC 3.0rc1rc1 to be installed already)\
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\pardirnatural\partightenfactor0
@@ -241,7 +259,7 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.3.1v2
\f1\b0 (17th January 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls15\ilvl0\cf0 {\listtext \uc0\u8259 }Mention that you need a certificate from Apple to run self-written applications on an iPhone/iPod Touch\
+\ls17\ilvl0\cf0 {\listtext \uc0\u8259 }Mention that you need a certificate from Apple to run self-written applications on an iPhone/iPod Touch\
{\listtext \uc0\u8259 }Installation script mentions its location whenever it aborts\
{\listtext \uc0\u8259 }Link to wiki page with more information\
{\listtext \uc0\u8259 }Xcode template now ignores FPC configuration files\
@@ -253,5 +271,5 @@ Questions or remarks regarding the templates themselves can be sent to either li
\f0\b \cf0 \ulnone \'95 2.3.1v1
\f1\b0 (9th January 2009):\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
-\ls16\ilvl0\cf0 {\listtext \uc0\u8259 }Initial release\
+\ls18\ilvl0\cf0 {\listtext \uc0\u8259 }Initial release\
}
\ No newline at end of file
diff --git a/install/darwin/macos/fpc-intel-macosx/jvm/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (JVM).txt b/install/darwin/macos/fpc-intel-macosx/jvm/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (JVM).txt
index 2c414959..d7ed4e79 100644
--- a/install/darwin/macos/fpc-intel-macosx/jvm/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (JVM).txt
+++ b/install/darwin/macos/fpc-intel-macosx/jvm/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (JVM).txt
@@ -1,6 +1,6 @@
About & requirements
-This package installs the Free Pascal Compiler 3.2.0rc1 for JVM. It requires the JDK 1.5 or later to be installed and the "java" executable to be in the PATH.
+This package installs the Free Pascal Compiler 3.2.2 for JVM. It requires the JDK 1.5 or later to be installed and the "java" executable to be in the PATH.
This package can be used to compile for
• Java JVM 1.5 or later
@@ -16,7 +16,7 @@ You can find an overview of the supported language and RTL features at http://wi
Instead of the standard FPC RTL and packages, you can make use of the standard JDK (1.5)/Android DK (r14) classes via resp. the jdk15 and androidr14 units.
To run applications, you have to add the FPC RTL units to the java classpath. You can do so with the -cp command line parameter, e.g.
- java -cp /usr/local/lib/fpc/3.2.0/units/jvm-java/rtl:. Program
+ java -cp /usr/local/lib/fpc/3.2.2/units/jvm-java/rtl:. Program
Note the ":." at the end, because you have to add the current directory explicitly to the classpath if you specify it explicitly.
diff --git a/install/darwin/macos/fpc-intel-macosx/ppc/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (PowerPC Cross).rtf b/install/darwin/macos/fpc-intel-macosx/ppc/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (PowerPC Cross).rtf
index c53fbbbc..c34dd02f 100644
--- a/install/darwin/macos/fpc-intel-macosx/ppc/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (PowerPC Cross).rtf
+++ b/install/darwin/macos/fpc-intel-macosx/ppc/Users/Shared/Free Pascal Compiler/Documentation/Getting Started (PowerPC Cross).rtf
@@ -12,7 +12,7 @@
\f0\b\fs24 \cf0 About & requirements
\f1\b0 \
\
-This package installs the Free Pascal Compiler 3.2.0rc1 for running on Intel to compile PowerPC 32 bit and 64 bit programs. It requires the regular Free Pascal Compiler 3.2.0rc1 for Intel package to be already installed.\
+This package installs the Free Pascal Compiler 3.2.2 for running on Intel to compile PowerPC 32 bit and 64 bit programs. It requires the regular Free Pascal Compiler 3.2.2 for Intel package to be already installed.\
\
This package can be used to compile for\
\pard\tx220\tx720\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\li720\fi-720\pardirnatural\partightenfactor0
@@ -66,7 +66,9 @@ This bug has been
\f0\b Usage
\f1\b0 \
\
-\'95 If you come from Delphi, you may want to check out Lazarus instead for a more familiar environment: {\field{\*\fldinst{HYPERLINK "http://www.lazarus.freepascal.org"}}{\fldrslt http://www.lazarus.freepascal.org/}}. Note that it cannot be used to compile PowerPC 64 bit GUI programs for Mac OS X (64 bit Intel works fine).\
+\'95 If you come from Delphi, you may want to check out Lazarus instead for a more familiar environment: {\field{\*\fldinst{HYPERLINK "http://www.lazarus.freepascal.org"}}{\fldrslt http://www.lazarus.freepascal.org/}}. Note that it cannot be used to compile PowerPC 64 bit GUI programs for Mac OS X (64 bit Intel and ARM64 works fine).\
+\
+\'95 The {\field{\*\fldinst{HYPERLINK "https://wiki.freepascal.org"}}{\fldrslt Free Pascal and Lazarus wiki}} contains a lot of extra information. It also has a {\field{\*\fldinst{HYPERLINK "https://wiki.freepascal.org/Category:macOS"}}{\fldrslt macOS category}}.\
\
\'95 Xcode 4 templates, mainly geared at developing using the Objective-Pascal dialect, can be found at {\field{\*\fldinst{HYPERLINK "http://web.me.com/macpgmr/ObjP/Xcode4/"}}{\fldrslt https://macpgmr.github.io/}}.\
\
diff --git a/install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.packproj b/install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.packproj
new file mode 100644
index 00000000..ac107edd
--- /dev/null
+++ b/install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.packproj
@@ -0,0 +1,895 @@
+
+
+
+
+ Hierarchy
+
+ Attributes
+
+ Documents
+
+ Background Image
+
+ IFPkgFlagBackgroundAlignment
+ 4
+ IFPkgFlagBackgroundScaling
+ 1
+ Mode
+ 0
+ Path
+
+ Path Type
+ 1
+
+ License
+
+ International
+
+ Mode
+ 1
+ Path
+ /Users/jmaebe/fpcinst/license.txt
+ Path Type
+ 1
+
+
+ ReadMe
+
+ International
+
+ Mode
+ 1
+ Path
+ ReadMe.txt
+ Path Type
+ 2
+
+
+ Welcome
+
+ International
+
+ Mode
+ 1
+ Path
+ ppc/Developer/Documentation/Free Pascal Compiler/Getting Started (PowerPC).rtf
+ Path Type
+ 2
+
+
+
+ Files
+
+ Compress
+
+ Hierarchy
+
+ Children
+
+
+ Children
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Utilities
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 80
+ Path
+ Applications
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ bin
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ ppc/Developer
+ Path Type
+ 2
+ Privileges
+ 493
+ Type
+ 3
+ UID
+ 0
+
+
+ Children
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Application Support
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Documentation
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Filesystems
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Frameworks
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Internet Plug-Ins
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ PreferencePanes
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Printers
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Screen Savers
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 80
+ Path
+ Scripts
+ Path Type
+ 1
+ Privileges
+ 509
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 80
+ Path
+ Library
+ Path Type
+ 1
+ Privileges
+ 1021
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+
+ Children
+
+ GID
+ 0
+ Path
+ etc
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ var
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 0
+ Path
+ private
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ sbin
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+
+ Children
+
+
+ Children
+
+ GID
+ 0
+ Path
+ Extensions
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 0
+ Path
+ Library
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 0
+ Path
+ System
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+
+ Children
+
+ GID
+ 0
+ Path
+ bin
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ include
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ lib
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ libexec
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+
+ Children
+
+ GID
+ 0
+ Path
+ ppc/usr/local/bin
+ Path Type
+ 2
+ Privileges
+ 493
+ Type
+ 3
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ ppc/usr/local/lib
+ Path Type
+ 2
+ Privileges
+ 493
+ Type
+ 3
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ ppc/usr/local/man
+ Path Type
+ 2
+ Privileges
+ 493
+ Type
+ 3
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ ppc/usr/local/share
+ Path Type
+ 2
+ Privileges
+ 493
+ Type
+ 3
+ UID
+ 0
+
+
+ GID
+ 0
+ Path
+ local
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ sbin
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ share
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ Children
+
+ GID
+ 0
+ Path
+ standalone
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 0
+ Path
+ usr
+ Path Type
+ 1
+ Privileges
+ 493
+ Type
+ 1
+ UID
+ 0
+
+
+ GID
+ 80
+ Path
+ /
+ Path Type
+ 1
+ Privileges
+ 1021
+ Type
+ 1
+ UID
+ 0
+
+ IFPkgFlagDefaultLocation
+ /
+ Imported Package
+
+ Package Path
+
+ Split Forks
+
+
+ Plugins
+
+ PluginsList
+
+
+ Path
+ Introduction
+ Type
+ 0
+
+
+ Path
+ ReadMe
+ Type
+ 0
+
+
+ Path
+ License
+ Type
+ 0
+
+
+ Path
+ Target
+ Type
+ 0
+
+
+ Path
+ PackageSelection
+ Type
+ 0
+
+
+ Path
+ Install
+ Type
+ 0
+
+
+ Path
+ FinishUp
+ Type
+ 0
+
+
+
+ Scripts
+
+ Additional Resources
+
+ International
+
+
+ Installation Scripts
+
+ IFInstallationScriptsPostflight
+
+ Path
+ /Users/jmaebe/fpcinst/postinstall
+ Status
+
+
+ IFInstallationScriptsPostinstall
+
+ Path
+
+ Status
+
+
+ IFInstallationScriptsPostupgrade
+
+ Path
+
+ Status
+
+
+ IFInstallationScriptsPreflight
+
+ Path
+
+ Status
+
+
+ IFInstallationScriptsPreinstall
+
+ Path
+
+ Status
+
+
+ IFInstallationScriptsPreupgrade
+
+ Path
+
+ Status
+
+
+
+ Requirements
+
+
+ AlertDialog
+
+ International
+
+ MessageKey
+ This package contains only PowerPC binaries, which cannot be used on an Intel-based Macintosh. Install the Intel version of FPC instead (or this is a PowerPC with a frequency lower than 867MHz, in which case you can ignore this warning).
+ TitleKey
+ Wrong System Architecture
+
+
+ LabelKey
+ Wrong System Architecture
+ Level
+ 1
+ SpecArgument
+ sysa
+ SpecTag
+ 2
+ SpecType
+ gestalt
+ Status
+
+ TestObject
+ 2
+ TestOperator
+ =
+
+
+ AlertDialog
+
+ International
+
+ MessageKey
+ You have to install Xcode and its command line tools before installing this package. See http://www.freepascal.org/down/i386/macosx-netherlands.var for information on how to install the command line tools.
+ TitleKey
+ Command Line Tools not installed
+
+
+ LabelKey
+ Xcode command line tools
+ Level
+ 0
+ SpecArgument
+ /usr/lib/crt1.o
+ SpecProperty
+ NSFileSize
+ SpecTag
+ 1
+ SpecType
+ file
+ Status
+
+ TestObject
+ 0
+ TestOperator
+ !=
+
+
+
+ Settings
+
+ Description
+
+ International
+
+ IFPkgDescriptionDeleteWarning
+
+ IFPkgDescriptionDescription
+
+ IFPkgDescriptionTitle
+ fpc-3.0.4.powerpc-macosx
+ IFPkgDescriptionVersion
+ 1.0
+
+
+ Display Information
+
+ CFBundleGetInfoString
+ Free Pascal Compiler 3.2.2 Copyright © 2021 Florian Klaempfl and others
+ CFBundleIconFile
+
+ CFBundleIconFile Path Type
+ 1
+ CFBundleIdentifier
+ org.freepascal.fpc-3-2-2-powerpc-macosx
+ CFBundleName
+ fpc-3.0.4.powerpc-macosx
+ CFBundleShortVersionString
+ 1.0
+
+ Options
+
+ IFPkgFlagAllowBackRev
+
+ IFPkgFlagAuthorizationAction
+ 2
+ IFPkgFlagFollowLinks
+
+ IFPkgFlagIsRequired
+
+ IFPkgFlagOverwritePermissions
+
+ IFPkgFlagRelocatable
+
+ IFPkgFlagRestartAction
+ 0
+ IFPkgFlagRootVolumeOnly
+
+ IFPkgFlagUpdateInstalledLanguages
+
+
+ Version
+
+ IFMajorVersion
+ 1
+ IFMinorVersion
+ 0
+
+
+
+ IFPkgFlagPackageSelection
+ 0
+ Name
+ fpc-3.2.2.powerpc-macosx
+ Status
+ 1
+ Type
+ 1
+
+ Name
+ Project
+ Settings
+
+ 10.1 Compatibility
+
+ Build Path
+ build
+ Build Path Type
+ 2
+ Comment
+
+ Remove .DS_Store
+
+ Remove .pbdevelopment
+
+ Remove CVS
+
+
+
+
diff --git a/install/darwin/macos/fpc-powerpc-macosx/fpc-3.2.0rc1.powerpc-macosx.pkgproj b/install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.pkgproj
similarity index 98%
rename from install/darwin/macos/fpc-powerpc-macosx/fpc-3.2.0rc1.powerpc-macosx.pkgproj
rename to install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.pkgproj
index e1715228..21239822 100644
--- a/install/darwin/macos/fpc-powerpc-macosx/fpc-3.2.0rc1.powerpc-macosx.pkgproj
+++ b/install/darwin/macos/fpc-powerpc-macosx/fpc-powerpc-macosx.pkgproj
@@ -559,7 +559,7 @@
LOCATION
0
NAME
- fpc-3.2.0rc1.powerpc-macosx
+ fpc-3.2.0.powerpc-macosx
OVERWRITE_PERMISSIONS
PAYLOAD_SIZE
@@ -571,7 +571,7 @@
USE_HFS+_COMPRESSION
VERSION
- 1.0
+ 2.0
TYPE
0
@@ -754,9 +754,9 @@
VALUE
PATH
- /Volumes/Data/dev/fpcbuild/install/doc/readme.txt
+ ../fpc-intel-macosx/ReadMe.txt
PATH_TYPE
- 0
+ 1
@@ -774,7 +774,7 @@
LANGUAGE
English
VALUE
- Free Pascal Compiler PowerPC 3.2.0rc1
+ Free Pascal Compiler PowerPC 3.2.0
@@ -866,7 +866,7 @@
BUILD_PATH
PATH
- build
+ build/fpc-3.2.0.powerpc-macosx
PATH_TYPE
1
@@ -1039,7 +1039,7 @@
NAME
- fpc-3.2.0rc1.powerpc-macosx
+ fpc-3.2.0.powerpc-macosx
PAYLOAD_ONLY
TREAT_MISSING_PRESENTATION_DOCUMENTS_AS_WARNING
diff --git a/install/darwin/macos/fpc-powerpc-macosx/ppc/Developer/Documentation/Free Pascal Compiler/Getting Started (PowerPC).rtf b/install/darwin/macos/fpc-powerpc-macosx/ppc/Developer/Documentation/Free Pascal Compiler/Getting Started (PowerPC).rtf
index 2d3158bb..07a30783 100644
--- a/install/darwin/macos/fpc-powerpc-macosx/ppc/Developer/Documentation/Free Pascal Compiler/Getting Started (PowerPC).rtf
+++ b/install/darwin/macos/fpc-powerpc-macosx/ppc/Developer/Documentation/Free Pascal Compiler/Getting Started (PowerPC).rtf
@@ -12,8 +12,8 @@
\f0\b\fs24 \cf0 About & requirements
\f1\b0 \
\
-This package installs the Free Pascal Compiler 3.2.0rc1 for PowerPC. It requires Mac OS X 10.4.0 or later with the Mac OS X Developer Tools (Xcode) installed (partial Xcode installs may work, but are unsupported; in particular, when installing Xcode 3.x or 4.x make sure
-\f0\b not to deselect
+This package installs the Free Pascal Compiler 3.2.2 for PowerPC. It requires Mac OS X 10.4.0 or later with the Mac OS X Developer Tools (Xcode) installed (partial Xcode installs may work, but are unsupported; in particular, when installing Xcode 3.x or 4.x make sure to
+\f0\b not deselect
\f1\b0
\f2\i UNIX Development Support
\f1\i0 ).\
@@ -30,7 +30,9 @@ This package can be used to compile for\
\f0\b \cf0 Usage
\f1\b0 \
\
-\'95 If you come from Delphi, you may want to check out Lazarus instead for a more familiar environment: {\field{\*\fldinst{HYPERLINK "http://www.lazarus.freepascal.org"}}{\fldrslt http://www.lazarus.freepascal.org/}}. Note that currently it cannot yet be used to compile 64 bit GUI programs for Mac OS X.\
+\'95 If you come from Delphi, you may want to check out Lazarus instead for a more familiar environment: {\field{\*\fldinst{HYPERLINK "http://www.lazarus.freepascal.org"}}{\fldrslt http://www.lazarus.freepascal.org/}}.\
+\
+\'95 The {\field{\*\fldinst{HYPERLINK "https://wiki.freepascal.org"}}{\fldrslt Free Pascal and Lazarus wiki}} contains much information. It also has a {\field{\*\fldinst{HYPERLINK "https://wiki.freepascal.org/Category:macOS"}}{\fldrslt macOS category}} (although most of it is probably no longer applicable to PowerPC programming).\
\
\'95 You may also want to check out the Light Weight Pascal IDE, available at {\field{\*\fldinst{HYPERLINK "http://www.ragnemalm.se/lightweight/"}}{\fldrslt http://www.ragnemalm.se/lightweight/}}. It is much easier to use than Xcode and recommended if you do not need all the features offered by Xcode.\
\
diff --git a/install/debian/copyright b/install/debian/copyright
index 0e462c2e..03ecc577 100644
--- a/install/debian/copyright
+++ b/install/debian/copyright
@@ -131,8 +131,6 @@ Files:
demo/graph/mandel.pp
demo/graph/samegame.pp
demo/lister/flist.pas
- demo/lister/flist.pas
- demo/lister/lister.pas
demo/lister/lister.pas
demo/modex/voxel.pp
demo/morphos/ahitest.pas
@@ -153,7 +151,6 @@ Files:
demo/text/magic.pp
demo/text/qsort.pp
demo/unix/cgibmp.pp
- demo/unix/cgibmp.pp
demo/wince/testemu/w32rapi.pp
demo/wince/testemu/wcetemu.pp
demo/wince/testemu/wcetrun.pp
@@ -161,7 +158,6 @@ Files:
fpcdocs/htmwrite8859.pp
fpcdocs/makehtm.pp
fpcsrc/compiler/aarch64/cpuinfo.pas
- fpcsrc/compiler/alpha/cpuinfo.pas
fpcsrc/compiler/arm/cpuinfo.pas
fpcsrc/compiler/avr/cpuinfo.pas
fpcsrc/compiler/ccharset.pas
@@ -190,69 +186,68 @@ Files:
fpcsrc/compiler/utils/mkx86reg.pp
fpcsrc/compiler/utils/msg2inc.pp
fpcsrc/compiler/utils/msgdif.pp
- fpcsrc/compiler/vis/cpuinfo.pas
- fpcsrc/ide/fp.pas
- fpcsrc/ide/fpcalc.pas
- fpcsrc/ide/fpcatch.pas
- fpcsrc/ide/fpcodcmp.pas
- fpcsrc/ide/fpcodtmp.pas
- fpcsrc/ide/fpcompil.pas
- fpcsrc/ide/fpconst.pas
- fpcsrc/ide/fpdebug.pas
- fpcsrc/ide/fpdesk.pas
- fpcsrc/ide/fpdpansi.pas
- fpcsrc/ide/fpevalw.pas
- fpcsrc/ide/fphelp.pas
- fpcsrc/ide/fpide.pas
- fpcsrc/ide/fpini.pas
- fpcsrc/ide/fpintf.pas
- fpcsrc/ide/fpkeys.pas
- fpcsrc/ide/fpmansi.inc
- fpcsrc/ide/fpmcomp.inc
- fpcsrc/ide/fpmdebug.inc
- fpcsrc/ide/fpmedit.inc
- fpcsrc/ide/fpmfile.inc
- fpcsrc/ide/fpmhelp.inc
- fpcsrc/ide/fpmingw.pas
- fpcsrc/ide/fpmopts.inc
- fpcsrc/ide/fpmrun.inc
- fpcsrc/ide/fpmsrch.inc
- fpcsrc/ide/fpmtools.inc
- fpcsrc/ide/fpmwnd.inc
- fpcsrc/ide/fpredir.pas
- fpcsrc/ide/fpregs.pas
- fpcsrc/ide/fpswitch.pas
- fpcsrc/ide/fpsymbol.pas
- fpcsrc/ide/fptemplt.pas
- fpcsrc/ide/fptools.pas
- fpcsrc/ide/fpusrscr.pas
- fpcsrc/ide/fputils.pas
- fpcsrc/ide/fpvars.pas
- fpcsrc/ide/fpviews.pas
- fpcsrc/ide/gplprog.pt
- fpcsrc/ide/gplunit.pt
- fpcsrc/ide/wansi.pas
- fpcsrc/ide/wcedit.pas
- fpcsrc/ide/wchmhwrap.pas
- fpcsrc/ide/wconsole.pas
- fpcsrc/ide/weditor.pas
- fpcsrc/ide/whelp.pas
- fpcsrc/ide/whlpview.pas
- fpcsrc/ide/whtml.pas
- fpcsrc/ide/whtmlhlp.pas
- fpcsrc/ide/whtmlscn.pas
- fpcsrc/ide/winclip.pas
- fpcsrc/ide/windebug.pas
- fpcsrc/ide/wini.pas
- fpcsrc/ide/wnghelp.pas
- fpcsrc/ide/woahelp.pas
- fpcsrc/ide/wos2help.pas
- fpcsrc/ide/wresourc.pas
- fpcsrc/ide/wtphwrit.pas
- fpcsrc/ide/wutils.pas
- fpcsrc/ide/wviews.pas
- fpcsrc/ide/wvphelp.pas
- fpcsrc/ide/wwinhelp.pas
+ fpcsrc/package/ide/fp.pas
+ fpcsrc/package/ide/fpcalc.pas
+ fpcsrc/package/ide/fpcatch.pas
+ fpcsrc/package/ide/fpcodcmp.pas
+ fpcsrc/package/ide/fpcodtmp.pas
+ fpcsrc/package/ide/fpcompil.pas
+ fpcsrc/package/ide/fpconst.pas
+ fpcsrc/package/ide/fpdebug.pas
+ fpcsrc/package/ide/fpdesk.pas
+ fpcsrc/package/ide/fpdpansi.pas
+ fpcsrc/package/ide/fpevalw.pas
+ fpcsrc/package/ide/fphelp.pas
+ fpcsrc/package/ide/fpide.pas
+ fpcsrc/package/ide/fpini.pas
+ fpcsrc/package/ide/fpintf.pas
+ fpcsrc/package/ide/fpkeys.pas
+ fpcsrc/package/ide/fpmansi.inc
+ fpcsrc/package/ide/fpmcomp.inc
+ fpcsrc/package/ide/fpmdebug.inc
+ fpcsrc/package/ide/fpmedit.inc
+ fpcsrc/package/ide/fpmfile.inc
+ fpcsrc/package/ide/fpmhelp.inc
+ fpcsrc/package/ide/fpmingw.pas
+ fpcsrc/package/ide/fpmopts.inc
+ fpcsrc/package/ide/fpmrun.inc
+ fpcsrc/package/ide/fpmsrch.inc
+ fpcsrc/package/ide/fpmtools.inc
+ fpcsrc/package/ide/fpmwnd.inc
+ fpcsrc/package/ide/fpredir.pas
+ fpcsrc/package/ide/fpregs.pas
+ fpcsrc/package/ide/fpswitch.pas
+ fpcsrc/package/ide/fpsymbol.pas
+ fpcsrc/package/ide/fptemplt.pas
+ fpcsrc/package/ide/fptools.pas
+ fpcsrc/package/ide/fpusrscr.pas
+ fpcsrc/package/ide/fputils.pas
+ fpcsrc/package/ide/fpvars.pas
+ fpcsrc/package/ide/fpviews.pas
+ fpcsrc/package/ide/gplprog.pt
+ fpcsrc/package/ide/gplunit.pt
+ fpcsrc/package/ide/wansi.pas
+ fpcsrc/package/ide/wcedit.pas
+ fpcsrc/package/ide/wchmhwrap.pas
+ fpcsrc/package/ide/wconsole.pas
+ fpcsrc/package/ide/weditor.pas
+ fpcsrc/package/ide/whelp.pas
+ fpcsrc/package/ide/whlpview.pas
+ fpcsrc/package/ide/whtml.pas
+ fpcsrc/package/ide/whtmlhlp.pas
+ fpcsrc/package/ide/whtmlscn.pas
+ fpcsrc/package/ide/winclip.pas
+ fpcsrc/package/ide/windebug.pas
+ fpcsrc/package/ide/wini.pas
+ fpcsrc/package/ide/wnghelp.pas
+ fpcsrc/package/ide/woahelp.pas
+ fpcsrc/package/ide/wos2help.pas
+ fpcsrc/package/ide/wresourc.pas
+ fpcsrc/package/ide/wtphwrit.pas
+ fpcsrc/package/ide/wutils.pas
+ fpcsrc/package/ide/wviews.pas
+ fpcsrc/package/ide/wvphelp.pas
+ fpcsrc/package/ide/wwinhelp.pas
fpcsrc/installer/install.pas
fpcsrc/installer/insthelp.pas
fpcsrc/installer/scroll.pas
diff --git a/install/doc/faq.htm b/install/doc/faq.htm
index 7d9a0981..ca64010e 100644
--- a/install/doc/faq.htm
+++ b/install/doc/faq.htm
@@ -1,7 +1,10 @@
+
+
+
-
+
Free Pascal - Knowledge base
@@ -17,12 +20,12 @@ FAQ / Knowledge base
This document gives last minute information regarding the compiler. Furthermore,
it answers frequently asked questions and gives solutions to common problems
found with Free Pascal. The information presented herein always supersedes those
- found in the Free Pascal documentation.
+ found in the Free Pascal documentation.
For more comprehensive information on the pascal language, and the runtime library
- calls, consult the Free Pascal manuals. Topics covered in this document :
+ calls, consult the Free Pascal manuals. Topics covered in this document :
@@ -65,14 +68,14 @@ FAQ / Knowledge base
- Calling C functions
- Integrated Assembler syntax
- Unit system not found errors
-
- There is a new language extension that would be really useful. Will you include it?
+
- There is a new language extension that would be really useful. Will you include it?
Runtime library related information
- - Why do I get wrong colors when using the graph unit?
+
- Why do I get wrong colours when using the graph unit?
- File sharing and file locks
- File denied errors when opening files with reset
@@ -100,7 +103,7 @@ FAQ / Knowledge base
Libc is missing on platforms other than i386
Why can't the linker find "vga"?
Compiler indicates missing as and ld
- An error occurred while linking, or "did you forget -T?"
+ link.res syntax error, or "did you forget -T?"
OS/2-related information
@@ -109,7 +112,9 @@ FAQ / Knowledge base
- Dynamic libraries
- Profiling
- Using DOS generated applications under OS/2
-
- INSTALL.EXE complains about a missing TZ variable under OS/2
+
- INSTALL.EXE of version 1.0.6 or below returns an unknown error (-1) under OS/2
+
or
+ INSTALL.EXE of version 1.0.6 or above complains about missing TZ variable under OS/2
- OS/2 compiler not working after upgrading to 1.9.6 or newer
- Compilation under OS/2 fails with error "Can't call the assembler"
@@ -162,18 +167,18 @@ FAQ / Knowledge base
What is Free Pascal (FPC)?
- Originally named FPK-Pascal, the Free Pascal compiler is a 16,32
+
Originally named FPK-Pascal, the Free Pascal compiler is a 16, 32
and 64 bit Turbo Pascal and Delphi compatible Pascal compiler for
Linux, Windows, OS/2, FreeBSD, Mac OS X, DOS and
several other platforms (the number of supported targets grows
all the time, although not all of them are on the same level as
the main ones).
-
+
The Free Pascal compiler is available for several
- architectures: x86 (16,32 and 64 bit), ARM, PowerPC (32 and 64 bit),
+ architectures: x86 (16, 32 and 64 bit), ARM, PowerPC (32 and 64 bit),
SPARC (v8, v9), Java Virtual Machine (under development) and MIPS (little and big endian, under development).
An older version (the 1.0 series) and current development versions also supported m68k.
-
+
The compiler is written in Pascal and is able to compile its
own sources. The source files are distributed under the GPLv2+ and included.
@@ -197,19 +202,20 @@
What is Free Pascal (FPC)?
11/2010: 2.4.2 released
05/2011: 2.4.4 released
01/2012: 2.6.0 released
- 02/2013: 2.6.2 released
+ 02/2013: 2.6.2 released
03/2014: 2.6.4 released
- 01/2015: 3.0.0 released
- 02/2017: 3.0.2 released
- 11/2017: 3.0.4 released
- 04/2020: 3.2.0 released
+ 11/2015: 3.0.0 released
+ 02/2017: 3.0.2 released
+ 11/2017: 3.0.4 released
+ 06/2020: 3.2.0 released
+ 05/2021: 3.2.2 released
-
+
Which versions exist, and which one should I use?
- The latest official version is 3.2.0, the first release in the 3.2.x series.
+
The latest official version is 3.2.2, the first minor update in the 3.2.x series.
New development is performed in the 3.3.x series, which will eventually
be released as 3.4.0 or 4.0.0, depending on milestones achieved.
@@ -222,7 +228,7 @@
Modern versioning
With the release of 1.0, the version numbering was
slightly changed to a system resembling one used for the Linux
- kernels.
+ kernels.
@@ -234,13 +240,14 @@ Modern versioning
2.0 release were numbered 2.0.x, fixes to the 2.2 release 2.2.x, fixes to the 2.4 release as 2.4.x etc
The new development version after the 2.4.0 release was numbered 2.5.x
and so on.
- Repackagings that affect sources are indicated with a single letter as
+ Repackagings that affect sources are indicated with a single letter as
suffix (e.g. 2.0.4a). This is usually the case for platforms that weren't part of the original release round.
- The stable branch (currently fixes_3_2, previously fixes_3_0)
- always has an odd last number (3.0.1, 3.0.3 and 3.2.1). Compilers
- with such versions are snapshots, and e.g. a snapshot with 3.0.3
- can be anywhere between 3.0.2 and the moment 3.0.4 branched off.
- After 3.2.0, the stable branch's number was updated to 3.2.1 etc.
+ The stable branch (currently, fixes_3_0, previously fixes_2_6) always has an odd last number (2.6.1, 2.6.3 and 3.0.1).
+ Compilers with such versions are snapshots, and e.g. a snapshot with 2.6.1 can
+ be anywhere between 2.6.0 and the moment 2.6.2 branched off (Jan 2013). Likewise,
+ after the release of 2.6.2 the fixes_2_6 branch identified itself as version 2.6.3 till 2.6.4 branched off (typically
+ two months before its release). After 2.6.4, the stable branch's number was updated to 2.6.5,
+ after 3.0.2 to 3.0.3 etc.
@@ -279,12 +286,12 @@
Free Pascal and GNU Pascal - a comparison
compiler on as many platforms as possible. GNU Pascal tries to
implement a portable pascal compiler based on POSIX.
Version:
- Currently, Free Pascal is at version 3.2.0 (April 2020). GNU Pascal is stopped
+ Currently, Free Pascal is at version 3.2.2 (May 2021). GNU Pascal is stopped
version 2.1 (from 2002, which can be built with several different GCC's as backend;
their Mac OS X version is an exception though, as it follows the GCC version number).
Tracking:
Between releases, development versions of FPC are available through daily snapshots
- and the source via SVN. GPC issues a set of patches to the last version a few times
+ and the source via SVN. GPC issues a set of patches to the last version a few times
a year, and there are regular snapshot for OS X and Windows, made by users.
Operating systems:
Free Pascal runs on a large number of platforms,
@@ -297,16 +304,16 @@ Free Pascal and GNU Pascal - a comparison
GNU Pascal runs basically on any system that supported by GCC, and for which the build process was verified.
Bootstrapping:
FPC requires a suitable set of binutils (AS, AR, LD) on some platforms, GNU make and a command line bootstrap compiler. New architectures/OSes are cross-compiled.
- GPC bootstraps via a suitable version of GCC, and requires a full set of binutils, flex, bison, gmake, a POSIX shell and libtool
+ GPC bootstraps via a suitable version of GCC, and requires a full set of binutils, flex, bison, gmake, a POSIX shell and libtool
Sources:
Free Pascal is entirely written in Pascal, while GNU Pascal is written in C (it's an adaptation of the GNU
C compiler)
Language:
- Free Pascal supports the Borland Pascal dialect,
+ Free Pascal supports the Borland Pascal dialect,
implements the Delphi Object Pascal language, Objective-Pascal and has some support for ISO 7185 Pascal and Mac Pascal extensions.
GNU Pascal supports ISO 7185, ISO 10206 and (most of) Borland Pascal 7.0
Extensions:
- Free Pascal implements method, function and operator overloading (later Delphi versions have also added these, so strictly they are not extensions anymore).
+ Free Pascal implements method, function and operator overloading (later Delphi versions have also added these, so strictly they are not extensions anymore)
GNU Pascal implements operator overloading.
License:
Both compilers come under the GNU GPL.
@@ -324,8 +331,8 @@ License and copyright information
library (RTL) come under a modified Library GNU Public License (LGPL).
This license does not impose any kind of license on the created applications. It is therefore possible to create closed source
or proprietary software using the Free Pascal Compiler.
-
- The following exception has been added to the LGPL variant
+
+
The following exception has been added to the LGPL variant
that applies to the FPC RTL:
As a special
exception, the copyright holders of this library give you
permission to link this library with independent modules to
@@ -356,14 +363,14 @@ License and copyright information
The compiler source code, on the other hand, comes under
the GNU General Public License, which means that the compiler
source can only be used in software projects that are distributed
- under a compatible license (or that are not distributed at all).
+ under a compatible license (or that are not distributed at all).
Getting the compiler
The latest official stable Free Pascal release is available for download
- from all official mirrors
+ from all official mirrors
@@ -371,7 +378,7 @@ Free Pascal installation hints
- Do not install the compiler in a directory that has spaces
- in its name, since some of the compiler tools do not like these
+ in its name, since some of the compiler tools do not like these
@@ -383,7 +390,7 @@ Why do i have to supply a user name and password to get Free Pascal ?
You are trying to login to an ftp site. You have to use the login name
"anonymous" and your e-mail address as your password.
-
+
Access denied error when connecting to the Free Pascal FTP site
@@ -394,26 +401,27 @@ Access denied error when connecting to the Free Pascal FTP site
this limit has been reached. The solution is either to wait and
retry later, or better still use one of the Free Pascal mirror sites.
-
+
I want a new version NOW
+
In the time between the release of new official versions, you can
have a look at and test developer versions (so-called "snapshots"). Be
warned though: this is work in progress, so in addition to old bugs
- fixed and new features added, this may also contain new bugs.
+ fixed and new features added, this may also contain new bugs.
Snapshots are generated automatically each night from the current
source at that moment. Sometimes this may fail due to bigger changes not
yet fully implemented. If your version does not work, try again one or
- two days later.
+ two days later.
The latest snapshot can always be downloaded from the development
- web page.
-
-
+ href="http://www.freepascal.org/develop.html#snapshot">development
+ web page.
+
+
Installing a snapshot
@@ -423,9 +431,9 @@ Installing a snapshot
program directory of the last official version of Free Pascal (after
making a backup of the original, of course). You can also extract it into
an empty directory and then move the files to the program directory,
- overwriting existing files.
+ overwriting existing files.
-
+
I have to write a program for homework. Can you help?
@@ -434,7 +442,7 @@ I have to write a program for homework. Can you help?
No. Please, don't send us mail about homework, we are no teachers.
The Free Pascal development team tries to give good support for the Free
Pascal compiler and are trying to always reply to emails. If we get
- emails like this, this becomes harder and harder.
+ emails like this, this becomes harder and harder.
@@ -445,7 +453,7 @@ How do I make a real Windows application with windows and menu bars?
It won't be just a Windows application, it will also work under Linux, FreeBSD and
Mac OS X.
-
+
How do I make a game with Free Pascal? Can I make a game like Doom 3?
@@ -460,7 +468,7 @@ How do I make a game with Free Pascal? Can I make a game like Doom 3?
The Sheep Killer is a very simple game and it should not be
very hard to understand its code.
-
+
Getting more information when an application crashes
@@ -472,7 +480,7 @@ Getting more information when an application crashes
functions in the backtrace with their real name, you have to recompile
the RTL with -gl too.
For more comprehensive checking, compile the
- program with debugging information (use the -g command line option)
+ program with debugging information (use the -g command line option)
Load the program in the debugger gdb --directory=<src dirs> myprog.exe
Notes:
- Under UNIX systems (Linux, the BSD's), don't add the ".exe" after myprog
@@ -500,22 +508,22 @@
Getting more information when an application crashes
-
-
Compiler seems to skip files in directories that -Fu points to
+ Compiler seems to skip files in directories -Fu points to
This sometimes happens with installation/compilation scripts if the
copying command doesn't preserve dates. The object files get older than
the PPU file, and the compiler tries to recompile them. A simple touch
- will solve it.
+ will solve it.
Also note that FPC, contrary to Turbo Pascal keeps track of include files. Modified
include files or duplicate names can trigger an attempt to recompile.
-
+
-
Why are the generated binaries so big?
- There are several reasons and remedies for this:
+ There are several reasons and remedies for this:
-
@@ -523,23 +531,23 @@
Why are the generated binaries so big?
the generation of smartlinkable units, use the -CX command
line option when compiling your units. To turn on
the linking of previously generated smarlinkable units, use the -XX
- command line option when compiling a program.
+ command line option when compiling a program.
- Normally, all symbol information is included in the resulting
program (for easier debugging). You can remove this by using the -Xs
command line option when compiling your program (it will not do
anything when compiling units)
- Turn on optimisations, both for supplied packages (RTL, FV, FCL)
- and for your own code, this will also decrease the code size.
+ and for your own code, this will also decrease the code size.
Generally Free Pascal generates smaller binaries than modern competing compilers,
however, it does not hide code in large dynamic libraries. Free Pascal generates
larger binaries than compilers from long ago do. Large framework libraries result
in larger executables.
-
+
See also the Size Matters wiki entry.
-
+
-
@@ -547,7 +555,7 @@
Runtime errors
When an application generated by FPC terminates in an abnormal way,
it is very likely that a runtime error will be
- generated. These errors have the form :
+ generated. These errors have the form :
Runtime error 201 at $00010F86
@@ -560,7 +568,7 @@ Runtime errors
described in the Free Pascal user's manual, Appendix D. The
hexadecimal numbers represent the addresses on the call stack when the error occured.
-
+
-
Standard units
@@ -572,27 +580,29 @@ Standard units
- -
+-->
+
+
+
-
Debugging smartlinked code does not fully work
Debugging smart linked code might not work correctly. This is
due to the fact that no type information is emitted for
smartlinked code. If this would not be done, the files
would become enormous.
-
+
While debugging, it is not recommended to use the
smartlinking option.
-
+
-
+
-
@@ -615,22 +625,22 @@
Cannot compile a program using a binary-only version of a unit
incompatibility in the PPU file format (which can change across
compiler versions), or by a change in one of the units of the RTL
that has changed in between releases.
-
+
To get more information, compile the code using the -vtu (show tried and used unit information)
compiler switch, and the unit loading phase will be displayed. You might
discover that the unit being loaded requires to be recompiled because one
of the unit it uses has changed.
-
+
If you plan on distributing a module without the source code, the binaries
should be compiled and made available for all versions of the compiler you
wish to support, otherwise compilation errors are bound to occur.
-
-
+
+
-
Will you support ISO Extended Pascal?
@@ -661,8 +671,8 @@ What about .NET?
academic curiousity (mainly because it could be a pilot for a
generalized backend creating bytecode) there are however several
problems with .NET in combination with FPC:
-
-
+
+
-
Pascal is a language that uses pointers, and existing codebases
can only be unmanaged. Unmanaged code is not portable under .NET,
@@ -687,11 +697,11 @@
What about .NET?
ASP.NET does not help either. This makes porting existing code
less useful (since ASP.NET is tied to IIS), and new codebases of
portable code can be set in nearly every language
-
+
- Operating System dependant code would not work anymore, since
- the Win32/64 interface is unmanaged.
+ the Win32/64 interface is unmanaged.
-
+
So effectively this means that for FPC to benefit from .NET you
would have to significantly adapt the language (thus compiler) and
libraries, and be incompatible with the existing native sourcecode.
@@ -709,47 +719,47 @@
What about .NET?
codegenerator, and maybe some base libraries) and if the work is
suitable for inclusion in FPC (a very big if), we will of course
include it.
-
+
Since support for generating JVM bytecode has been added to the
compiler, such a project may be more realistic now than it has been
in the past. Many of the caveats mentioned above still hold though:
language compatibility is not 100% and most standard units will have
to be reimplemented.
-
+
Pascal language related information
-
-
Considerations in porting to other processors
+ Considerations in porting code to other processors
Because the compiler supports multiple processor architectures, it
is important to take a few precautions so that your code will execute
- correctly on all processors.
+ correctly on all processors.
- Limit your use of asm statements unless it is time critical code
- Try not to rely on the endianness of the specific machines when performing operations depending on data layout. In particular, reading and writing binary data
to/from files will probably require byte swaps across different endianness
- machines (swapendian is your friend in this case). Freepascal defines
+ machines (swapendian is your friend in this case). Freepascal defines
FPC_LITTLE_ENDIAN or FPC_BIG_ENDIAN to indicate the
- target endianness.
+ target endianness.
- Try limiting your local variables in subroutines to 32K, as this
is the limit of some processors. Use dynamic allocation instead.
- Try limiting the size of parameters passed to subroutines to 32K,
as this is the limit of some processors. Use const or var parameters
- where appropriate.
-
- CPU16,CPU32 or CPU64 is defined indicating
- whether the target is a 16,32-bit or 64-bit cpu. This can help with
- incorporating 16,32-bit and 64-bit specific code.
-
+ where appropriate.
+
- CPU16,CPU32 or CPU64 is defined indicating
+ whether the target is a 16-bit, 32-bit or 64-bit cpu. This can help with
+ incorporating 16-bit, 32-bit and 64-bit specific code.
+
- Use the ptruint type when declaring an ordinal that will store
a pointer, since pointers can be either 32-bit or 64-bit depending on
the processor and operating system. For 16-bit it is memory model dependent.
-
+
-
@@ -758,13 +768,13 @@
Considerations in porting code to other operating systems
Because the compiler supports several different operating systems,
is important to take a few precautions so that your code will execute
- correctly on all systems.
+ correctly on all systems.
- File sharing is implemented differently on different operating
systems, so opening already opened files may fail on some operating
systems (such as Windows). The only correct way to make sure to
have the same file sharing behavior is to use the I/O routines
- provided by the sysutils unit.
+ provided by the sysutils unit.
- Clean up at the end of your program, i.e. close all files on exit, and
release all allocated heap memory, as some operating systems do not like it
when some things are left allocated or opened.
@@ -773,13 +783,13 @@
Considerations in porting code to other operating systems
local variables. Limiting total stack space usage at a given moment to
at most 256 KBytes will make porting easier.
- Do not hardcode paths to files, try to use relative paths
- instead
+ instead
- Use the following constants (defined in the system unit)
to get information on files, line endings, and to build paths:
- LineEnding : Indicates the characters which end a text line
- LFNSupport : Indicates if long filenames are supported (more than 8.3 characters)
-
- DirectorySeparator : The character or characters that separate path components
+
- DirectorySeparator : The character or characters that separate path components
- DriveSeparator : The character that separates the drive specification from the rest
of the path
- PathSeparator : The character that separates directories in the path lists (such as the search path)
@@ -788,10 +798,10 @@
Considerations in porting code to other operating systems
It is also possible to use the PathDelim, PathSep and DriveDelim constants
defined in the sysutils unit.
-
+
-
+
-
@@ -800,8 +810,8 @@
Compiling Delphi code using Free Pascal
The compiler supports Delphi-style classes. Make sure you use the -S2 or
-Sd command line switches (see the manuals for the meaning of these switches), or add {$mode objfpc} or {$mode delphi} to your source code. For a
- list of Delphi incompatibilities also check the manual.
-
+ list of Delphi incompatibilities also check the manual.
+
-
Building a unit
@@ -814,8 +824,8 @@ Building a unit
file, whose precise structure depends on the assembler you used). To use
this unit in another unit or program, you must include its name in the
USES clause of your program.
-
-
+
+
-
Compiling the system unit
@@ -824,14 +834,14 @@ Compiling the system unit
To recompile the system unit, it is recommended to have GNU make
installed. typing 'make' in the rtl source directory will then recompile
all RTL units including the system unit. You may choose to descend into
- the directory of your OS (e.g. rtl/linux) and do a 'make' there.
+ the directory of your OS (e.g. rtl/linux) and do a 'make' there.
It is possible to do all this manually, but you need more detailed
- knowledge of the RTL tree structure for that.
-
+ knowledge of the RTL tree structure for that.
+
-
-
How does procedure overloading work?
+ How does function overloading work?
Here is a procedure overloading example in FPC or ObjFPC mode:
@@ -855,7 +865,7 @@
How does procedure overloading work?
the interface part. If you leave one out, the compiler will complain
with a 'This overloaded function can't be local' message. Overloaded
functions must differ in their parameters; it is not enough if only their
- return types are different.
+ return types are different.
-
@@ -866,10 +876,10 @@
Calling C functions
by the GNU C compiler (GCC). E.g., for calling the
C function strcmp, declare the following (the cint type is
declared in the ctypes unit):
-
+
function strcmp(s1 : pchar;s2 : pchar) : cint;cdecl;external;
-
+
-
@@ -881,7 +891,7 @@
Integrated Assembler syntax
different assembler styles.
A description of the AT&T syntax can be found in the GNU
- Assembler documentation.
+ Assembler documentation.
@@ -890,10 +900,10 @@
Unit system not found errors
System is Pascal's base unit and is implicitly used by all programs.
This unit defines several standard procedures and structures, and must be found to
- be able to compile any Pascal program by FPC.
+ be able to compile any Pascal program by FPC.
The location of the system and other unit files is passed on to the
- compiler by the -Fu switch. This switch can be specified on the command line, but is usually located in the fpc.cfg configuration file.
+ compiler by the -Fu switch. This switch can be specified on the command line, but is usually located in the fpc.cfg configuration file.
If the compiler cannot find this unit, there are three possible causes:
@@ -908,13 +918,13 @@ Unit system not found errors
versions (this can e.g. happen if you try to use a snapshot
compiler while the -Fu statement in the used fpc.cfg still points to
- the RTL that came with the official release compiler).
+ the RTL that came with the official release compiler).
A handy trick can be executing "fpc programname -vtu". This will show
where the compiler is currently looking for the unit files. You
might want to pipe this through more (Dos, OS/2, Windows) or less
- (UNIX), since it can generate more than one screen information:
+ (UNIX), since it can generate more than one screen information:
@@ -923,7 +933,7 @@ Unit system not found errors
-
+
-
There is a new language extension that would be really useful. Will you include it?
@@ -934,21 +944,21 @@ There is a new language extension that would be really useful. Will you incl
"worth" the trouble. The most important pre-selection criteria are:
- Compatibility must not be compromised in any way. Existing
- codebases on at least the Pascal level must keep
+ codebases on at least the Pascal level must keep
running. This is often more difficult than most people
think.
- The extension must have real value. Anything that is only
- a shorter notation does not apply, unless it is
+ a shorter notation does not apply, unless it is
out of compatibility with an existing Pascal/Delphi
codebase. Practically it means it must make something
possible that cannot be done otherwise or be a compatibility
- item
-
- The change must fit in with the scope of the project:
+ item
+
- The change must fit in with the scope of the project:
implementing a Pascal compiler with support for RAD
and a generic DB system. This excludes features like
inline SQL, and large garbage collected object frameworks.
-
-
+
+
Exceptions to the second rule are sometimes made for
platform-specific reasons (e.g. interfacing to some other language or
OS). The first rule is often a problem, because issues are not
@@ -960,14 +970,14 @@ There is a new language extension that would be really useful. Will you incl
- how you would implement it?
- many examples of typical use, and tests for possible problem
cases
-
+
Try to be verbose and really try to view this from the viewpoint
of somebody who has to implement it, and try to make examples
that span multiple units and procedures, and review what happens.
Be critical, try to punch holes in your
own reasoning and find possible problematic cases, and document
- them.
-
+ them.
+
Besides these pre-selection rules and documentation, the other
important question is who is going to do the work. Keep in mind
@@ -978,7 +988,7 @@
There is a new language extension that would be really useful. Will you incl
not willing to implement it yourself, submit patches and maintain
it in the future,
chances are slim. Remarks as "this will attract a lot of
- users because..." are considered with a lot of scepsis, since
+ users because..." are considered with a lot of scepticism, since
that applies to any new development.
@@ -993,9 +1003,9 @@ Using the graph unit with Free Pascal
Since version 1.0, we have a completely platform independent way
of selecting resolutions and bitdepths. You are strongly encouraged to
use it, because other ways will probably fail on one or other platform.
- See the documentation of the graph unit for more information.
+ See the documentation of the graph unit for more information.
--->
+-->
Why do I get wrong colours when using the graph unit?
@@ -1003,20 +1013,20 @@ Why do I get wrong colours when using the graph unit?
If you use detect as graphdriver, you will end up with the
highest supported bitdepth. Since the graph unit currently only supports
up to 16 bits per pixel modes and since this bitdepth is supported by
- virtually all graphics cards, you will most likely get a 16 bit mode.
+ virtually all graphics cards, you will most likely get a 16 bit mode.
The main problem is that in 16 (and 15, 24, 32, ...) bit modes, the
colors are not set anymore using an index in a palette (the palettized
way is called "indexed color"). In these modes, the color number itself
determines what color you get on screen and you can not change this color.
The color is encoded as follows (for most graphics cards on PC's at
- least):
+ least):
- 15 bit color: lower 5 bits are blue intensity, next come 5 bits of
green and then 5 bits of red. The highest bit of the word is ignored.
- 16 bit color: lower 5 bits are blue intensity, next come *6* bits
- of green and then 5 bits of red.
+ of green and then 5 bits of red.
This means that either you have to rewrite your program so it can
@@ -1025,9 +1035,9 @@
Why do I get wrong colours when using the graph unit?
will ensure that you end up with a 256 (indexed) color mode. If there
are no 256 color modes supported, then graphresult will contain the
value GrNotDetected after you called InitGraph and you can
- retry with graphdriver D4BIT.
+ retry with graphdriver D4BIT.
-
+
File sharing and file locks
@@ -1036,40 +1046,40 @@ File sharing and file locks
files in the default sharing mode of the operating system
(system, objects units). Because of this, you
might get problems if the file is opened more than once either
- by another process or the same process.
+ by another process or the same process.
Generally the behaviors for the different operating
- systems are as follows :
+ systems are as follows :
- - UNIX systems : There is no verification at all.
-
- Windows : An access denied error will be reported.
+
- UNIX systems : There is no verification at all.
+
- Windows : An access denied error will be reported.
- DOS / OS/2 : If the file is opened more than once by
the same process, no errors will occur, otherwise an
- access denied error will be reported.
+ access denied error will be reported.
There are two ways to solve this problem:
- Use specific operating system calls (such as file locking
- on UNIX systems) to get the correct behavior.
+ on UNIX systems) to get the correct behavior.
- Use the sysutils unit or the Free Component Library
TFileStream File I/O routines, which try
- to simulate, as much as possible, file sharing mechanisms.
+ to simulate, as much as possible, file sharing mechanisms.
-
+
File denied errors when opening files with reset
Trying to open files using reset on non-text files
- might cause a Runtime Error 5 (Access denied).
+ might cause a Runtime Error 5 (Access denied).
All files opened using the above system unit routine use the current
filemode value to determine how the file is opened. By
default, filemode is set to 2 (Read/Write access).
-
+
So, a call to reset on non-text files does not
indicate that the file will be opened read-only. So, trying to open a file
@@ -1077,7 +1087,7 @@
File denied errors when opening files with reset
filemode should be set to 0 (Real-only access) before
calling reset to solve this problem. A sample solution
is shown below.
-
+
const
@@ -1109,22 +1119,22 @@ File denied errors when opening files with reset
Windows-related information
- -
+
-
Releasing software generated by the windows compiler
There is no special requirements for releasing software
for the Windows platform, it will work directly out of the box. The following
- are default for the Windows platform:
+ are default for the Windows platform:
- - Stack size is unlimited
-
- The stack checking option is not available on this platform.
+
- Stack size is unlimited
+
- The stack checking option is not available on this platform.
-
+
-
-
+
-
Debugging
The GNU debugger v6.4 and later have been tested, and generally work as
@@ -1132,11 +1142,11 @@
Debugging
represented as they should. It is suggested to use the text mode IDE instead of GDB,
which is available for windows targets.
-
+
-
-
+
-
Dynamic libraries
Creation and use of shared libraries (also called dynamic link libraries) is
@@ -1144,19 +1154,19 @@
Dynamic libraries
more information on shared library creation and use.
-
-
- -
+
+
+
-
Profiling
- Profiling is supported using gprof.
- It requires mingw to be installed, and that fpc.cfg points to the
- correct library paths.
+
Profiling is supported using gprof.
+ It requires mingw to be installed, and that fpc.cfg points to the
+ correct library paths.
-
-
-
+
+
-
Graph and problems with keyboard, mouse and "dummy dos windows"
Problem:
@@ -1182,32 +1192,32 @@
Graph and problems with keyboard, mouse and "dummy dos windows"
- Set the application type to GUI:
{$apptype GUI}
and put this line before your programs InitGraph statement:
ShowWindow(GetActiveWindow,0);
-
This will hide the dos window window.
+ This will hide the dos window window.
-
Some of the demos (like fpctris) use these techniques
+
Some of the demos (like fpctris) use these techniques
-
-
-
Cygwin binary directory in your path sometimes causes strange problems
+ -
+
Cygwin binary directory in your path sometimes causes builds to fail
The mingw make tool seems to look for a "sh.exe", which it
finds when the cygwin binary directory is in the path. The
way directories are searched changes, and the build process dies.
-
+
Solution: do not put cygwin in your global path for now, only
add it when needed. Efforts are made to work around this.
-
-
Possible untested workaround: add mingw sh.exe to a directory before
+
+
Possible untested workaround: add mingw sh.exe to a directory before
the cygwin binary directory in the path
-
-
-
+
+
-
Using the DOS compiler under Windows 95
There is a problem with the DOS (GO32V2) compiler and Windows 95 on
@@ -1217,10 +1227,10 @@
Using the DOS compiler under Windows 95
some time). If this works you will be able to get the compiler to work
by recompiling it with a smaller heap size, perhaps 2 or 4 MB
(option -Chxxxx).
-
-
+
+
- -
+
-
Using DOS generated applications under windows
Several problems have been found running DOS software
- under certain versions of Windows (NT / 2000 / XP). These
+ under certain versions of 32-bit MS Windows (NT / 2000 / XP). These
seem to be problems with the DOS emulation layers (emulated
DPMI services or the Go32 extender). These problems may not occur with all software
generated by FPC. Either applications should be tested on these systems
- before being released, or Windows versions should be generated instead.
+ before being released, or Windows versions should be generated instead. Note that no
+ DOS applications may be used under 64-bit versions of MS Windows - this is a general
+ restriction due to DOS emulation not being provided for these MS Windows versions.
+ You might be able to use these applications under DosBox emulation, but it is not
+ officially supported / tested by the FPC team.
-
-
+
-
The mouse cursor does not respond in the Windows IDE
In windowed mode, the IDE might not respond to
@@ -1254,47 +1268,50 @@
The mouse cursor does not respond in the Windows IDE
response problems.
-
+
+
UNIX-related information
This section also applies to most UNIX variants, such as
Linux, FreeBSD and Mac OS X.
+
+
- -
+
-
Releasing software generated by the UNIX compilers
- - There is no stack space usage limit.
-
- Stack checking is simulated.
+
- There is no stack space usage limit.
+
- Stack checking is simulated.
- Minimal operating system versions :
- - Linux : Kernel v2.4.x or later.
+
- Linux : Kernel v2.4.x or later.
- FreeBSD : version 5.x or later. (4.x can be made to work with minor work)
-
- NetBSD : version 1.5 or later.
+
- NetBSD : version 1.5 or later.
- Solaris : version 5.7 of SunOS or later
- (should work with earlier versions, but untested).
+ (should work with earlier versions, but untested).
- Mac OS X : version 10.4 or later (Intel), or 10.3.9 or later (PowerPC)
-
+
-
+
-
-
+
-
Debugging
The GNU debugger v6.5 and later have been tested, and generally work as
they should. Because the GNU debugger is C oriented, some pascal types might not be represented as they should.
-
+
-
-
+
-
Dynamic libraries
Creating dynamic libraries under UNIX-like operating systems is supported.
@@ -1302,29 +1319,29 @@
Dynamic libraries
Importing code from shared libraries does work as expected though, since
it does not require usage of position independant code.
-
-
-
-
-
+
+
+
+
-
Profiling
-
+
Profiling is supported using gprof under linux,
FreeBSD and NetBSD, the latter two only since 1.0.8. On other
other UNIX-like operating systems, profiling is currently not
supported.
-
-
-
-
+
+
+
-
Libc is missing on platforms other than Linux/i386
Libc is a Kylix compatibility unit. Because it contains many
- i386 specific code and features structures from legacy kernels,
+ i386 specific code and features structures from legacy kernels,
it has not been made available on other platforms.
To access UNIX functionality, please use units like baseunix
and unix.
-
-
+
-
Why can't the linker find "vga"?
This error typically looks like this:
@@ -1342,45 +1359,52 @@ Why can't the linker find "vga"?
This error is not an error in the installation of FPC or FPC itself,
but a missing Svgalib library in your UNIX install. Please install the
- required library using your favourite package manager tool
-
+ required library using your favourite package manager tool
+
-
-
+
-
Compiler indicates missing as and ld
Normally UNIX systems have the assembler (as) and linker
(ld) pre-installed and already in the search path. That is
- the reason why these tools are not supplied with the compiler.
+ the reason why these tools are not supplied with the compiler.
If the compiler cannot find these tools, either they are not in
your search path, or they are not installed. You should either add the
path where the tools are located to your search path, and / or you
- should install these tools.
+ should install these tools.
-
-
-
An error occurred while linking, or "did you forget -T?"
+ -
+
link.res syntax error, or "did you forget -T?"
- There is a bug in GNU LD 2.19 and 2.19.1 that causes it to crash
- when processing FPC-generated linker scripts. This bug has been fixed
- in the mean time.
+ There was a bug in GNU LD 2.19 that caused it to crash
+ when processing FPC-generated linker scripts. This bug has been fixed in
+ GNU LD 2.19.1.
- At the same time, LD has been modified to emit a warning of the form
+
At the same time, LD has been modified to emit a warning of the form
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
- This warning is benign, and FPC intentionally does not pass -T to LD. The reason
- is that if -T is used, LD's internal linker script is ignored and only
- FPC's linker script is used. Such linker scripts also contain paths to
- libraries however, and if we would ignore the internal linker script then
- LD would no longer find libraries in distribution-specific directories.
+ FPC 3.1.1 and later by default generate a different kind of linker script
+ that no longer triggers this warning. Unfortunately, this is only possible by
+ making use of functionality that is unavailable before GNU LD 2.19. Earlier
+ versions therefore now complain about a syntax error in link.res. The new
+ -X9 compiler command line parameter can, however, be used to
+ generate linker scripts that are compatible with pre-2.19 linker versions.
+
+ Their is no way to remove the -T warning with earlier FPC versions, but it
+ should not result in any problems.
+
+
OS/2-related information
+
- -
+
-
Releasing software generated by the OS/2 compiler
The OS/2 compiler version 1.0.x and before is based on EMX, therefore
@@ -1399,23 +1423,23 @@
Releasing software generated by the OS/2 compiler
with an error 'Cannot find EMX.dll'.
- Stack can grow up to 256 Kbytes by default. This can be changed by
the user or developper using the emxstack or emxbind
- utilities.
+ utilities.
-
+
-
-
+
-
Debugging
The GNU debugger v4.16 (EMX port) has been tested (including
its PM add-on, pmgdb.exe) and generally works as it should.
Because the GNU debugger is C oriented, some pascal types
might not be represented correctly.
-
+
-
-
+
-
Dynamic libraries
@@ -1423,31 +1447,35 @@
Dynamic libraries
shared libraries (also called dynamic link libraries), the compiler
currently only permits importing routines from dynamic libraries (creation of
dynamic libraries is unsupported).
-
-
-
- -
+
+
+
+
-
Profiling
-
- Profiling is currently not supported for this platform.
-
+
Profiling is currently not supported for this platform.
-
-
+
+
+
-
Using DOS generated applications under OS/2
It has been reported that some DOS (GO32V2) applications
(including the DOS compiler itself) generated by the compiler fail on
some OS/2 installations. This is due to problems in the OS/2 DPMI server.
-
+
You should use native OS/2 applications under OS/2 (including the native OS/2
compiler) or try installing a new OS/2 fixpack to see if it solves the
- problem.
-
+ problem.
+
+
+
INSTALL.EXE of version 1.0.6 or below fails with an unknown error (-1) under OS/2
+
+ or
-
INSTALL.EXE complains about a missing TZ variable under OS/2
+ INSTALL.EXE of version 1.0.6 or above complains about missing TZ variable under OS/2
You are most probably using an older version of OS/2 (like OS/2 Warp 3.0)
@@ -1457,8 +1485,8 @@
Using DOS generated applications under OS/2
The proper setting for you can be found e.g. using the TZCALC tool from
TIME868
package.
-
-
+
+
OS/2 compiler not working after upgrading to 1.9.6 or newer
An updated version of GNU assembler (as.exe) is packaged with release 1.9.6 (newer version
was necessary to get support for features of modern CPUs). This version of the GNU tool
@@ -1466,7 +1494,7 @@
Using DOS generated applications under OS/2
limitations regarding supported configurations, because this libc needs recent version
of OS/2 Unicode support libraries (LIBUNI.DLL and UCONV.DLL) not available in base OS/2 Warp 3.0
and OS/2 Warp 4.0. The updated versions were distributed by IBM in corrective packages (fixpaks)
- - see e.g. WarpUpdates site
+ - see e.g. WarpUpdates site
for information about OS/2 fixpaks and links for downloading them.
This issue isn't valid for WarpServer for e-Business, MCP and eComStation - these already have
the correct version.
@@ -1486,37 +1514,37 @@ Using DOS generated applications under OS/2
library or other details about the problem.
+
BeOS-related information
+
-
-
- -
+
-
Releasing software generated by the BeOS compiler
Software generated for the BeOS target will only work
- on the Intel based version of BeOS.
+ on the Intel based version of BeOS.
- The target system must have at least BeOS v4.0 or later
- (BeOS 5.1d 'Dano' is not supported)
-
- Stack size is set to 256 Kbytes. This cannot be changed
+ (BeOS 5.1d 'Dano' is not supported)
+
- Stack size is set to 256 Kbytes. This cannot be changed
-
+
-
-
+
-
Debugging
Debugging works with the system-supplied gdb version.
-
-
+
+
-
-
+
-
Dynamic libraries
@@ -1524,42 +1552,45 @@
Dynamic libraries
shared libraries (also called dynamic link libraries), the compiler
currently only permits importing routines from dynamic libraries (creation of
dynamic libraries is unsupported).
-
-
-
- -
+
+
+
+
-
Profiling
-
- Profiling is currently not supported for this platform.
-
-
-
-
-
+
+
Profiling is currently not supported for this platform.
+
+
+
+
-
BeOS Linking problems
It has been reported that certain versions of the linker
- that shipped with some versions of BeOS are broken. If you get
- an error when linking fpc applications, try updating your version
+ that shipped with some versions of BeOS are broken. If you get
+ an error when linking fpc applications, try updating your version
of ld from the following
site.
-
-
+
+
-
-
+
+
+
+
DOS-related information
- -
+
-
Releasing software generated by the DOS compiler
@@ -1644,21 +1679,21 @@ Releasing software generated by the DOS compiler
very probable), make sure to read "Applications created
with Free Pascal crash on 80386 systems" regarding special issues
which might occur. Math coprocessor emulation software is then
- required (wmemu387.dxe should be redistributed with your software)
+ required (wmemu387.dxe should be redistributed with your software)
- The target system must have a DPMI server. To avoid problems,
the file cwsdpmi.exe should always be redistributed with your
application
-
- The target system must have DOS 3.3 or later
+
- The target system must have DOS 3.3 or later
- The default stack size is 256 Kbytes. See also "Changing
- the default stack size"
-
- The stack checking option is available on this platform.
+ the default stack size"
+
- The stack checking option is available on this platform.
-
+
-
-
+
-
Debugging
The GNU debugger v4.16 and later have been tested, and generally work as
@@ -1666,31 +1701,31 @@
Debugging
represented as they should. It is suggested to use the text mode IDE instead of GDB,
which is available for the DOS target.
-
+
-
-
-
Dynamic Libraries
+ -
+
Dynamic libraries
Creation or use of shared libraries (also called dynamic link libraries) is not
supported under this platform.
-
+
-
-
-
-
+
+
+
-
Profiling
-
- Profiling with gprof is supported for this platform.
-
+
Profiling with gprof is supported for this platform.
+
+
-
-
-
Running Free Pascal without a math coprocessor?
+ -
+
Running Free Pascal without a math coprocessor
On the Intel version the emulator is automatically loaded by the
- compiler if you add the following commands to your autoexec.bat:
+ compiler if you add the following commands to your autoexec.bat:
SET 387=N
@@ -1698,9 +1733,9 @@ Running Free Pascal without a math coprocessor?
(do not forget to replace the C:\PP with the directory
where you installed FPC)
-
- -
+
+
-
Applications created with Free Pascal crash on 80386 systems
@@ -1714,7 +1749,7 @@ Applications created with Free Pascal crash on 80386 systems
program myprog;
uses emu387, ...
-
+
When the application is released, the software package should also
@@ -1730,10 +1765,10 @@
Applications created with Free Pascal crash on 80386 systems
-
-
-
+
+
-
The mouse cursor is not visible in graphics screens
@@ -1742,7 +1777,7 @@ The mouse cursor is not visible in graphics screens
href="ftp://ftp.logitech.com/pub/techsupport/mouse/m643 w31.exe">here
- -
+
-
Accessing I/O ports
The Port array is supported like in TP, as long
@@ -1750,18 +1785,18 @@
Accessing I/O ports
I/O port access is possible under Linux, but that requires root
privileges. Check the manuals for the IOPerm, ReadPort and WritePort
- procedures. (Unit Linux)
+ procedures. (Unit Linux)
-
-
-
+
+
-
Accessing DOS memory / Doing graphics programming
You can do like in Turbo Pascal, via absolute or mem[]. For larger memory
- blocks use the dosmemput/dosmemget routines in the Go32 unit.
-
+ blocks use the dosmemput/dosmemget routines in the Go32 unit.
+
-
-
+
-
Changing the default stack size
Under the DOS (GO32V2) target, the default stack size to 256 bKbytes. This can
@@ -1773,7 +1808,7 @@
Changing the default stack size