Commit graph

10 commits

Author SHA1 Message Date
Thomas Vigouroux
81d533d2d1
Fix compilation warnings (#635)
* lib: fix compilation warnings

* ci: add CFLAGS
2020-06-03 12:19:57 -07:00
Eli Schwartz
af498bc0c3
Add a simple Makefile-based build system.
This produces static/shared libraries as well as a pkg-config file, and
installs them to the standard Unix hierarchy. GNU Make is assumed as
features like $(wildcard ...) or $(shell uname) may not work elsewhere,
but it should otherwise build on most/all Unix platforms.

Note that we assume the following POSIX default rules/macros exist, so
we don't bother redefining them:
- pattern rules for compiling .c -> .o
- $(CC)
- $(AR)

Special note on the .pc file generation: we do most variable
replacements in one go, but delay @PREFIX@ so that we can first find
existing substring instances of the prefix value (if libdir/includedir
reside within the prefix), and update them to use a literal pkg-config
variable '${prefix}'. This is fairly compact (one single sed) while
still letting us produce pkg-config files that support runtime
redefinition à la cross-compilation.
2020-04-21 23:49:19 -04:00
Max Brunsfeld
67e008d15d Generate makefile with gyp
- Add gyp submodule
- Add script to generate makefile with gyp
- Switch travis build to do this
2014-03-03 13:20:44 -08:00
Max Brunsfeld
3c646d707a Add static library as make target 2014-03-02 00:07:00 -08:00
Max Brunsfeld
ded54a3a1a Fix some memory management bugs with trees 2014-03-01 00:25:05 -08:00
Max Brunsfeld
cdf63b6083 Add missing includes 2014-02-20 23:11:27 -08:00
Max Brunsfeld
9f0a395c0d Remove clang -stdlib flag in makefile 2014-02-19 09:24:55 -08:00
Max Brunsfeld
6b23a5ac0d Respect CXX env var in Makefile 2014-02-18 12:38:29 -08:00
Max Brunsfeld
2c56612650 Get makefile working 2014-02-18 09:07:00 -08:00
Max Brunsfeld
84c5bceb81 Initial commit 2013-11-05 22:15:19 -08:00