Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

Commit

Permalink
[WIP] New build system.
Browse files Browse the repository at this point in the history
Rearchitecture of the the build system.  A vast simplification.

Changes
- ./configure can produce an XCode project of the Turi source code.
- deps/ can be compiled and installed out of the regular build process.
  Helpful for the XCode project.
- All packages in src/external/ and src/visualization compile into static
  libraries.
- The rest of the code base compiles into a single shared library.  This
  means that most everything occurs in one single CMakeLists.txt file
  using standard cmake commands.
- All headers are installed into targets/include when `make install` is
  called.  The main library is installed into targets/lib.
- The code definitions that reflect compiler oddities (e.g.
  is std::hash<int128_t> defined) are dumped into a single header file,
  src/turi_common.h.  All source files and headers include this file
  first.  This allows other programs to link against this library /
  headers reliably.
- The python part of TuriCreate now builds through the standard
  setup.py method. Cython / pybind11 extensions are compiled and
  packaged using the standard extensions mechanisms and linking against
  the installed Turi headers.

WIP TODO: the python installation, deployment.
  • Loading branch information
Hoyt Koepke committed Mar 10, 2020
1 parent 038db92 commit 008d89c
Show file tree
Hide file tree
Showing 1,373 changed files with 2,625 additions and 2,410 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ syntax: glob
debug/*
release/*
profile/*
src/turi_common.h
dist/turicreateapi*
configure.deps
config.log
Expand Down
Loading

0 comments on commit 008d89c

Please sign in to comment.