Anderson Carniel
Anderson Carniel

Reputation: 1771

What mean file with extension "h.in"?

I am studying the C language, and I saw a new extension that I had not seen before.

What do files with the extension like library.h.in mean?

Is it as the simple header with extension ".h"? What's the difference?

Upvotes: 57

Views: 37569

Answers (3)

syb0rg
syb0rg

Reputation: 8247

Files ending with .in are typically template files used by a program called configure that generates a new file without the extension after substituting for variable expansions. I.e., if you're looking at a source tree that has files called, e.g. Makefile.in in the tree, then ./configure will generate a usable Makefile that can be used to "make" from source.

Upvotes: 6

Daniel Fischer
Daniel Fischer

Reputation: 183968

Typically, a .h.in file is a header template that is filled in to become the actual header by a configure script based on the outcome of several tests for features present on the target platform.

Upvotes: 23

Vladimir Kolesnikov
Vladimir Kolesnikov

Reputation: 991

These files are usually the input for autoconf which will generate final .h files.

Here's an example from PCRE:

#define PCRE_MAJOR          @PCRE_MAJOR@
#define PCRE_MINOR          @PCRE_MINOR@
#define PCRE_PRERELEASE     @PCRE_PRERELEASE@
#define PCRE_DATE           @PCRE_DATE@

Autoconf will replace all variables (@…@) with the respective values and the result will be a .h file.

Upvotes: 48

Related Questions