aboutsummaryrefslogtreecommitdiff
path: root/gnu/usr.bin/perl/library
Commit message (Collapse)AuthorAgeFilesLines
* Remove the perl build. Farewell, old friend.Mark Murray2002-05-1622-195/+0
| | | | Notes: svn path=/head/; revision=96722
* Milestone #1 in cross-arch make releases.Ruslan Ermilov2002-04-261-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not install games and profiled libraries to the ${CHROOTDIR} with the initial installworld. Eliminate the need in the second installworld. For that, make sure _everything_ is built in the "world" environment, using the right tool chain. Added SUBDIR_OVERRIDE helper stuff to Makefile.inc1. Split the buildworld process into stages, and skip some stages when SUBDIR_OVERRIDE is set (used to build crypto, krb4, and krb5 dists). Added NO_MAKEDB_RUN knob to Makefile.inc1 to avoid running makewhatis(1) at the end of installworld (used when making crypto, krb4, and krb5 dists). In release/scripts/doFS.sh, ensure that the correct boot blocks are used. Moved the creation of the "crypto" dist from release.5 to release.2. In release.3 and doMFSKERN, build kernels in the "world" environment. KERNELS now means "additional" kernels, GENERIC is always built. Ensure we build crunched binaries in the "world" environment. Obfuscate release/Makefile some more (WMAKEENV) to achieve this. Inline createBOOTMFS target. Use already built GENERIC kernel modules to augment mfsfd's /stand/modules. GC doMODULES as such. Assorted fixes: Get rid of the "afterdistribute" target by moving the single use of it from sys/Makefile to etc/Makefile's "distribute". Makefile.inc1: apparently "etc" no longer needs to be last for "distribute" to succeed. gnu/usr.bin/perl/library/Makefile.inc: do not override the "install" and "distribute" targets, do it the "canonical" way. release/scripts/{man,cat}pages-make.sh: make sure Perl manpages and catpages appear in the right dists. Note that because Perl does not respect the MANBUILDCAT (and NOMAN), this results in a loss of /usr/share/perl/man/cat* empty directories. This will be fixed soon. Turn MAKE_KERBEROS4 into a plain boolean variable (if it is set it means "make KerberosIV"), as documented in the make.conf(5) manpage. Most of the userland makefiles did not test it for "YES" anyway. XXX Should specialized kerberized libpam versions be included into the krb4 and krb5 dists? (libpam.a would be incorrect anyway if both krb4 and krb5 dists were choosen.) Make sure "games" dist is made before "catpages", otherwise games catpages settle in the wrong dist. Fast build machine provided by: Igor Kucherenko <kivvy@sunbay.com> Notes: svn path=/head/; revision=95509
* Respect system ${CFLAGS} when building Perl modules.Ruslan Ermilov2001-10-1920-40/+20
| | | | | | | | | | | | bsd.obj.mk -> bsd.prog.mk in modules makefiles, as the latter automatically includes ../Makefile.inc and adds -I${DESTDIR}/usr/include to ${CFLAGS} needed for "make world" which is built with -nostdinc. Reviewed by: MAINTAINER timeout Notes: svn path=/head/; revision=85158
* Fix cross-building, etc:Ruslan Ermilov2001-09-291-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. To cross-build, one now needs to set TARGET_ARCH, and not the MACHINE_ARCH. MACHINE_ARCH should never be changed manually! 2. Initialize DESTDIR= explicitly for bootstrap-tools, build-tools, and cross-tools stages. This fixes broken header and library dependencies problem. We build them in the host environment, and obviously want them to depend on host headers and libraries. The problem with broken header dependencies for bootstrap-tools and cross-tools was already partially solved (see BOOTSTRAPPING tests in bsd.prog.mk and bsd.lib.mk), but it was still there for build-tools if the user ran "make world DESTDIR=/foo". Also, for all of these stages, the library dependencies were broken because of how bsd.libnames.mk define DPADD members. We still provide a glue to install bootstrap- and cross-tools under the ${WORLDTMP}. Removed PATH overrides for bootstrap-, build-, and cross-tools stages. There is just no reason why we would need to override it, and the hacks to clean up the ${WORLDTMP} in the -DNOCLEAN case are no longer needed with fixes from this step. That is, we now never use ${WORLDTMP} headers and libraries, and we don't use any ${WORLDTMP} installed binaries during these stages. Again, these stages depend solely on the host environment, including compiler, headers, and libraries. 3. Moved "miniperl" back from cross-tools (it has nothing to do with a cross-compiler) to build-tools where it belongs. The change from step 1 let to do this. Also, to make this work, build-tools targets of "cc_tools" and "miniperl" were modified to call "depend". Here follow the detailed explanations. There are two categories of build tools, for now. In the first category there are "cc_tools" and "miniperl". They occupy the whole (sub)directory, and nothing needs to be done in this subdirectory later during the "all" stage. They are also constructed using system makefiles. We must build the .depend early in the build-tools stage because: 1) They use (and depend on) the host environment. 2) If we don't do this in build-tools, the "depend" stage of buildworld will do this for us; wrong library and header dependencies will be recorded (DESTDIR=${WORLDTMP}) and, what's worse, the "all" stage may then clobber the build-architecture format tools (that we built in the build-tools stage) with the target-architecture format ones, breaking cross build. In the second category there are all other build-tools. They share their directory with the "main" module that needs them in the "all" stage, and they don't show up themselves in the .depend file. The portion of this fix was already committed in gnu/usr.bin/cc/cc_tools/Makefile,v 1.52. 4. "libperl" is no longer a build tool, and "miniperl" is the stand-alone application. I had to make this change because build-tools and "all" stages share the same object directory. Without this change, if we cross compile, libperl.a is first built for the build architecture during the build-tools stage (for the purposes of immediate linkage with "miniperl"). Later on, the "all" stage sees this library as up-to-date, and doesn't rebuild it. The effect is that the wrong format static libperl library is installed with installworld. 5. Fixed "includes" to install secure/lib/libtelnet headers if required. Reviewed by: bde Notes: svn path=/head/; revision=84136
* From the submitter:Mark Murray2001-05-261-2/+1
| | | | | | | | | | | | | | | | | | | | | | | $ PERL_DL_NONLAZY=1 perl -MPOSIX -e '' Can't load '/usr/libdata/perl/5.6.0/mach/auto/POSIX/POSIX.so' for module POSIX: /usr/libdata/perl/5.6.0/mach/auto/POSIX/POSIX.so: Undefined symbol "sv_setptrobj" at /usr/libdata/perl/5.6.0/XSLoader.pm line 73. at /usr/libdata/perl/5.6.0/mach/POSIX.pm line 24 Compilation failed in require. BEGIN failed--compilation aborted. This problem only exists in -CURRENT. Most often it is reproduced when compiling some perl extension manually. Make test uses PERL_DL_NONLAZY, and if a tested module uses POSIX, boom! Luckily, we don't see it very often, mostly because the vast majority of p5 ports do not perform the `make test' step. Submitted by: Anton Berezin <tobez@tobez.org> Needs to be a committer already: Anton Berezin <tobez@tobez.org> Notes: svn path=/head/; revision=77236
* Fix cross-building.Marcel Moolenaar2000-11-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Move building libperl and miniperl from build-tools to cross-tools. libperl uses MACHINE_ARCH to determine the right configuration, which doesn't match the build machine when cross-building if they are built as build- tools. o Since miniperl needs to be built as a cross-tool, it needs to be installed under /usr/obj so that it can be used (cross-tools have a special object directory to avoid build conflicts. As a downside, you can't easily run cross-tools from their object directory). Remove the install and distribute override targets. To avoid having miniperl installed by installworld, remove it from SUBDIR. o We can't pickup miniperl from the object directory but since it's installed, depend on PATH. This is save, because the makefiles are run with a known path. o Build libperl again as part of the library target. A _libperl variable existed, but it was never defined. o Add chmod to the list of saved tools, because perl conditionally uses it during install. The bootstrap-tools and cross-tools targets are modified to avoid building profiled and shared libraries. While here, have these targets build static binaries instead of shared binaries. Approved by: markm Notes: svn path=/head/; revision=68927
* Gosh. I managed to commit the wrong version of this file. Darn;Mark Murray2000-09-151-4/+4
| | | | | | | | | I must remember not to do that again. (This fixes broken install and distribute targets) Notes: svn path=/head/; revision=65879
* Silence the perl build a lot; particularly in the case where aMark Murray2000-09-141-4/+4
| | | | | | | | | | "make all" is being done on top of a "make buildworld", and nothing needs making. Asked for by: jkh Notes: svn path=/head/; revision=65853
* Bunch-o'-tweaks.Mark Murray2000-07-021-1/+1
| | | | | | | | | | | | | | | | | 1) (Biggest) I tried long-and-hard to keep the version number (5.006) backwards compatible with FreeBSD; I have lost this battle, and must defer to the Perl convention (5.6.0). Victims include suidperl. this means that dirs with a name of 5.006 will be replaced with dirs named 5.6.0 in both /usr/libdata/perl and /usr/local/lib/perl. 2) Errno module is added. 3) Alpha bits extensively tweeked after a Beast-build. Other commits to follow. Notes: svn path=/head/; revision=62415
* Tweaks to the build to allow "make -DNOCLEAN" and "make release" toMark Murray2000-06-291-0/+6
| | | | | | | work. Notes: svn path=/head/; revision=62262
* Fix the upgrade-build case.Mark Murray2000-06-272-7/+10
| | | | Notes: svn path=/head/; revision=62161
* Userland build stuff for Perl5.006.Mark Murray2000-06-2522-0/+214
This is cleaned up quite a lot since 5.00502, and the library modules are broken out into individual dirs. This should please a lot folk. Notes: svn path=/head/; revision=62081