summaryrefslogtreecommitdiff
path: root/win32/config_h.PL
Commit message (Collapse)AuthorAgeFilesLines
* Switch most open() calls to three-argument form.John Lightsey2016-12-231-2/+2
| | | | | | | | | | Switch from two-argument form. Filehandle cloning is still done with the two argument form for backward compatibility. Committer: Get all porting tests to pass. Increment some $VERSIONs. Run: ./perl -Ilib regen/mk_invlists.pl; ./perl -Ilib regen/regcharclass.pl For: RT #130122
* add parallelness to win32/GNUmakefileDaniel Dragan2016-01-251-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -.UPDATEALL is dmake only, doesn't exist in gmake, create more targets instead GNUmakefile:1319: warning: overriding recipe for target '.UPDATEALL' GNUmakefile:1024: warning: ignoring old recipe for target '.UPDATEALL' -fix ok/nok targets on dmake and gmake -dont delete old mini config.h, the copy overwrites it, for dmake and gmake 1 less process to run this way -modify whitespace and comments between 2 makesfiles so there are less delta lines if the 2 are diffed, this aids in diagnostics -remove perlmainst.c/perlmain.c build products, just use runperl.c directly 1 less disk file to create and later clean and git status and 2 less nodes in the make graph to traverse, also better for C debugger, since "runperl.c" is around after a git clean of the source tree, and runperl.c is in every single callstack in perl. -remove copying mini config.h to CORE dir, pointless since (mini) config.h isn't an input to config_h.PL, remove the exit 1 from commit 137443ea0a from 5.003, rewriting config.h is not a reason to stop the build with a fatal error, vivify CORE dir or else sub copy() fails -deshell UNIDATAFILES/mktables, 1 less cmd.exe process and 1 less .bat file written to disk for gmake (dmake always uses cmd.exe ATM) -combining mini config.h AKA $(MINIDIR)\.exists shell append lines is for another commit -perlglob.exe is not installed, it doesn't need to be rebased, it is only needed for module building, removing the dep makes the dep graph simpler -rename PERLIMPLIB so the lib is built in its final location in CORE dir this removes an extra xcopy process run. Since perl dll's .a/.lib is not longer in the root of the source tree, change the 2 tests and ExtUtils::CBuilder::Platform::Windows to look at the uninstalled final location dir, not the root dir -fix typo 0.282224->0.280224 in dist/ExtUtils-CBuilder/Changes -for GCC PERLEXPLIB must be used, passing "perldll.def" on cmd line to g++ means all data globals with EXTCONST are exported (which have dllexport on their declaration) instead of just what is in perldll.def and globvar.sym, INTERN/EXTERN.h could be revised to fix that, but I am not doing that at this time. Also drop linking GCC perl523.dll from 3 processes to just 1 process like with VC builds. Removing 2nd run of dlltool fixes a race condition where libperl523.a was generated twice. This caused a race condition failure where linking a XS DLL failed because the GCC linker of the XS DLL saw a partially written libperl523.a. -Relocation was tested with $(LINK32) -v -mdll -o $@ -Wl,--disable-auto-image-base -Wl,--image-base -Wl,0x400000 $(BLINK_FLAGS) $(PERLDLL_OBJ) $(shell @type Extensions_static) $(LIBFILES) $(PERLEXPLIB) to g++ linker to force an address conflict and verified with VMMap (unrelocated perl523.dll has ~40KB private memory, relocated has ~240KB private memory on Win 7 32b), historically there are problems with dllexport and dlltool and relocation problems with mingw -$(COREDIR)\ppport.h in gmake is separate lines since gmake normally launches processes directly, not through the shell, so it is more efficent to keep it as multiple lines for gmake, while dmake likes to burn CPU and IO between each line, and runs each line through cmd.exe -disable parallel building in make_ext.pl by not passing MAKEFLAGS env var to any subprocess, EUMM is not ready for parallelness inside a module building on Win32 -have harness proc and child .t procs share same disk perl.exe and perl523.dll files, this way they share memory pages, makefile.mk does the same thing
* refactor win32_get_*lib() funcs to match rest of PERL_IMPLICIT_SYS APIDaniel Dragan2015-06-031-1/+6
| | | | | | | | | | | | | | | | | | The front end of PERL_IMPLICIT_SYS is PerlEnv_*/PerlSock_*/PerlProc_*/etc macros. These are either macroed to C vtable calls when PERL_IMPLICIT_SYS is on, or to the backend raw win32_*() functions when PERL_IMPLICIT_SYS is off. win32_get_*() were not following this convention. All this code looks like a hack as if someone didn't have perms to edit perl.c, but they did have perms to edit /win32, so they devise a scheme of hooking "unhooked" win32_get_*() functions with win32.h macros for win32_get_*() to call the Perl*() virutalization macros, and rename the original function bodies in win32.c to g_win32_get_*() as to not make a macro loop. Undo all of this hack by having perl.c call correct PerlEnv_* macro. This refactoring will be useful for a future patch in #123658 to disable win32 registry lookups.
* fix a broken optimization in win32/config_h.PL to stop excessive rebuildingDaniel Dragan2014-12-301-4/+5
| | | | | | | | | | | | | | | | In commit 137443ea0a config_h.PL was introduced. There is no ML archive from that time of the actual patches or their rational. From day 1 of config_h.PL for the root config.h, it didn't copy the new one config.h to the normal location of config.h if the files matched. This prevents redundant dirtying of all core moudules with the "Makefile out-of-date with respect to "/make clean/rerunning of makefile.pl /new make all cycle. But the optimization didn't work in practice since the modules declare a dependency on /lib/CORE/config.h not /config.h. Previously "touch"ing /win32/Makefile would trigger a mass rebuild, even if config.h's contents are the same. Now only if the new after "touch"ing /win32/makefile config.h is different from the old config.h , will a mass rebuild of module be triggered. This makes reduced the amount of time core devs have to spend to work on Win32 perl.
* Write win32/config.h with *nix EOLs, as per the canned config_H.* filesSteve Hay2013-08-131-0/+1
| | | | | This makes no difference when actually building perl, but saves a dos2unix when regenerating the canned files with the regen_config_h makefile targets.
* Remove win32/config*.gc64noxSteve Hay2012-06-091-0/+4
| | | | | | | | | The ARCHPREFIX setting from makefile.mk is now passed into config_sh.PL and config_h.PL and used to apply the changes necessary to the config*.gc64 files to support both the usual gcc suite and the x86_64-w64-mingw32-gcc suite (used when GCCCROSS=define). Also remove the redundant INST_VER argument in the config_h.PL calls.
* Remove some commented-out lines from win32/config_h.PLSteve Hay2012-06-071-2/+0
|
* Use strict and warnings in win32/config_(s)h.PLSteve Hay2012-06-071-4/+7
|
* Remove $patchlevel from win32/config_h.PL since it is never usedSteve Hay2012-06-071-6/+0
|
* Re: [perl #71852] Warning "/* within comment" in Win32 config.h-related fileskmx2010-01-111-2/+4
| | | | | | (Applied patch and regenerated canned config files) Message-ID: <4B44FB2B.8080509@volny.cz>
* Add a parameter to win32_get_{priv,site,vendor}lib(), to return the length,Nicholas Clark2009-02-201-1/+1
| | | | | as we already know it, and use it in S_init_perllib() to save a strlen() in S_incpush_use_sep().
* Fix Win32 build after unusual breakage caused by #30327Steve Hay2007-02-161-2/+2
| | | | | (Boy, did that take some tracking down!) p4raw-id: //depot/perl@30331
* Merge WinCE and Win32 directories -- Initial patchYves Orton2006-04-281-5/+6
| | | | | Message-ID: <9b18b3110604271430k4de84685jec6535ded195ed94@mail.gmail.com> p4raw-id: //depot/perl@28003
* A mostly-stable version of "new" Win32 signal/kill support.Nick Ing-Simmons2002-01-111-1/+9
| | | p4raw-id: //depot/perlio@14192
* remove deprecated PERL_OBJECT cruft, it has long since stoppedGurusamy Sarathy2001-08-311-2/+1
| | | | | working in 5.7.x p4raw-id: //depot/perl@11803
* Add useperlio to config.vcNick Ing-Simmons2000-12-061-1/+1
| | | | | | | Turn off binmode in config_H.PL Regen all the config_H.xx Attempt to get debugging build with MSVC. p4raw-id: //depot/perlio@8019
* change#6174 needs corresponding change in win32/config_h.PL,Gurusamy Sarathy2000-07-121-0/+5
| | | | | | | which grovels through config_h.SH to find the config.h name p4raw-link: @6174 on //depot/metaconfig: cfd1a6dce7dce25772bf4f5399e251457574eeeeon //depot/cfgperl: 12ae5dfcd4fd6f54af051c41b2e122532efce8d3 p4raw-id: //depot/perl@6379
* vendorlib support for Windows; regen win32/config*Gurusamy Sarathy2000-03-061-2/+2
| | | p4raw-id: //depot/perl@5574
* more changes for new-style version numbers (versions numbers onGurusamy Sarathy2000-01-091-2/+2
| | | | | | | | | | | | | | | the filesystem look like 5.5.640, except on DOS-DJGPP and VMS where they look like 5_5_640; delete @Config{pm_apiversion,xs_apiversion}; split $Config{apiversion} into three, @Config{apirevision,apiversion, apisubversion} for CPP friendliness; $Config{sitelib} now defaults to .../site_perl/$version, just like $Config{privlib}, making sitelib completely independent across versions and substantially eliminating chances of breaking older installations by overwriting newly built extensions; all this means compatibility inclusions for @INC will need to take into account older sitelib versions (this still TODO) windows, vms, dos tweaks for the above p4raw-id: //depot/perl@4773
* yet more cleanups of the PERL_OBJECT, MULTIPLICITY and USE_THREADSGurusamy Sarathy1999-07-121-1/+1
| | | | | | | | | | | | | | | | builds; passing the implicit context is unified among the three flavors; PERL_IMPLICIT_CONTEXT is auto-enabled under all three flavors (see the top of perl.h) for testing; all varargs functions foo() have a va_list-taking variant vfoo() for generating the context-free versions; the PERL_OBJECT build should now be hyper-compatible with CPAN extensions (C++ is totally out of the picture) result has only been tested on Windows TODO: write docs on the THX rationale and idiomatic usage of the Perl API p4raw-id: //depot/perl@3667
* win32 build fixesGurusamy Sarathy1999-06-101-2/+1
| | | p4raw-id: //depot/perl@3525
* misc win32 config tweaksGurusamy Sarathy1998-07-201-2/+2
| | | p4raw-id: //depot/perl@1573
* sundry win32 config tweaksGurusamy Sarathy1998-07-051-0/+1
| | | p4raw-id: //depot/perl@1321
* [win32] @INC construction on win32 cleaned upGurusamy Sarathy1998-06-011-14/+17
| | | | | | | - perl.dll location based paths should be much more reliable now - registry stuff unchanged - Config.pm now has all the installfoolib entries for MakeMaker et al p4raw-id: //depot/win32/perl@1069
* [asperl] add AS patch#15Gurusamy Sarathy1998-04-031-10/+10
| | | p4raw-id: //depot/asperl@863
* [asperl] added AS patch#12 with minor changesGurusamy Sarathy1998-03-121-1/+7
| | | p4raw-id: //depot/asperl@806
* [win32] provide our own popen()/pclose() to fix problems with qx//:Gurusamy Sarathy1998-03-071-0/+1
| | | | | | - qx// used to always invoke the shell, now does so only when needed - qx// didn't respect PERL5SHELL, now does p4raw-id: //depot/win32/perl@797
* [win32] various changes to make win32 build under the new Configure & co.Gurusamy Sarathy1998-02-261-1/+1
| | | | | | | | | | - added byterun.c to core C build - makefile.mk now has a regen_config_h target to quickly update config_H.[bgv]c after adding new variables to config.[bgv]c - sig_name_init now has only the valid signals - we now have $Config{usethreads} - tested under the two commercial compilers w/ and w/o usethreads p4raw-id: //depot/win32/perl@590
* [win32] Various win32 fixesGurusamy Sarathy1998-01-041-4/+4
| | | | | | | | | | | | | | | - support spawn via system(&P_NOWAIT,...) like OS2 - support wait() and waitpid() - s/GetCurrentDirectory/GetCwd/, long-named XS to be removed - support -lfoo properly in ExtUtils::Liblist - fix outdated info about Win32 support in perlfaq2 - fix win32 bug in perldoc that causes spurious warnings - regularize global function/variable names yet more - fix bug in do_aspawn() (it was always invoking shell, instead of almost never) - implement and export win32_wait() - stub version of USE_RTL_THREAD_API p4raw-id: //depot/win32/perl@391
* Disable hard-coded -DDEBUGGINGNick Ing-Simmons1997-11-301-3/+0
| | | p4raw-id: //depot/ansiperl@339
* Munge pseudo-Configure stuff to add -thread to archname asNick Ing-Simmons1997-11-221-2/+13
| | | | | | | Malcolm seems to think that is way to test for threads. Update @INC stuffing hackery to have traditional @INC search order archlib, privlib, sitearch, site. p4raw-id: //depot/ansiperl@282
* Win32 sitelib intuition from DLL locationGurusamy Sarathy1997-08-071-1/+2
| | | | | | | | | | | | | There is code for win32 that determines archlib from the location of PERL.DLL. This is only 50% effective, as any sitelib at the same location is not found. This simple patch adds that feature. It is needed for the win32 binary distribution to work in a relocatable fashion. [editor's note: perhaps only partially applied] p5p-msgid: 199706231647.MAA23260@aatma.engin.umich.edu
* [inseparable changes from match from perl-5.003_99a to perl5.004]Perl 5 Porters1997-05-161-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BUILD PROCESS Subject: Don't use 'unset' in Configure From: Chip Salzenberg <chip@perl.com> Files: Configure Subject: Protect against having no such command as 'cc' Date: Mon, 12 May 1997 16:35:34 -0400 (EDT) From: Hans Mulder <hansm@icgned.nl> Files: Configure Msg-ID: 1997May12.163534.2006434@hmivax.humgen.upenn.edu (applied based on p5p patch as commit 3bf198a5e20d135d4136d3233d58cf49a70772d9) Subject: minor wording enhancement for Configure Date: Sat, 10 May 1997 13:38:31 +0300 (EET DST) From: Jarkko Hietaniemi <Jarkko.Hietaniemi@cc.hut.fi> Files: Configure private-msgid: 199705101038.NAA00471@alpha.hut.fi CORE LANGUAGE CHANGES Subject: Make C<m//g> reset pos on failure; make C<m//gc> not reset From: Chip Salzenberg <chip@perl.com> Files: dump.c op.c op.h pod/perldelta.pod pod/perlfaq6.pod pod/perlop.pod pod/perlre.pod pp_ctl.c pp_hot.c regcomp.c t/op/pat.t toke.c Subject: SECURITY: Forbid exec() if $ENV{BASH_ENV} is tainted From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod pod/perlrun.pod pod/perlsec.pod t/op/taint.t taint.c Subject: Allow exec() if $ENV{TERM} is tainted but innocuous From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod pod/perlrun.pod pod/perlsec.pod t/op/taint.t taint.c Subject: Allow globbing when tainted under VMS (no external program) From: Chip Salzenberg <chip@perl.com> Files: pp_sys.c t/op/taint.t CORE PORTABILITY Subject: Win32 update (three patches) From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: README.win32 perl.c win32/Makefile win32/config.H win32/config_h.PL win32/config_sh.PL win32/makedef.pl win32/win32.c win32/win32.h win32/win32io.c win32/win32io.h win32/win32iop.h Subject: Don't require executable bit on perl -S if DOSISH Date: Fri, 09 May 1997 12:33:18 -0400 From: Danny Sadinoff <sadinoff@olf.com> Files: perl.c Msg-ID: 337351CE.79B28DE3@olf.com (applied based on p5p patch as commit 7596f71a28f72f9e3abd6d3962d29a7752cd9303) DOCUMENTATION Subject: Tweaks for perldelta Date: Sun, 11 May 97 01:46:00 +0200 From: Unknown Contributor <hansm@euronet.nl> Files: pod/perldelta.pod Msg-ID: 199705102346.BAA17300@mail.euronet.nl (applied based on p5p patch as commit 3e10809228cc961223b894e1639b44f8e2b64de0) Subject: Mention perlfaq.pod and perlmodlib.pod in perldelta.pod From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod Subject: Fix example of use of lexicals with formats From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod OTHER CORE CHANGES Subject: In C<eval &func>, always call &func in scalar context From: Chip Salzenberg <chip@perl.com> Files: op.c Subject: Fix recursive substitution From: Chip Salzenberg <chip@perl.com> Files: cop.h global.sym pp_ctl.c proto.h scope.c Subject: Fix core dump from get*() functions returning no alias array From: Chip Salzenberg <chip@perl.com> Files: pp_sys.c Subject: Fix typo Date: Sat, 10 May 1997 17:28:35 -0500 From: Mark K Trettin <mkt@lucent.com> Files: pp_sys.c private-msgid: 199705102228.RAA11163@gv18c.ih.lucent.com
* [inseparable changes from patch from perl-5.003_97d to perl-5.003_97e]perl-5.003_97ePerl 5 Porters1997-04-151-0/+89
CORE LANGUAGE CHANGES Subject: New operator: sysseek() From: Chip Salzenberg <chip@perl.com> Files: doio.c ext/Opcode/Makefile.PL ext/Opcode/Opcode.pm global.sym keywords.pl opcode.pl pod/perldelta.pod pod/perlfunc.pod pp_sys.c t/op/sysio.t toke.c Subject: Allow recursive substitution again From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod pod/perldiag.pod pp_hot.c CORE PORTABILITY Subject: Use size_t for socket size parameters of GNU libc From: Chip Salzenberg <chip@perl.com> Files: doio.c pp_sys.c Subject: Win32 update (four patches) From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: MANIFEST README.win32 dosish.h ext/SDBM_File/Makefile.PL ext/SDBM_File/sdbm/Makefile.PL ext/SDBM_File/sdbm/sdbm.c ext/SDBM_File/sdbm/sdbm.h lib/ExtUtils/MM_Unix.pm perl.c utils/perlbug.PL utils/perldoc.PL win32/Makefile win32/TEST win32/config.H win32/config.w32 win32/config_h.PL win32/config_sh.PL win32/perllib.c win32/runperl.c win32/win32.c win32/win32io.c win32/win32sck.c DOCUMENTATION Subject: Add CGI to perldelta.pod and improve its description in MANIFEST From: Chip Salzenberg <chip@perl.com> Files: MANIFEST pod/perldelta.pod Subject: Describe probs with majordomo 1.94.1 From: Chip Salzenberg <chip@perl.com> Files: pod/perldelta.pod Subject: Fix description of /\G/g From: Chip Salzenberg <chip@perl.com> Files: pod/perlop.pod Subject: Mention '...' operator in precedence table Date: Sun, 13 Apr 1997 11:24:16 -0600 From: Tom Christiansen <tchrist@perl.com> Files: pod/perlop.pod private-msgid: 199704131724.LAA23120@jhereg.perl.com OTHER CORE CHANGES Subject: New API function: perl_eval_pv() Date: Mon, 14 Apr 1997 17:13:41 -0400 From: Doug MacEachern <dougm@opengroup.org> Files: perl.c pod/perlcall.pod pod/perldelta.pod pod/perlembed.pod pod/perlguts.pod proto.h private-msgid: 199704142113.RAA06823@postman.osf.org Subject: Fix C< s//whatever/ >, which reuses old pattern From: Chip Salzenberg <chip@perl.com> Files: pp_hot.c regexec.c