NAME
h2ph - convert .h C header files to .ph Perl header files
SYNOPSIS
hh22pphh [[-dd ddeessttiinnaattiioonn ddiirreeccttoorryy]] [[-rr || -aa]] [[-ll]] [[hheeaaddeerrffiilleess]]
DESCRIPTION
h2ph converts any C header files specified to the corresponding Perl
header file format. It is most easily run while in /usr/include:cd /usr/include; h2ph * sys/*
orcd /usr/include; h2ph * sys/* arpa/* netinet/*
orcd /usr/include; h2ph -r -l .
The output files are placed in the hierarchy rooted at Perl's architec-
ture dependent library directory. You can specify a different hierar-
chy with a -dd switch.
If run with no arguments, filters standard input to standard output. OOPPTTIIOONNSS-d destinationdir
Put the resulting ..pphh files beneath ddeessttiinnaattiioonnddiirr, instead ofbeneath the default Perl library location ($Config{'installsit-
search'}).-r Run recursively; if any of hheeaaddeerrffiilleess are directories, then run
h2ph on all files in those directories (and their subdirectories,
etc.). -rr and -aa are mutually exclusive.
-a Run automagically; convert hheeaaddeerrffiilleess, as well as any ..hh files
which they include. This option will search for ..hh files in alldirectories which your C compiler ordinarily uses. -aa and -rr are
mutually exclusive.-l Symbolic links will be replicated in the destination directory. If
-ll is not specified, then links are skipped over.
-h Put ``hints'' in the .ph files which will help in locating problems
with h2ph. In those cases when you rreeqquuiirree a ..pphh file containing
syntax errors, instead of the cryptic [ some error condition ] at (eval mmm) line nnn you will see the slightly more helpful [ some error condition ] at filename.ph line nnnHowever, the ..pphh files almost double in size when built using -hh.
-D Include the code from the ..hh file as a comment in the ..pphh file.
This is primarily used for debugging h2ph.
-Q ``Quiet'' mode; don't print out the names of the files being con-
verted. ENVIRONMENT No environment variables are used. FILES /usr/include/*.h /usr/include/sys/*.h etc. AUTHOR Larry WallSEE ALSO
perl(1) DIAGNOSTICS The usual warnings if it can't read or write the files involved.BUGS
Doesn't construct the %sizeof array for you.
It doesn't handle all C constructs, but it does attempt to isolate def-
initions inside evals so that you can get at the definitions that it can translate. It's only intended as a rough tool. You may need to dicker with the files produced. You have to run this program by hand; it's not run as part of the Perl installation. Doesn't handle complicated expressions built piecemeal, a la: enum { FIRSTVALUE, SECONDVALUE,#ifdef ABC
THIRDVALUE#endif
};Doesn't necessarily locate all of your C compiler's internally-defined
symbols.perl v5.8.6 2009-01-12 H2PH(1)