Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 May 2016 23:08:55 +0300
From:      Demetrius Siluanius <dsiluanius@gmail.com>
To:        freebsd-hackers@freebsd.org
Subject:   bsd.incs.mk: include subdirectories
Message-ID:  <CAEP0=Oa%2BXyNBOUb4SYUBzqG%2BioV9QZe-iwoUXGppqAoHUAai3w@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hello everyone!

Recently I started porting a number of my projects to BSD world. I realized it
would be great if I could use a native make(1) tool instead of GNU make. I'm
really impressed how easy it is to create a makefile for a library with almost
a single '.include bsd.lib.mk' statement. Thank you guys for such an amazing
build system!

The only thing I couldn't deal with is when headers must be placed into
subdirectories. For simplicity let's assume that project's headers hierarchy is
the following one:
    include/
        mylib/
            A/
                A0.h
                A1.h
            B/
                B0.h
                B1.h
            base.h

The only header that will be used is "mylib/base.h", but it includes other
headers using statements '#include "A/A0.h". What should I do to install files
like this? I can't really understand what's happening inside of bsd.incs.mk
file, but I guess there should be something simpler than overriding the default
'installincludes' target.

I could't find any relevant information; I tried to find an example Makefile
which could have a similar headers hierarchy, but didn't succeed. Could you
help me, please? Thank you!



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAEP0=Oa%2BXyNBOUb4SYUBzqG%2BioV9QZe-iwoUXGppqAoHUAai3w>