dascandy / evoke

Magic build tool
Apache License 2.0
166 stars 17 forks source link

Build just fails #73

Closed davidkennedydev closed 4 years ago

davidkennedydev commented 5 years ago

Describe the bug Just doesn't build, probably because some portability issue.

To Reproduce Steps to reproduce the behavior:

  1. mkdir build && cd build # create build directory
  2. cmake .. # generate build system
  3. cmake --build . # build evoke

Expected behavior Correct build and available executable.

Screenshots

Scanning dependencies of target evoke
[  4%] Building CXX object CMakeFiles/evoke.dir/evoke/src/Executor.cpp.o
In file included from /opt/evoke/project/include/PendingCommand.h:3,
                 from /opt/evoke/evoke/src/Executor.cpp:3:
/opt/evoke/project/include/File.h: In member function ‘time_t File::lastwrite()’:
/opt/evoke/project/include/File.h:62:50: error: ‘to_time_t’ is not a member of ‘std::chrono::time_point<std::filesystem::__file_clock>::clock’ {aka ‘std::filesystem::__file_clock’}
   62 |             lastwrite_ = decltype(ftime)::clock::to_time_t(ftime);
      |                                                  ^~~~~~~~~
gmake[2]: *** [CMakeFiles/evoke.dir/build.make:63: CMakeFiles/evoke.dir/evoke/src/Executor.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:73: CMakeFiles/evoke.dir/all] Error 2
gmake: *** [Makefile:84: all] Error 2

System (please complete the following information):

Additional context I just follow the default instructions on README.md on a modern full featured linux distribution, that just should work.

dascandy commented 4 years ago

Completely agree. The offending code was preliminary support for std::filesystem, which is not widespread enough and sufficiently different from boost::filesystem as to induce bugs (as you've shown). I've removed the std::filesystem support and added more CI support. This was on a branch initially, hence the delay in replying; I wanted to wait until it was on the master branch.

Thanks for the report. It should work for you now, can you check?

dascandy commented 4 years ago

Closing due to inactivity. Let me know if it doesn't work for you.

davidkennedydev commented 4 years ago

Now it works!