char *inString = (((inStringSV)->sv_flags & (0x00000400)) == 0x00000400 ? ((in_len = ((XPV *) (inStringSV)->sv_any)->xpv_cur), ((inStringSV)->sv_u.svu_pv)) : Perl_sv_2pv_flags (my_perl, inStringSV, &in_len, 2)); #### if (items != 3) S_croak_xs_usage(my_perl, cv,"Destination, Source, Length"); #### Microsoft (R) Incremental Linker Version 7.10.6030 Copyright (C) Microsoft Corporation. All rights reserved. usage: LINK [options] [files] [@commandfile] options: /ALIGN:# /ALLOWBIND[:NO] /ASSEMBLYDEBUG[:DISABLE] /ASSEMBLYLINKRESOURCE:filename /ASSEMBLYMODULE:filename /ASSEMBLYRESOURCE:filename /BASE:{address|@filename,key} /DEBUG /DEF:filename /DEFAULTLIB:library /DELAY:{NOBIND|UNLOAD} /DELAYLOAD:dll /DELAYSIGN[:NO] /DLL /DRIVER[:{UPONLY|WDM}] /ENTRY:symbol /EXETYPE:DYNAMIC /EXPORT:symbol /FIXED[:NO] /FORCE[:{MULTIPLE|UNRESOLVED}] /HEAP:reserve[,commit] /IDLOUT:filename /IGNOREIDL /IMPLIB:filename /INCLUDE:symbol /INCREMENTAL[:NO] /KEYFILE:filename /KEYCONTAINER:name /LARGEADDRESSAWARE[:NO] /LIBPATH:dir /LTCG[:{NOSTATUS|PGINSTRUMENT|PGOPTIMIZE|STATUS}] (PGINSTRUMENT and PGOPTIMIZE are only available for IA64) /MACHINE:{AM33|ARM|EBC|IA64|M32R|MIPS|MIPS16|MIPSFPU|MIPSFPU16|MIPSR41XX| SH3|SH3DSP|SH4|SH5|THUMB|X86} /MAP[:filename] /MAPINFO:{EXPORTS|LINES} /MERGE:from=to /MIDL:@commandfile /NOASSEMBLY /NODEFAULTLIB[:library] /NOENTRY /NOLOGO /OPT:{ICF[=iterations]|NOICF|NOREF|NOWIN98|REF|WIN98} /ORDER:@filename /OUT:filename /PDB:filename /PDBSTRIPPED:filename /PGD:filename /RELEASE /SAFESEH[:NO] /SECTION:name,[E][R][W][S][D][K][L][P][X][,ALIGN=#] /STACK:reserve[,commit] /STUB:filename /SUBSYSTEM:{CONSOLE|EFI_APPLICATION|EFI_BOOT_SERVICE_DRIVER| EFI_ROM|EFI_RUNTIME_DRIVER|NATIVE|POSIX|WINDOWS| WINDOWSCE}[,#[.##]] /SWAPRUN:{CD|NET} /TLBOUT:filename /TSAWARE[:NO] /TLBID:# /VERBOSE[:{LIB|SAFESEH}] /VERSION:#[.#] /VXD /WINDOWSCE:{CONVERT|EMULATION} /WS:AGGRESSIVE #### Microsoft (R) Incremental Linker Version 9.00.30729.01 Copyright (C) Microsoft Corporation. All rights reserved. usage: LINK [options] [files] [@commandfile] options: /ALIGN:# /ALLOWBIND[:NO] /ALLOWISOLATION[:NO] /ASSEMBLYDEBUG[:DISABLE] /ASSEMBLYLINKRESOURCE:filename /ASSEMBLYMODULE:filename /ASSEMBLYRESOURCE:filename[,[name][,PRIVATE]] /BASE:{address[,size]|@filename,key} /CLRIMAGETYPE:{IJW|PURE|SAFE} /CLRSUPPORTLASTERROR[:{NO|SYSTEMDLL}] /CLRTHREADATTRIBUTE:{STA|MTA|NONE} /CLRUNMANAGEDCODECHECK[:NO] /DEBUG /DEF:filename /DEFAULTLIB:library /DELAY:{NOBIND|UNLOAD} /DELAYLOAD:dll /DELAYSIGN[:NO] /DLL /DRIVER[:{UPONLY|WDM}] /DYNAMICBASE[:NO] /ENTRY:symbol /ERRORREPORT:{NONE|PROMPT|QUEUE|SEND} /EXPORT:symbol /FIXED[:NO] /FORCE[:{MULTIPLE|UNRESOLVED}] /FUNCTIONPADMIN[:size] /HEAP:reserve[,commit] /IDLOUT:filename /IGNOREIDL /IMPLIB:filename /INCLUDE:symbol /INCREMENTAL[:NO] /KEYCONTAINER:name /KEYFILE:filename /LARGEADDRESSAWARE[:NO] /LIBPATH:dir /LTCG[:{NOSTATUS|PGINSTRUMENT|PGOPTIMIZE|PGUPDATE|STATUS}] /MACHINE:{ARM|EBC|IA64|MIPS|MIPS16|MIPSFPU|MIPSFPU16| SH4|THUMB|X64|X86} /MANIFEST[:NO] /MANIFESTDEPENDENCY:manifest dependency /MANIFESTFILE:filename /MANIFESTUAC[:{NO|UAC fragment}] /MAP[:filename] /MAPINFO:{EXPORTS} /MERGE:from=to /MIDL:@commandfile /NOASSEMBLY /NODEFAULTLIB[:library] /NOENTRY /NOLOGO /NXCOMPAT[:NO] /OPT:{ICF[=iterations]|NOICF|NOREF|REF} /ORDER:@filename /OUT:filename /PDB:filename /PDBSTRIPPED:filename /PGD:filename /PROFILE /RELEASE /SAFESEH[:NO] /SECTION:name,[[!]{DEKPRSW}][,ALIGN=#] /STACK:reserve[,commit] /STUB:filename /SUBSYSTEM:{BOOT_APPLICATION|CONSOLE|EFI_APPLICATION| EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER| NATIVE|POSIX|WINDOWS|WINDOWSCE}[,#[.##]] /SWAPRUN:{CD|NET} /TLBID:# /TLBOUT:filename /TSAWARE[:NO] /VERBOSE[:{ICF|LIB|REF|SAFESEH}] /VERSION:#[.#] /WX[:NO] #### C:\Documents and Settings\Administrator\Desktop\w32f>perl makefile.pl Checking if your kit is complete... Looks good Writing Makefile for Win32API::File Writing MYMETA.yml and MYMETA.json C:\Documents and Settings\Administrator\Desktop\w32f> #### # --- MakeMaker cflags section: CCFLAGS = -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO OPTIMIZE = -MD -Zi -DNDEBUG -O1 #### # --- MakeMaker dynamic_lib section: # This section creates the dynamically loadable $(INST_DYNAMIC) # from $(OBJECT) and possibly $(MYEXTLIB). OTHERLDFLAGS = INST_DYNAMIC_DEP = $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(INST_DYNAMIC_DEP) $(LD) -out:$@ $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS) -def:$(EXPORT_LIST) if exist $@.manifest mt -nologo -manifest $@.manifest -outputresource:$@;2 if exist $@.manifest del $@.manifest $(CHMOD) $(PERM_RWX) $@ #### C:\Documents and Settings\Administrator\Desktop\w32f>nmake OPTIMIZE="-MD -Zi -DN DEBUG -O1 -GL" OTHERLDFLAGS="-LTCG:PGINSTRUMENT pgort.lib " test Microsoft (R) Program Maintenance Utility Version 9.00.30729.01 Copyright (C) Microsoft Corporation. All rights reserved. cp cFile.pc blib\arch\Win32API\File\cFile.pc cp File.pm blib\lib\Win32API\File.pm C:\p517\bin\perl.exe C:\p517\lib\ExtUtils\xsubpp -typemap C:\p517\lib\E xtUtils\typemap -typemap typemap File.xs > File.xsc && C:\p517\bin\perl.exe -ME xtUtils::Command -e mv -- File.xsc File.c Warning: Found a 'CODE' section which seems to be using 'RETVAL' but no 'OUTPUT' section. in File.xs, line 159 Warning: Found a 'CODE' section which seems to be using 'RETVAL' but no 'OUTPUT' section. in File.xs, line 181 Warning: Found a 'CODE' section which seems to be using 'RETVAL' but no 'OUTPUT' section. in File.xs, line 511 cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -GL -DWIN32 -D_CONSOLE -DN O_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_ SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -MD -Zi -DNDEBU G -O1 -GL -DVERSION=\"0.1200\" -DXS_VERSION=\"0.1200\" "-IC:\p517\lib\CORE" File.c File.c Running Mkbootstrap for Win32API::File () C:\p517\bin\perl.exe -MExtUtils::Command -e chmod -- 644 File.bs C:\p517\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Wi n32API::File\", 'DLBASE' => 'File', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPOR TS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Win32API\File\File.dll -dll -nologo -nodefaultl ib -debug -opt:ref,icf -ltcg -libpath:"c:\p517\lib\CORE" -machine:x86 "/manife stdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0. 0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'" F ile.obj -LTCG:PGINSTRUMENT pgort.lib C:\p517\lib\CORE\perl517.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell 32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.li b version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib -def:File.def Creating library blib\arch\auto\Win32API\File\File.lib and object blib\arch\a uto\Win32API\File\File.exp Generating code Finished generating code if exist blib\arch\auto\Win32API\File\File.dll.manifest mt -nologo -mani fest blib\arch\auto\Win32API\File\File.dll.manifest -outputresource:blib\arch\au to\Win32API\File\File.dll;2 if exist blib\arch\auto\Win32API\File\File.dll.manifest del blib\arch\au to\Win32API\File\File.dll.manifest C:\p517\bin\perl.exe -MExtUtils::Command -e chmod -- 755 blib\arch\auto\ Win32API\File\File.dll C:\p517\bin\perl.exe -MExtUtils::Command -e cp -- File.bs blib\arch\auto \Win32API\File\File.bs C:\p517\bin\perl.exe -MExtUtils::Command -e chmod -- 644 blib\arch\auto\ Win32API\File\File.bs C:\p517\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0, 'bl ib\lib', 'blib\arch')" t/*.t t/file.t .. ok t/pod.t ... skipped: Test::Pod 1.14 required for testing POD t/tie.t ... ok All tests successful. Files=3, Tests=277, 2 wallclock secs ( 0.14 usr + 0.08 sys = 0.22 CPU) Result: PASS C:\Documents and Settings\Administrator\Desktop\w32f> #### C:\Documents and Settings\Administrator\Desktop\w32f>dir Volume in drive C has no label. Volume Serial Number is 0CFF-E7B6 Directory of C:\Documents and Settings\Administrator\Desktop\w32f 07/22/2012 07:13 PM . 07/22/2012 07:13 PM .. 07/22/2012 07:13 PM blib 07/01/2011 02:47 AM 19,006 buffers.h 09/16/2009 05:57 PM 77 cFile.h 09/16/2009 05:57 PM 6,151 cFile.pc 07/22/2012 07:13 PM 0 cFile_pc_to_blib 07/01/2011 10:34 AM 5,637 Changes 09/16/2009 05:57 PM 5,302 const2perl.h 07/22/2012 06:55 PM ex 07/22/2012 06:55 PM ExtUtils 07/22/2012 07:13 PM 0 File.bs 07/22/2012 07:13 PM 49,513 File.c 07/22/2012 07:13 PM 98 File.def 07/22/2012 07:13 PM 348,195 File.obj 07/22/2012 07:13 PM 281,600 File.pgd 07/01/2011 10:34 AM 100,643 File.pm 02/25/2011 06:22 PM 15,217 File.xs 07/22/2012 07:13 PM 35,108 Makefile 07/22/2012 06:58 PM 35,108 Makefile.old 07/01/2011 02:52 AM 6,342 Makefile.PL 07/01/2011 10:36 AM 412 MANIFEST 07/01/2011 10:36 AM 1,141 META.json 07/01/2011 10:36 AM 641 META.yml 07/22/2012 07:13 PM 1,191 MYMETA.json 07/22/2012 07:13 PM 683 MYMETA.yml 07/22/2012 07:13 PM 0 pm_to_blib 09/16/2009 05:57 PM 8,068 ppport.h 07/01/2011 10:35 AM 4,818 README 07/22/2012 06:55 PM t 09/16/2009 05:57 PM 3,449 typemap 07/22/2012 07:13 PM 110,592 vc90.pdb 26 File(s) 1,038,992 bytes 6 Dir(s) 501,818,015,744 bytes free C:\Documents and Settings\Administrator\Desktop\w32f> #### C:\Documents and Settings\Administrator\Desktop\w32f>cd C:\Documents and Setting s\Administrator\Desktop\w32f\blib\arch\auto\Win32API\File C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e>dir Volume in drive C has no label. Volume Serial Number is 0CFF-E7B6 Directory of C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\aut o\Win32API\File 07/22/2012 07:13 PM . 07/22/2012 07:13 PM .. 07/22/2012 07:13 PM 0 .exists 07/22/2012 07:13 PM 42,680 File!1.pgc 07/22/2012 07:13 PM 42,240 File!2.pgc 07/22/2012 07:13 PM 0 File.bs 07/22/2012 07:13 PM 126,464 File.dll 07/22/2012 07:13 PM 958 File.exp 07/22/2012 07:13 PM 1,946 File.lib 07/22/2012 07:13 PM 371,712 File.pdb 8 File(s) 586,000 bytes 2 Dir(s) 501,818,171,392 bytes free C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e> #### C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e>copy *.pgc "C:\Documents and Settings\Administrator\Desktop\w32f" File!1.pgc File!2.pgc 2 file(s) copied. C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e> #### C:\Documents and Settings\Administrator\Desktop\w32f>dir Volume in drive C has no label. Volume Serial Number is 0CFF-E7B6 Directory of C:\Documents and Settings\Administrator\Desktop\w32f 07/22/2012 07:24 PM . 07/22/2012 07:24 PM .. 07/22/2012 07:13 PM blib 07/01/2011 02:47 AM 19,006 buffers.h 09/16/2009 05:57 PM 77 cFile.h 09/16/2009 05:57 PM 6,151 cFile.pc 07/22/2012 07:13 PM 0 cFile_pc_to_blib 07/01/2011 10:34 AM 5,637 Changes 09/16/2009 05:57 PM 5,302 const2perl.h 07/22/2012 06:55 PM ex 07/22/2012 06:55 PM ExtUtils 07/22/2012 07:13 PM 42,680 File!1.pgc 07/22/2012 07:13 PM 42,240 File!2.pgc 07/22/2012 07:13 PM 0 File.bs 07/22/2012 07:13 PM 49,513 File.c 07/22/2012 07:13 PM 98 File.def 07/22/2012 07:13 PM 348,195 File.obj 07/22/2012 07:13 PM 281,600 File.pgd 07/01/2011 10:34 AM 100,643 File.pm 02/25/2011 06:22 PM 15,217 File.xs 07/22/2012 07:13 PM 35,108 Makefile 07/22/2012 06:58 PM 35,108 Makefile.old 07/01/2011 02:52 AM 6,342 Makefile.PL 07/01/2011 10:36 AM 412 MANIFEST 07/01/2011 10:36 AM 1,141 META.json 07/01/2011 10:36 AM 641 META.yml 07/22/2012 07:13 PM 1,191 MYMETA.json 07/22/2012 07:13 PM 683 MYMETA.yml 07/22/2012 07:13 PM 0 pm_to_blib 09/16/2009 05:57 PM 8,068 ppport.h 07/01/2011 10:35 AM 4,818 README 07/22/2012 06:55 PM t 09/16/2009 05:57 PM 3,449 typemap 07/22/2012 07:13 PM 110,592 vc90.pdb 28 File(s) 1,123,912 bytes 6 Dir(s) 501,818,015,744 bytes free C:\Documents and Settings\Administrator\Desktop\w32f> #### C:\Documents and Settings\Administrator\Desktop\w32f>cd "C:\Documents and Settin gs\Administrator\Desktop\w32f\blib\arch\auto\Win32API\File" C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e>del File.dll C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e>dir Volume in drive C has no label. Volume Serial Number is 0CFF-E7B6 Directory of C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\aut o\Win32API\File 07/22/2012 07:28 PM . 07/22/2012 07:28 PM .. 07/22/2012 07:13 PM 0 .exists 07/22/2012 07:13 PM 42,680 File!1.pgc 07/22/2012 07:13 PM 42,240 File!2.pgc 07/22/2012 07:13 PM 0 File.bs 07/22/2012 07:13 PM 958 File.exp 07/22/2012 07:13 PM 1,946 File.lib 07/22/2012 07:13 PM 371,712 File.pdb 7 File(s) 459,536 bytes 2 Dir(s) 501,817,868,288 bytes free C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Win32API\Fil e> #### C:\Documents and Settings\Administrator\Desktop\w32f>nmake OPTIMIZE="-MD -Zi -DN DEBUG -O1 -GL" OTHERLDFLAGS="-LTCG:PGOPTIMIZE " install Microsoft (R) Program Maintenance Utility Version 9.00.30729.01 Copyright (C) Microsoft Corporation. All rights reserved. link -out:blib\arch\auto\Win32API\File\File.dll -dll -nologo -nodefaultl ib -debug -opt:ref,icf -ltcg -libpath:"c:\p517\lib\CORE" -machine:x86 "/manife stdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0. 0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'" F ile.obj -LTCG:PGOPTIMIZE C:\p517\lib\CORE\perl517.lib oldnames.lib kernel32.li b user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32 .lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.l ib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib -def:File.def Merging File!1.pgc Merging File!2.pgc Generating code 43 of 43 (100.00) profiled functions will be compiled for speed Finished generating code if exist blib\arch\auto\Win32API\File\File.dll.manifest mt -nologo -mani fest blib\arch\auto\Win32API\File\File.dll.manifest -outputresource:blib\arch\au to\Win32API\File\File.dll;2 if exist blib\arch\auto\Win32API\File\File.dll.manifest del blib\arch\au to\Win32API\File\File.dll.manifest C:\p517\bin\perl.exe -MExtUtils::Command -e chmod -- 755 blib\arch\auto\ Win32API\File\File.dll Files found in blib\arch: installing files in blib\lib into architecture depende nt library tree Installing C:\p517\lib\auto\Win32API\File\File!1.pgc Installing C:\p517\lib\auto\Win32API\File\File!2.pgc Installing C:\p517\lib\auto\Win32API\File\File.bs Installing C:\p517\lib\auto\Win32API\File\File.dll Installing C:\p517\lib\auto\Win32API\File\File.exp Installing C:\p517\lib\auto\Win32API\File\File.lib Installing C:\p517\lib\auto\Win32API\File\File.pdb Appending installation info to c:\p517\lib/perllocal.pod C:\Documents and Settings\Administrator\Desktop\w32f> #### Merging File!1.pgc Merging File!2.pgc Generating code 43 of 43 (100.00) profiled functions will be compiled for speed #### C:\Documents and Settings\Administrator\Desktop\w32f>pgomgr Microsoft (R) Profile Guided Optimization Manager 9.00.21022.08 Copyright (C) Microsoft Corporation. All rights reserved. Usage: PGOMGR [options] [Profile-Count-Paths ...] Profile-Database Options: /? Display this help /help Display this help /clear Remove all merge data from this data base /detail Display verbose program statistics /merge[:n] Merge the given PGC file(s), with optional integer weight /summary Display program statistics /unique Display decorated function names C:\Documents and Settings\Administrator\Desktop\w32f> #### .text C0CCh .rdata 171Eh .data 364h .rsrc 3C0h .reloc 92Ah #### .text AD70h .rdata 171Eh .data 364h .rsrc 3C0h .reloc 8CCh #### .text AD6Ah .rdata 171Eh .data 364h .rsrc 3C0h .reloc 8CCh