Skip to content
This repository was archived by the owner on Feb 12, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@

*Not Released Yet*

- Introduced `PIPE(...)` macro.

## Deprecations

- `FOREACH_VARGS(...)` is deprecated. Use `FOREACH_VARGS_TYPE(...)` instead.

# 0.2.0 — Removing Everything

*2021-01-30*
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ The idea is that you should not need anything but a C compiler to build a C proj

Try it out right here:

```
```console
$ cc ./nobuild.c -o nobuild
$ ./nobuild
```
Expand Down
3 changes: 2 additions & 1 deletion examples/.gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
string
foreach
logging
file
file
pipe
2 changes: 1 addition & 1 deletion examples/file.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ void print_file_recursively(const char *path)
}
}

int main(int argc, char *argv[])
int main(void)
{
DEMO(IS_DIR("./nobuild.c"));
DEMO(IS_DIR("./examples"));
Expand Down
4 changes: 2 additions & 2 deletions examples/foreach.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ void foreach_vargs(int ignore, ...)
{
va_list args;

FOREACH_VARGS(ignore, arg, args, {
FOREACH_VARGS_TYPE(ignore, const char*, arg, args, {
INFO(" %s", arg);
});
}
Expand Down Expand Up @@ -34,7 +34,7 @@ void foreach_file_in_dir(const char *dir_path)
expr; \
} while(0)

int main(int argc, char *argv[])
int main(void)
{
DEMO(foreach_vargs(69, "foo", "bar", "baz", NULL));
DEMO(foreach_array());
Expand Down
2 changes: 1 addition & 1 deletion examples/logging.c
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#define NOBUILD_IMPLEMENTATION
#include "../nobuild.h"

int main(int argc, char *argv[])
int main(void)
{
INFO(" Informational Message");
WARN(" Warning Message");
Expand Down
13 changes: 13 additions & 0 deletions examples/pipe.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#define NOBUILD_IMPLEMENTATION
#include "../nobuild.h"

int main(void)
{
#if _WIN32
WARN("Piping is not implemented on Windows yet");
#else
PIPE(IN("./nobuild.c"), CHAIN("cat"));
#endif

return 0;
}
2 changes: 1 addition & 1 deletion examples/string.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
#define DEMO_D(expr) \
INFO(" " #expr " == %d", expr)

int main(int argc, char *argv[])
int main(void)
{
DEMO_S(CONCAT("foo", "bar", "baz"));
DEMO_S(PATH("foo", "bar", "baz"));
Expand Down
7 changes: 6 additions & 1 deletion nobuild.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#define NOBUILD_IMPLEMENTATION
#include "./nobuild.h"

#define CFLAGS "-Wall", "-Wextra", "-std=c11", "-pedantic", "-ggdb"

void check_example(const char *example)
{
const char *example_path = PATH("examples", NOEXT(example));
Expand All @@ -11,7 +13,10 @@ void check_example(const char *example)
CMD("cl.exe", "/Fe.\\examples\\", PATH("examples", example));
CMD(CONCAT(example_path, ".exe"));
#else
CMD("cc", "-o", example_path, PATH("examples", example));
const char *cc = getenv("CC");
if (cc == NULL) cc = "cc";

CMD(cc, CFLAGS, "-o", example_path, PATH("examples", example));
CMD(example_path);
#endif // _WIN32
}
Expand Down
Loading