autotools

Subsume external library into source tree with Autotools.

I am developing a new project, using Autotools for my build infrastructure. I would like to subsume external dependencies into my source tree. These dependencies are using Autotools, as well. How can I configure my project's build scripts to build and link against subsumed dependencies? Though Duret-Lutz's tutorial is excellent, this sit...

Path managment in Linux programs

I have a newbie Linux programming question. Suppose I have a project that uses Autotools for compiling and deployment, and I have data files that are to be installed in a location like /var/something or /usr/share/something etc., but in Autoconf, I can change these installation paths. How should the program find these files? How does it ...

How to rebuild openssh 5.2p1 after changing configure.ac

I needed to add AM_PATH_CHECK to configure.am I then try to run the usual sequence of autotools commands to rebuild all the makefiles and whatnot: aclocal automake -ac autoheader autoreconf ./configure make and here my lack of understanding of autotools showes up because this release of openssh has no Makefile.am??? now what do I do? ...

How to go about adding unit tests to an established (autotools) C project

I have a fork of openssh with some new features and want to write some unit tests to make sure they work at build. Grafting Check into openssh's autotools configuration is diffacult (because I don't really understand autotools) Is there an easier to use C unit test framework? One less closely tied to autotools? How about a better way o...

Explicit Intermediate Object Files in GNU AutoMake

I have a C application I'm converting from a set of hand coded Makefiles to GNU AutoMake. It has a subdirectory that contains an interface header and several platform-dependent implementations. Currently an implementation is selected and built to an object file with a fixed name in that directory. The code that uses the driver interface ...

Using Autotools for a new shared library

What I want to do is to create a new shared library called libxxx that links against another shared library called libzzz, this shared library has an independent "pkg-config"-like tool, let's say it's called "zzz-config" which gives the cflags needed by the compilation phase when using the libzzz. What I want to do is: Create configure...

From configure scripts to Makefiles?

Hello. I'd like to build my own GNU/Linux system from scratch using cross-compilation (just like the CLFS project). Most of the packages I would use are distributed with a configure script, and you just have to run it with the right arguments. For various reasons, I'd like to skip this step, and run make instead. Of course I need a custo...

How to learn the Joy of Autotools?

So a couple years back I took some time to grok make, and it's paid off enormously. Writing little makefiles for building my projects and automating tasks is fun and productive. The downside is, of course, that my makefiles are overspecific, especially when it comes to platforms and library locations. So this is the point at which peo...

autotools: autoreconf can't find macro but aclocal can

I'm trying to use autotools for the first time as a developer, so excuse any noobishness. I'm using the Check unit testing library which defines the macro AM_PATH_CHECK in check.m4, which was installed in /usr/local/share/aclocal. I managed to get aclocal to recognize AM_PATH_CHECK by editing /usr/share/aclocal/dirlist to include /usr/...

Build 32bit on 64 bit Linux using a configure script

I'm using a 64bit system but want a set of 32bit binaries. What options must I pass to a configure script to generate a 32bit/x86 makefile? ...

Simplest way to compile an autotools based shared C library for Android?

I have a cross-platform C library that I need to compile for Android as a *.so file. The library consist of many .c and .h files, and it use autotools as it's buid system. (./configure && make dep && make). Afaik, the library does not depend on other libraries, other than libc and OpenSSL (which should be present on Andriod). I'm tryin...

Which files generated by Autotools should I keep in Git repository ?

Hi everyone. I am new to autotools and I am working on a C project. I want to add my project to a git repository but I am not sure, which files generated by the autotools I need to track and which should be ignored. Please provide some hints with regard to this. Thanks ...

autotools: don't include library when doing “make check”

So I'm writing tests for my code, and I want to stub out the calls to library functions (make sure that it's calling the right library calls at the right time, and that it handles errors appropriately). I think I'm SOL with the C standard library functions, but those aren't the only libraries I'm using. When building my final executabl...

How can you force recompilation of a single file in a Makefile?

The idea is that a project has a single file with __DATE__ and __TIME__ in it. It might be cool to have it recompiled without explicitly changing its modification date. edit: $(shell touch -c ..) might be a good solution if only clumsy. ...

Autotools - tar This does not look like a tar archive

After running make distcheck I get the message that I have successfully built the package and is ready for distribution. If I untar the tar.gz with tar -zxvf hello-0.2.tar.gz it successfully extracts all of its contents. However, when I try to extract them in different machines I get: tar: This does not look like a tar archive tar: Skip...

Determine all of the file dependencies in a build process that uses makefiles and ant scripts

I'm trying to understand the build process of a codebase. The project uses both autoconf (configure scripts that generate makefiles) and Maven. I would like to be able identify all of the file dependencies in the project, so that for any output file that ends up being generated by a build, I can identify how it was actually produced. Ul...

How to define macro for C project in autotools?

How do I define macros on a per-project, or per file level in a C project using autotools? Presently I have this: mount_cpfs_CPPFLAGS = -DFUSE_USE_VERSION=28, but I'm not sure that this is the "portable" way to define a C macro. ...

Macro definitions for headers, where to put them?

When defining macros that headers rely on, such as _FILE_OFFSET_BITS, FUSE_USE_VERSION, _GNU_SOURCE among others, where is the best place to put them? Some possibilities I've considered include At the top of the any source files that rely on definitions exposed by headers included in that file Immediately before the include for the re...

Autotools - selecting library versions to link with.

I have a project that links to libssl.so and I'm hitting a bug in libssl and never versions of the lib fixes it. However on the system I'm working I don't have root account so I've built libssl and prerequirements myself under $HOME/opt. Now, when I'm doing: ./configure --prefix=`$HOME/opt` make the build system still uses the older ...

Git diff ignore

Is it somehow possible to ignore certain files during git diff? I'm specifically interested in filtering out Makefile.in, Makefile, configure (and all that auto-generated crap). ...