X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Cross%2FREADME;h=683ef9381af5ac9ccaebcf227f847fd511e4fefd;hb=91fb030ae1ce9fdc410a1db66fdb777625eedce6;hp=62444837b732686eb47a519425b4323323e5722e;hpb=6a809565f92f58eb2e23772b87ab5c4f45ee1dd0;p=p5sagit%2Fp5-mst-13.2.git diff --git a/Cross/README b/Cross/README index 6244483..683ef93 100644 --- a/Cross/README +++ b/Cross/README @@ -1,24 +1,28 @@ -Summary -------- +Building for arm-linux +---------------------- + +The files in this directory add another cross-compilation +target to the Perl buildsystem. It was built as a part of +the Open Zaurus (http://www.openzaurus.com/) distribution. +Most / All of the arm compiler optimisations are "borrowed" +from this excellent project. -This is a patch set which adds cross-compilation to the perl -buildsystem. It was built as a part of the Open Zaurus -(http://www.openzaurus.com/) distribution. Most / All of the -optimisations are "borrowed" from this excellent project. +(Further discussion about cross-compiling Perl in the top level +INSTALL file, see the section "Cross-compilation".) The main target is arm-linux but I have also managed to -successfully cross-compile perl for solaris x86 using the same +successfully cross-compile Perl for Solaris x86 using the same buildsystem. We are currently dependent on an existing working local copy of -perl which is available as /usr/bin/perl. This could be migrated -to using native miniperl with some additional effort. +Perl ** of the same version and revision ** which is available +as /usr/bin/perl. -Obviously you need a working and tested cross-compiler for your -build and target combination. The binary directory must be in +You need a working and tested cross-compiler for your build +and target combination. The binary directory must be in your path. -1) You should be reading me (README) in perl-5.x.x/Cross +1) You should be reading me (README) in perl-5.x.y/Cross 2) Make sure you are in the Cross directory. @@ -27,16 +31,46 @@ your path. 4) make patch ## This will patch the existing source-tree. 5) make perl ## Will make perl -The Obvious Ommissions ----------------------- +Your built Perl environment is in install_me_here/ in your build +directory. From here you can package and deploy as you wish. + +Omissions +---------- + +This does NOT perform any installation. + +Make test will NOT work. + +We do not provide documentation in the core, man pages are not generated. + +Other Targets (For Developers) +------------------------------ + +It is possible to extend the cross-compilation to other targets. +We have sucessfully compiled for the target solaris2.8/x86 +on linux/x86 build system. + +To attempt a cross-compile for another target using the methods +in this directory: + +1) Copy the Perl source code onto your TARGET machine. +2) Execute sh Configure as normal and configure as required, + do not "make". +3) Copy the config.sh file that is generated to your BUILD + machine and place it in the Cross directory with the + filename config.sh-ARCH-OS. For example, + config.sh-i386-pc-solaris2.8. For the appropriate ARCH + and OS please refer to your cross-compiler documentation. +4) Edit Cross/config to reflect your new target and continue + with build as above. + +Should you wish to produce optimised binaries for different +architectures you can add the appropriate compiler flags to +the Makefile in a new ifeq ($(ARCH),...) ... endif block. -This does NOT perform any installation as site installation method will -be dependant on the target arch and OS. -make test will NOT work as the binaries and libraries will not execute. +Please refer to your cross-compiler documentation for details. -Due to space limitations on the Zaurus (it's a PDA) we do not provide -documentation in the core - Therefore man pages are not even generated. Note that the Cross/ directory is also used by a different cross-compilation setup described in the INSTALL file, and @@ -47,7 +81,7 @@ documentation in the core - Therefore man pages are not even generated. Enjoy! References -------- +---------- Redvers Davies Open Zaurus http://www.openzaurus.org/ -Perl OZ Packages http://www.openzaurus.org/official/testing/feed/ +Perl OZ Packages http://www.criticalintegration.com/perl-oz/