aboutsummaryrefslogtreecommitdiff
path: root/butl/buildfile
blob: 0f45f42a78c9b510237a15463ca098399650313b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# file      : butl/buildfile
# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd
# license   : MIT; see accompanying LICENSE file

lib{butl}:                         \
{hxx         cxx}{ base64        } \
{hxx         cxx}{ char-scanner  } \
{hxx            }{ export        } \
{hxx ixx     cxx}{ fdstream      } \
{hxx ixx     cxx}{ filesystem    } \
{hxx            }{ multi-index   } \
{hxx            }{ optional      } \
{hxx         cxx}{ pager         } \
{hxx ixx txx cxx}{ path          } \
{hxx            }{ path-io       } \
{hxx            }{ path-map      } \
{hxx     txx    }{ prefix-map    } \
{hxx ixx     cxx}{ process       } \
{hxx         cxx}{ sha256        } \
{hxx     txx    }{ string-table  } \
{hxx         cxx}{ timestamp     } \
{hxx         cxx}{ triplet       } \
{hxx ixx        }{ utility       } \
{hxx            }{ vector-view   } \
{hxx            }{ version       }

# Exclude these from compilation on non-Windows targets.
#
if ($cxx.target.class == "windows")
  lib{butl}: {hxx         cxx}{ win32-utility }
else
  lib{butl}: file{ win32-utility win32-utility.cxx }

# This one is included into sha256.cxx so treat it as file to exclude
# from the compilation.
#
lib{butl}: file{sha256c.c}

# These ones are included into timestamp.cxx so treat them as files to exclude
# from the compilation.
#
lib{butl}: file{strptime.c timelocal.h timelocal.c}

# For pre-releases use the complete version to make sure they cannot be used
# in place of another pre-release or the final version.
#
if $abi_prerelease
  lib{butl}: bin.lib.version = @-$version
else
  lib{butl}: bin.lib.version = @-$abi_major.$abi_minor

cxx.poptions =+ -I$src_root
obja{*}: cxx.poptions += -DLIBBUTL_STATIC_BUILD
objs{*}: cxx.poptions += -DLIBBUTL_SHARED_BUILD

lib{butl}: cxx.export.poptions = -I$src_root
liba{butl}: cxx.export.poptions += -DLIBBUTL_STATIC
libs{butl}: cxx.export.poptions += -DLIBBUTL_SHARED

# Install into the butl/ subdirectory of, say, /usr/include/.
#
install.include = $install.include/butl/