From 0dfb3d4b770c60800d5ae75832bf32970f95e964 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sat, 9 Jun 2018 17:13:54 +0200 Subject: Initial take on vcpkg packaging --- buildfile | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 buildfile (limited to 'buildfile') diff --git a/buildfile b/buildfile new file mode 100644 index 0000000..9dde155 --- /dev/null +++ b/buildfile @@ -0,0 +1,39 @@ +./: vcpkg/ manifest + +vcpkg/ +{ + ./: toolsrc/ + + toolsrc/ + { + ./: vcpkg/exe{vcpkg} file{VERSION.txt} + + # @@ Specify extensions explicitly because of source file names like + # commands.edit.cpp. Failed that, we will end up treating, in this case + # .edit, as a specified extension (because the pattern machinery will + # remove .cpp from matches that it has added to the pattern). + # + # @@ Not clear what's the right place for the excutable. + # + vcpkg/exe{vcpkg}: cxx{src/vcpkg/**.cpp +src/vcpkg} \ + hxx{include/vcpkg/**.h +include/pch} \ + fsdir{vcpkg/} + + cxx.poptions =+ -DDISABLE_METRICS=1 "-I$src_base/include" + + # Currently upstream is full of warnings, so disable for now. + # + if ($cxx.class == 'gcc') + cxx.coptions += -Wno-all -Wno-extra + + # For some standard libraries std::filesystem is in a separate library. + # + if ($cxx.stdlib == 'libstdc++') + cxx.libs += -lstdc++fs + elif ($cxx.stdlib == 'libc++') + cxx.libs += -lc++experimental + + if ($cxx.target.class == 'windows') + cxx.libs += bcrypt.lib + } +} -- cgit v1.1