nobuild.c 702 B

12345678910111213141516171819202122232425262728
  1. #define NOBUILD_IMPLEMENTATION
  2. #include "./nobuild.h"
  3. void check_example(const char *example)
  4. {
  5. const char *example_path = PATH("examples", remove_ext(example));
  6. #ifdef _WIN32
  7. CMD("cl.exe", "/Fe.\\examples\\", PATH("examples", example));
  8. CMD(CONCAT(example_path, ".exe"));
  9. #else
  10. CMD("cc", "-o", example_path, PATH("examples", example));
  11. CMD(example_path);
  12. #endif // _WIN32
  13. }
  14. int main(int argc, char *argv[])
  15. {
  16. FOREACH_FILE_IN_DIR(example, "examples", {
  17. if(*example != '.') {
  18. size_t n = strlen(example);
  19. if (n >= 2 && strcmp(example + n - 2, ".c") == 0) {
  20. check_example(example);
  21. }
  22. }
  23. });
  24. return 0;
  25. }