Manual Pages for Linux CentOS command on man Devel::PPPort
MyWebUniversity

Manual Pages for Linux CentOS command on man Devel::PPPort

Devel::PPPort(3pm) Perl Programmers Reference Guide Devel::PPPort(3pm)

NAME

Devel::PPPort - Perl/Pollution/Portability SYNOPSIS

Devel::PPPort::WriteFile(); # defaults to ./ppport.h Devel::PPPort::WriteFile('someheader.h'); DESCRIPTION Perl's API has changed over time, gaining new features, new functions, increasing its flexibility, and reducing the impact on the C namespace environment (reduced pollution). The header file written by this module, typically ppport.h, attempts to bring some of the newer Perl API features to older versions of Perl, so that you can worry less about keeping track of old releases, but users can still reap the benefit. "Devel::PPPort" contains a single function, called "WriteFile". Its only purpose is to write the ppport.h C header file. This file contains a series of macros and, if explicitly requested, functions that allow XS modules to be built using older versions of Perl. Currently, Perl versions from 5.003 to 5.11.5 are supported. This module is used by "h2xs" to write the file ppport.h. Why use ppport.h? You should use ppport.h in modern code so that your code will work with the widest range of Perl interpreters possible, without significant additional work. You should attempt older code to fully use ppport.h, because the reduced pollution of newer Perl versions is an important thing. It's so important that the old polluting ways of original Perl modules will not be supported very far into the future, and your module will almost certainly break! By adapting to it now, you'll gain compatibility and a sense of having done the electronic ecology some good. How to use ppport.h Don't direct the users of your module to download "Devel::PPPort". They are most probably no XS writers. Also, don't make ppport.h optional. Rather, just take the most recent copy of ppport.h that you can find (e.g. by generating it with the latest "Devel::PPPort" release from CPAN), copy it into your project, adjust your project to use it, and distribute the header along with your module. Running ppport.h But ppport.h is more than just a C header. It's also a Perl script that can check your source code. It will suggest hints and portability notes, and can even make suggestions on how to change your code. You can run it like any other Perl program: perl ppport.h [options] [files] It also has embedded documentation, so you can use perldoc ppport.h to find out more about how to use it. FUNCTIONS WriteFile "WriteFile" takes one optional argument. When called with one argument, it expects to be passed a filename. When called with no arguments, it defaults to the filename ppport.h. The function returns a true value if the file was written successfully. Otherwise it returns a false value. COMPATIBILITY ppport.h supports Perl versions from 5.003 to 5.11.5 in threaded and

non-threaded configurations. Provided Perl compatibility API The header file written by this module, typically ppport.h, provides access to the following elements of the Perl API that is not available in older Perl releases: aMYCXT pMYCXT aMYCXT aMYCXT aTHX aTHX aTHXR aTHXR AvFILLp boolSV callargv callmethod callpv callsv ckWARN CopFILE CopFILEset CopFILEAV CopFILEGV CopFILEGVset CopFILESV CopSTASH CopSTASHeq CopSTASHset CopSTASHPV CopSTASHPVset CopyD CPERLscope dAX dAXMARK DEFSV DEFSVset dITEMS dMYCXT dMYCXTSV dNOOP dTHR dTHX dTHXa dTHXoa dTHXR dUNDERBAR dVAR dXCPT dXSTARG ENDEXTERNC ERRSV evalpv evalsv EXTERNC GMETHOD getav getcv getcvnflags getcvs gethv getsv grokbin grokhex groknumber GROKNUMERICRADIX groknumericradix grokoct gvfetchpvnflags gvfetchpvs gvfetchsv gvstashpvn gvstashpvs GvSVn hvfetchs hvstores HvNAMEget HvNAMELENget INLOCALE INLOCALECOMPILETIME INLOCALERUNTIME INPERLCOMPILETIME INT2PTR ISNUMBERGREATERTHANUVMAX ISNUMBERINUV ISNUMBERINFINITY ISNUMBERNAN ISNUMBERNEG ISNUMBERNOTINT isALNUMC isASCII isBLANK isCNTRL isGRAPH isGVwithGP isPRINT isPSXSPC isPUNCT isXDIGIT IVdf IVSIZE IVTYPE loadmodule memEQ memEQs memNE memNEs MoveD mPUSHi mPUSHn mPUSHp mPUSHs mPUSHu mXPUSHi mXPUSHn mXPUSHp mXPUSHs mXPUSHu MYCXT MYCXTCLONE MYCXTINIT mysnprintf mysprintf mystrlcat mystrlcpy newCONSTSUB newRVinc newRVnoinc newSVtype newSVpvn newSVpvnflags newSVpvnshare newSVpvnutf8 newSVpvs newSVpvsflags newSVpvsshare newSVuv Newx Newxc Newxz NOOP NUM2PTR NVef NVff NVgf NVTYPE packWARN PERLABS PERLBCDVERSION PERLGCCBRACEGROUPSFORBIDDEN PERLHASH PERLINTMAX PERLINTMIN PERLLONGMAX PERLLONGMIN PERLMAGICarylen PERLMAGICbackref PERLMAGICbm PERLMAGICcollxfrm PERLMAGICdbfile PERLMAGICdbline PERLMAGICdefelem PERLMAGICenv PERLMAGICenvelem PERLMAGICext PERLMAGICfm PERLMAGICglob PERLMAGICisa PERLMAGICisaelem PERLMAGICmutex PERLMAGICnkeys PERLMAGICoverload PERLMAGICoverloadelem PERLMAGICoverloadtable PERLMAGICpos PERLMAGICqr PERLMAGICregdata PERLMAGICregdatum PERLMAGICregexglobal PERLMAGICshared PERLMAGICsharedscalar PERLMAGICsig PERLMAGICsigelem PERLMAGICsubstr PERLMAGICsv PERLMAGICtaint PERLMAGICtied PERLMAGICtiedelem PERLMAGICtiedscalar PERLMAGICutf8 PERLMAGICuvar PERLMAGICuvarelem PERLMAGICvec PERLMAGICvstring PERLPVESCAPEALL PERLPVESCAPEFIRSTCHAR PERLPVESCAPENOBACKSLASH PERLPVESCAPENOCLEAR PERLPVESCAPEQUOTE PERLPVESCAPERE PERLPVESCAPEUNI PERLPVESCAPEUNIDETECT PERLPVPRETTYDUMP PERLPVPRETTYELLIPSES PERLPVPRETTYLTGT PERLPVPRETTYNOCLEAR PERLPVPRETTYQUOTE PERLPVPRETTYREGPROP PERLQUADMAX PERLQUADMIN PERLREVISION PERLSCANALLOWUNDERSCORES PERLSCANDISALLOWPREFIX PERLSCANGREATERTHANUVMAX PERLSCANSILENTILLDIGIT PERLSHORTMAX PERLSHORTMIN PERLSIGNALSUNSAFEFLAG PERLSUBVERSION PERLUCHARMAX PERLUCHARMIN PERLUINTMAX PERLUINTMIN PERLULONGMAX PERLULONGMIN PERLUNUSEDARG PERLUNUSEDCONTEXT PERLUNUSEDDECL PERLUNUSEDVAR PERLUQUADMAX PERLUQUADMIN PERLUSEGCCBRACEGROUPS PERLUSHORTMAX PERLUSHORTMIN PERLVERSION Perlwarner Perlwarnernocontext PERLIOFUNCSCAST PERLIOFUNCSDECL PLbufend PLbufptr PLcompiling PLcopline PLcurcop PLcurstash PLDBsignal PLDBsingle PLDBsub PLDBtrace PLdebstash PLdefgv PLdiehook PLdirty PLdowarn PLerrgv PLerrorcount PLexpect PLhexdigit PLhints PLinmy PLinmystash PLlaststatval PLlexstate PLlexstuff PLlinestr PLna PLnomodify PLparser PLperldestructlevel PLperldb PLppaddr PLrsfp PLrsfpfilters PLsignals PLstackbase PLstacksp PLstatcache PLstdingv PLSv PLsvarenaroot PLsvno PLsvundef PLsvyes PLtainted PLtainting PLtokenbuf pMYCXT pMYCXT Poison PoisonFree PoisonNew PoisonWith pTHX pTHX PTR2IV PTR2nat PTR2NV PTR2ul PTR2UV PTRV PUSHmortal PUSHu pvdisplay pvescape pvpretty SAVEDEFSV STARTEXTERNC STARTMYCXT STMTEND STMTSTART STRWITHLEN sv2pvflags sv2pvnolen sv2pvbyte sv2pvbytenolen sv2uv svcatpvmg svcatpvfmg svcatpvfmgnocontext svcatpvnmg svcatpvnnomg svcatpvs svcatsvmg svcatsvnomg SVCONSTRETURN SVCOWDROPPV SVCOWSHAREDHASHKEYS SVGMAGIC SVHASTRAILINGNUL SVIMMEDIATEUNREF svmagicportable SVMUTABLERETURN SVNOSTEAL svpvnforceflags svpvnnomg svsetivmg svsetnvmg svsetpvmg svsetpvfmg svsetpvfmgnocontext svsetpvnmg svsetpvs svsetsvmg svsetsvnomg svsetuv svsetuvmg SVSMAGIC svusepvnmg SVUTF8NOENCODING svuv svvcatpvf svvcatpvfmg svvsetpvf svvsetpvfmg SVf SVfUTF8 SVfARG SvGETMAGIC SvIVnomg SvMAGICset SvPVconst SvPVflags SvPVflagsconst SvPVflagsconstnolen SvPVflagsmutable SvPVforce SvPVforceflags SvPVforceflagsmutable SvPVforceflagsnolen SvPVforcemutable SvPVforcenolen SvPVforcenomg SvPVforcenomgnolen SvPVmutable SvPVnolen SvPVnolenconst SvPVnomg SvPVnomgconst SvPVnomgconstnolen SvPVrenew SvPVbyte SvPVXconst SvPVXmutable SvREFCNTinc SvREFCNTincNN SvREFCNTincsimple SvREFCNTincsimpleNN SvREFCNTincsimplevoid SvREFCNTincsimplevoidNN SvREFCNTincvoid SvREFCNTincvoidNN SvRVset SvSHAREDHASH SvSTASHset SvUOK SvUV SvUVnomg SvUVset SvUVX SvUVx SvUVXx SvVSTRINGmg UNDERBAR UTF8MAXBYTES UVof UVSIZE UVTYPE UVuf UVXf UVxf vloadmodule vnewSVpvf WARNALL WARNAMBIGUOUS WARNASSERTIONS WARNBAREWORD WARNCLOSED WARNCLOSURE WARNDEBUGGING WARNDEPRECATED WARNDIGIT WARNEXEC WARNEXITING WARNGLOB WARNINPLACE WARNINTERNAL WARNIO WARNLAYER WARNMALLOC WARNMISC WARNNEWLINE WARNNUMERIC WARNONCE WARNOVERFLOW WARNPACK WARNPARENTHESIS WARNPIPE WARNPORTABLE WARNPRECEDENCE WARNPRINTF WARNPROTOTYPE WARNQW WARNRECURSION WARNREDEFINE WARNREGEXP WARNRESERVED WARNSEMICOLON WARNSEVERE WARNSIGNAL WARNSUBSTR WARNSYNTAX WARNTAINT WARNTHREADS WARNUNINITIALIZED WARNUNOPENED WARNUNPACK WARNUNTIE WARNUTF8 WARNVOID warner XCPTCATCH XCPTRETHROW XCPTTRYEND XCPTTRYSTART XPUSHmortal XPUSHu XSprePUSH XSPROTO XSRETURN XSRETURNUV XSTmUV ZeroD Perl API not supported by ppport.h There is still a big part of the API not supported by ppport.h. Either

because it doesn't make sense to back-port that part of the API, or simply because it hasn't been implemented yet. Patches welcome! Here's a list of the currently unsupported API, and also the version of Perl below which it is unsupported: perl 5.14.0 BhkDISABLE BhkENABLE BhkENTRYset MULTICALL PERLSYSTERM POPMULTICALL PUSHMULTICALL XopDISABLE XopENABLE XopENTRY XopENTRYset cophhnewempty mylstat mystat ref stashpvhvnamematch perl 5.13.10 foldEQutf8flags isutf8xidcont isutf8xidfirst perl 5.13.8 foldEQlatin1 mgfindext parsearithexpr parsefullexpr parselistexpr parsetermexpr svunmagicext perl 5.13.7 HvENAME OPCLASS SvPVnomgnolen XopFLAGS amagicderefcall bytescmputf8 cophints2hv cophintsfetchpv cophintsfetchpvn cophintsfetchpvs cophintsfetchsv cophh2hv cophhcopy cophhdeletepv cophhdeletepvn cophhdeletepvs cophhdeletesv cophhfetchpv cophhfetchpvn cophhfetchpvs cophhfetchsv cophhfree cophhstorepv cophhstorepvn cophhstorepvs cophhstoresv customopregister customopxop newFOROP newWHILEOP oplvalue opscope parsebarestmt parseblock parselabel perl 5.13.6 LINKLIST SvTRUEnomg ckentersubargslist ckentersubargsproto ckentersubargsprotoorlist cvgetcallchecker cvsetcallchecker isWORDCHAR lexstuffpv mgfreetype newSVpvshare opappendelem opappendlist opcontextualize oplinklist opprependelem parsestmtseq rv2cvopcv savesharedpvs savesharedsvpv sv2boolflags svcatpvflags svcatpvnomg svcatpvsflags svcatpvsmg svcatpvsnomg svcmpflags svcmplocaleflags svcollxfrmflags sveqflags svsetpvsmg svsetrefpvs perl 5.13.5 PLrpeepp callercx isOCTAL lexstuffpvs parsefullstmt perl 5.13.4 XSAPIVERSIONBOOTCHECK perl 5.13.3 blockhookregister croaknomodify perl 5.13.2 SvNVnomg findrundefsv foldEQ foldEQlocale foldEQutf8 hvfill svdecnomg svincnomg perl 5.13.1 croaksv diesv messsv sv2nvflags warnsv perl 5.11.5 svposu2bflags perl 5.11.4 prescanversion perl 5.11.2 PLkeywordplugin lexbufutf8 lexdiscardto lexgrowlinestr lexnextchunk lexpeekunichar lexreadspace lexreadto lexreadunichar lexstuffpvn lexstuffsv lexunstuff padfindmy perl 5.11.1 ckwarner ckwarnerd isutf8perlspace isutf8perlword isutf8posixdigit perl 5.11.0 GvAMupdate PLopfreehook SvOOKoffset aviterp fetchcoplabel gvaddbytype gvfetchmethodflags isasciistring pregfree2 saveadelete saveaelemflags savehdelete savehelemflags svutf8upgradeflagsgrow perl 5.10.1 HeUTF8 croakxsusage mrogetfromname mrogetprivatedata mroregister mrosetmro mrosetprivatedata savehints savepadsvandmortalize savepushi32ptr savepushptr savepushptrptr svinsertflags perl 5.10.0 hvcommon hvcommonkeylen svdestroyable sysinit sysinit3 systerm perl 5.9.5 PLparser Perlsignbit SvRX SvRXOK avcreateandpush avcreateandunshiftone gvfetchfileflags lexstart mrogetlinearisa mromethodchangedin mydirfd pregcomp ptrtableclear ptrtablefetch ptrtablefree ptrtablenew ptrtablesplit ptrtablestore recompile reintuitstart regnamedbuffall regnamedbuffexists regnamedbufffetch regnamedbufffirstkey regnamedbuffnextkey regnamedbuffscalar regfreeinternal savesharedpvn scanvstring upgversion perl 5.9.4 PerlIOcontextlayers gvnameset hvcopyhintshv myvsnprintf newXSflags regclassswash svdoes svusepvnflags perl 5.9.3 avarylenp ckwarn ckwarnd csighandler dMULTICALL doref gvconstsv hveiterp hveiterset hvnameset hvplaceholdersget hvplaceholdersp hvplaceholdersset hvriterp hvriterset isutf8stringloclen newGIVENOP newSVhek newWHENOP savepvs sortsvflags vverify perl 5.9.2 SvPVbyteforce findrundefsvoffset oprefcntlock oprefcntunlock savesvpv vnormal perl 5.9.1 hvclearplaceholders hvscalar scanversion sv2ivflags sv2uvflags perl 5.9.0 newversion savesetsvflags vcmp vnumify vstringify perl 5.8.3 SvIsCOW SvIsCOWsharedhash perl 5.8.1 SvVOK doingtaint findruncv isutf8stringloc packlist savebool savestackgrowcnt seed svcatdecode svcompile2op svsetpviv svsetpvivmg unpackstring perl 5.8.0 hviternextflags hvstoreflags isutf8idcont nothreadhook perl 5.7.3 OPDESC OPNAME PLpeepp PerlIOclearerr PerlIOclose PerlIOeof PerlIOerror PerlIOfileno PerlIOfill PerlIOflush PerlIOgetbase PerlIOgetbufsiz PerlIOgetcnt PerlIOgetptr PerlIOread PerlIOseek PerlIOsetcnt PerlIOsetptrcnt PerlIOsetlinebuf PerlIOstderr PerlIOstdin PerlIOstdout PerlIOtell PerlIOunread PerlIOwrite SvLOCK SvSHARE SvUNLOCK atforklock atforkunlock customopdesc customopname deb debstack debstackptrs gvfetchmethautoload ibcmputf8 myfork mysocketpair packcat perldestruct pvunidisplay savesharedpvref savesharedpv sortsv svcopypv svmagicext svnolocking svnosharing svrecodetoutf8 svunidisplay tounifold tounilower tounititle touniupper toutf8case toutf8fold toutf8lower toutf8title toutf8upper unpackstr uvchrtoutf8flags uvunitoutf8flags vdeb perl 5.7.2 calloc getcwdsv inittm malloc mfree minimktime myatof2 mystrftime opnull realloc svcatpvnflags svcatsvflags svsetsvflags svutf8upgradeflags svutf8upgradenomg swashfetch perl 5.7.1 POPpbytex bytesfromutf8 despatchsignals doopenn gvhandler islvaluesub mypopenlist savemortalizesv scannum svforcenormalflags svsetrefuv svunrefflags svutf8upgrade utf8length utf8touvchr utf8touvuni utf8ntouvuni uvunitoutf8 perl 5.6.1 SvGAMAGIC applyattrsstring bytestoutf8 gvefullname4 gvfullname4 isutf8string savegenericpvref utf16toutf8 utf16toutf8reversed utf8tobytes perl 5.6.0 PERLSYSINIT3 SvIOKUV SvIOKnotUV SvIOKonlyUV SvPOKonlyUTF8 SvPVbytenolen SvPVbytex SvPVbytexforce SvPVutf8 SvPVutf8force SvPVutf8nolen SvPVutf8x SvPVutf8xforce SvUOK SvUTF8 SvUTF8off SvUTF8on avdelete avexists callatexit casti32 castiv castulong castuv dogvdump dogvgvdump dohvdump domagicdump doopdump doopen9 dopmopdump dosvdump dumpall dumpeval dumpform dumpindent dumppacksubs dumpsub dumpvindent getcontext getppaddr gvdump initi18nl10n initi18nl14n isunialnum isunialnumlc isunialpha isunialphalc isuniascii isuniasciilc isunicntrl isunicntrllc isunidigit isunidigitlc isunigraph isunigraphlc isuniidfirst isuniidfirstlc isunilower isunilowerlc isuniprint isuniprintlc isunipunct isunipunctlc isunispace isunispacelc isuniupper isuniupperlc isunixdigit isunixdigitlc isutf8alnum isutf8alpha isutf8ascii isutf8char isutf8cntrl isutf8digit isutf8graph isutf8idfirst isutf8lower isutf8mark isutf8print isutf8punct isutf8space isutf8upper isutf8xdigit magicdump mess myatof myfflushall newANONATTRSUB newATTRSUB newXS newXSproto newcollate newctype newnumeric opdump perlparse pmopdump reintuitstring reginitcolors requirepv safesyscalloc safesysfree safesysmalloc safesysrealloc saveI8 savealloc savedestructor savedestructorx saverecontext savevptr scanbin setcontext setnumericlocal setnumericradix setnumericstandard strtoversion sv2pvutf8 sv2pvutf8nolen svforcenormal svlenutf8 svposb2u svposu2b svpv svpvbyte svpvbyten svpvbytenforce svpvutf8 svpvutf8n svpvutf8nforce svrvweaken svutf8decode svutf8downgrade svutf8encode swashinit tmpsgrow tounilowerlc tounititlelc touniupperlc utf8distance utf8hop vcroak vform vmess vwarn vwarner perl 5.00503 POPpx getvtbl savegenericsvref perl 5.005 PLmodglobal cxdump debop debprofdump fbmcompile fbminstr getopdescs getopnames initstacks mglength mgsize newHVhv newstackinfo regdump regexecflags regnext runopsdebug runopsstandard saveiv saveop screaminstr sviv svnv svpeek svpvn svpvnnomg svtrue perl 5.00405 dobinmode saveaelem savehelem perl 5.004 GIMMEV GVOID HEfSVKEY HeHASH HeKEY HeKLEN HePV HeSVKEY HeSVKEYforce HeSVKEYset HeVAL SvSetMagicSV SvSetMagicSVnosteal SvSetSVnosteal SvTAINTED SvTAINTEDoff SvTAINTEDon blockgimme calllist cvconstsv delimcpy doopen form gvautoload4 gvefullname3 gvfetchmethodautoload gvfullname3 hvdelayfreeent hvdeleteent hvexistsent hvfetchent hvfreeent hviterkeysv hvksplit hvstoreent ibcmplocale myfailureexit mymemcmp mypclose mypopen newSVpvf rsignal rsignalstate saveI16 savegp sharehek startsubparse svcatpvf svcatpvfmg svcmplocale svderivedfrom svgets svmagicportable svsetpvf svsetpvfmg svtaint svtainted svuntaint svvcatpvf svvcatpvfmg svvcatpvfn svvsetpvf svvsetpvfmg svvsetpvfn unsharepvn vnewSVpvf warner BUGS If you find any bugs, "Devel::PPPort" doesn't seem to build on your system or any of its tests fail, please use the CPAN Request Tracker at to create a ticket for the module. AUTHORS · Version 1.x of Devel::PPPort was written by Kenneth Albanowski. · Version 2.x was ported to the Perl core by Paul Marquess.

· Version 3.x was ported back to CPAN by Marcus Holland-Moritz. COPYRIGHT

Version 3.x, Copyright (C) 2004-2010, Marcus Holland-Moritz. Version 2.x, Copyright (C) 2001, Paul Marquess. Version 1.x, Copyright (C) 1999, Kenneth Albanowski. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO See h2xs, ppport.h.

perl v5.16.3 2018-10-30 Devel::PPPort(3pm)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™