Thu, 23 Nov 2023 23:33:09 +0100
add update-rules script
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://unixwork.de/uwproj">
3 <config>
4 <var name="src_dir" exec="true">pwd</var>
5 <var name="DOXYGEN" exec="true">command -v doxygen</var>
6 <var name="PANDOC" exec="true">command -v pandoc</var>
7 <var name="CMAKE" exec="true">command -v cmake</var>
8 </config>
10 <dependency>
11 <make>
12 # library version
13 VERSION=3.0.0
14 LIBVERSION=4.0.0
15 LIBVERSION_MAJOR=4
17 # build directory structure !! do not change or override !!
18 build_dir=${src_dir}/build
19 docs_dir=${src_dir}/build/docs
20 dist_dir=${src_dir}/dist
21 </make>
22 </dependency>
24 <dependency name="file-tools">
25 <make>
26 MKDIR=/bin/mkdir -p
27 RMFILE=/bin/rm -f
28 RMDIR=/bin/rm -f -R
29 COPYFILE=/bin/cp -f
30 COPYALL=/bin/cp -f -R
31 SYMLINK=/bin/ln -s
32 </make>
33 </dependency>
35 <dependency name="c" platform="mingw">
36 <lang>c</lang>
37 <make>
38 AR=ar
39 ARFLAGS=r
40 STLIB_EXT=.lib
41 SHLIB_EXT=.dll
42 </make>
43 </dependency>
45 <dependency name="c" platform="macos">
46 <lang>c</lang>
47 <make>
48 AR=ar
49 ARFLAGS=r
50 STLIB_EXT=.a
51 SHLIB_EXT=.dylib
52 </make>
53 </dependency>
55 <dependency name="c" platform="unix">
56 <lang>c</lang>
57 <make>
58 AR=ar
59 ARFLAGS=r
60 STLIB_EXT=.a
61 SHLIB_EXT=.so
62 </make>
63 </dependency>
65 <dependency name="cpp">
66 <lang>cpp</lang>
67 </dependency>
69 <dependency name="cmake">
70 <test>test -n "$CMAKE"</test>
71 </dependency>
73 <dependency name="doxygen">
74 <test>test -n "$DOXYGEN"</test>
75 </dependency>
77 <dependency name="pandoc">
78 <test>test -n "$PANDOC"</test>
79 </dependency>
81 <target>
82 <option arg="with-tests">
83 <value str="yes">
84 <dependencies>cpp,cmake</dependencies>
85 <make>WITH_TESTS=yes</make>
86 </value>
87 <value str="no"/>
88 <default value="yes"/>
89 <default value="no"/>
90 </option>
91 <option arg="with-docs">
92 <value str="all">
93 <dependencies>pandoc,doxygen</dependencies>
94 <make>
95 # Documentation
96 WITH_DOCS_API=yes
97 WITH_DOCS_HTML=yes
98 </make>
99 </value>
100 <value str="html">
101 <dependencies>pandoc</dependencies>
102 <make>
103 # Documentation
104 WITH_DOCS_HTML=yes
105 </make>
106 </value>
107 <value str="api">
108 <dependencies>doxygen</dependencies>
109 <make>
110 # Documentation
111 WITH_DOCS_API=yes
112 </make>
113 </value>
114 <value str="none"/>
115 <default value="all"/>
116 <default value="html"/>
117 <default value="api"/>
118 <default value="none"/>
119 </option>
120 <dependencies>c,file-tools</dependencies>
121 </target>
122 </project>