poac
poac copied to clipboard
A package manager and build system for C++
In the Makefile generated by poac when the CXX environment variable is not specified, CXX is specified as follows. ```Makefile CXX ?= clang++ # https://github.com/poac-dev/poac/blob/0.9.3/src/BuildConfig.cc#L569 ``` In this case, CXX...
https://github.com/poac-dev/poac/blob/23471b6c352809dff0d0655cbb47586e1c8e3358/src/Logger.hpp For `error`, `warn`, `info`, `debug`, and `trace`, we'd like to use `fmt::format` style formatting instead of `std::ostream` (internal implementation details). For example, the following usage is not that clear:...
After https://github.com/poac-dev/poac/pull/1025, [Rustify/Aliases.hpp](https://github.com/poac-dev/poac/blob/23471b6c352809dff0d0655cbb47586e1c8e3358/src/Rustify/Aliases.hpp) does not basically represent aliases or _Rusty_ things (`_path` and string literals are not related). Renaming it to `Common.hpp` makes more sense now.
Especially when a header file is included by multiple source files, multithreaded compilations emit the same warnings/errors for the same header file. If there's a way to avoid this (terminate...
We generally aren't concerned about third-party libraries' warnings (and clang-tidy checks), but security-conscious projects might still want to see those warnings, (preferably, without requiring Makefile to be regenerated).
Currently, all subcommands behavior is not tested at all. We might want to implement https://github.com/poac-dev/poac/issues/993 first or do this at the same time. The test structure/style can be found [here](https://github.com/poac-dev/poac/tree/6e5cdda4c82f3b8a7607891ab0293abbe63d46a2/testsOld/ui).
Integration with [`ccache`](https://ccache.dev/) would be nice, although this may complicate the build feature.
Can we somehow block bad words for package names? We need this feature in the server as well and this can be implemented here: https://github.com/poac-dev/poac/blob/6e5cdda4c82f3b8a7607891ab0293abbe63d46a2/src/Manifest.cc#L202-L242
We may want to consider generating .d files instead of messing up the generated Makefile for poac build.