From 307b324a4268f8e9fec19ac96b810d76912cf132 Mon Sep 17 00:00:00 2001 From: Christian Mauderer Date: Fri, 11 Aug 2017 07:27:12 +0200 Subject: waf_generator: Copy headers if necessary. There are some cases, where a header is installed into a directory with a different name then it's source directory. In that case, the build might fail because the header is not found. One example would be the . The source for this file is in freebsd/crypto/openssl/crypto/opensslv.h. To allow the build to work in such cases too, copy such files into a temporary location in the build tree. --- builder.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'builder.py') diff --git a/builder.py b/builder.py index bb633cb2..1be1ced1 100755 --- a/builder.py +++ b/builder.py @@ -194,6 +194,10 @@ def includes(): '-ImDNSResponder/mDNSPosix', '-Itestsuite/include'] +def buildInclude(): + """ Returns the path where headers will be copied during build. """ + return 'build-include' + def cpuIncludes(): return ['-Irtemsbsd/@CPU@/include', '-Ifreebsd/sys/@CPU@/include'] @@ -205,6 +209,16 @@ def cxxflags(): return [] def headerPaths(): + """ Returns a list of information about what header files should be + installed. + + The list is also used to find headers with a local path that doesn't match + it's dest path. Due to the difference in the path name such files are + problematic during the build if they are included using their later + installation path (dest path) name. Therefore they are copied into a + sub-directory of the build path so that they can be included with their + normal installation path. """ + # local path wildcard dest path return [('rtemsbsd/include', '*.h', ''), ('rtemsbsd/mghttpd', 'mongoose.h', 'mghttpd'), -- cgit v1.2.3