from small one page howto to huge articles all in one place
 

search text in:





Poll
Which kernel version do you use?





poll results

Last additions:
using iotop to find disk usage hogs

using iotop to find disk usage hogs

words:

887

views:

195649

userrating:

average rating: 1.7 (102 votes) (1=very good 6=terrible)


May 25th. 2007:
Words

486

Views

252055

why adblockers are bad


Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

Workaround and fixes for the current Core Dump Handling vulnerability affected kernels

words:

161

views:

140919

userrating:

average rating: 1.4 (42 votes) (1=very good 6=terrible)


April, 26th. 2006:

Druckversion
You are here: manpages





H2PH

Section: Perl Programmers Reference Guide (1)
Updated: 2017-08-16
Index Return to Main Contents
 

NAME

h2ph - convert .h C header files to .ph Perl header files  

SYNOPSIS

h2ph [-d destination directory] [-r | -a] [-l] [-h] [-e] [-D] [-Q] [headerfiles]  

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/*

or

        cd /usr/include; h2ph * sys/* arpa/* netinet/*

or

        cd /usr/include; h2ph -r -l .

The output files are placed in the hierarchy rooted at Perl's architecture dependent library directory. You can specify a different hierarchy with a -d switch.

If run with no arguments, filters standard input to standard output.  

OPTIONS

-d destination_dir
Put the resulting .ph files beneath destination_dir, instead of beneath the default Perl library location ($Config{'installsitearch'}).
-r
Run recursively; if any of headerfiles are directories, then run h2ph on all files in those directories (and their subdirectories, etc.). -r and -a are mutually exclusive.
-a
Run automagically; convert headerfiles, as well as any .h files which they include. This option will search for .h files in all directories which your C compiler ordinarily uses. -a and -r are mutually exclusive.
-l
Symbolic links will be replicated in the destination directory. If -l 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 require a .ph 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 nnn

However, the .ph files almost double in size when built using -h.

-e
If an error is encountered during conversion, output file will be removed and a warning emitted instead of terminating the conversion immediately.
-D
Include the code from the .h file as a comment in the .ph file. This is primarily used for debugging h2ph.
-Q
'Quiet' mode; don't print out the names of the files being converted.
 

ENVIRONMENT

No environment variables are used.  

FILES

 /usr/include/*.h
 /usr/include/sys/*.h

etc.  

AUTHOR

Larry Wall  

SEE 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 definitions 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 {
        FIRST_VALUE,
        SECOND_VALUE,
    #ifdef ABC
        THIRD_VALUE
    #endif
    };

Doesn't necessarily locate all of your C compiler's internally-defined symbols.


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
ENVIRONMENT
FILES
AUTHOR
SEE ALSO
DIAGNOSTICS
BUGS





Support us on Content Nation
rdf newsfeed | rss newsfeed | Atom newsfeed
- Powered by LeopardCMS - Running on Gentoo -
Copyright 2004-2020 Sascha Nitsch Unternehmensberatung GmbH
Valid XHTML1.1 : Valid CSS : buttonmaker
- Level Triple-A Conformance to Web Content Accessibility Guidelines 1.0 -
- Copyright and legal notices -
Time to create this page: 18.9 ms