]> git.seodisparate.com - c_simple_http/commitdiff
Skeleton project initial code
authorStephen Seo <seo.disparate@gmail.com>
Thu, 29 Aug 2024 05:19:46 +0000 (14:19 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Thu, 29 Aug 2024 05:19:46 +0000 (14:19 +0900)
.gitignore [new file with mode: 0644]
Makefile [new file with mode: 0644]
src/main.c [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..06d0d80
--- /dev/null
@@ -0,0 +1,2 @@
+/c_simple_http
+/objs/
diff --git a/Makefile b/Makefile
new file mode 100644 (file)
index 0000000..8368f18
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,29 @@
+COMMON_FLAGS = -Wall -Wextra -Wpedantic
+DEBUG_FLAGS = -Og
+RELEASE_FLAGS = -O3 -DNDEBUG
+
+ifdef RELEASE
+       CFLAGS = ${COMMON_FLAGS} ${RELEASE_FLAGS}
+else
+       CFLAGS = ${COMMON_FLAGS} ${DEBUG_FLAGS}
+endif
+
+SOURCES = \
+               src/main.c
+OBJECT_DIR = objs
+OBJECTS = $(addprefix ${OBJECT_DIR}/,$(patsubst %.c,%.c.o,${SOURCES}))
+
+all: c_simple_http
+
+c_simple_http: ${OBJECTS}
+       gcc -o c_simple_http ${CFLAGS} $^
+
+.PHONY: clean
+
+clean:
+       rm -f c_simple_http
+       rm -rf ${OBJECT_DIR}
+
+${OBJECT_DIR}/%.c.o: %.c
+       @mkdir -p $(dir $@)
+       gcc -o $@ -c ${CFLAGS} $<
diff --git a/src/main.c b/src/main.c
new file mode 100644 (file)
index 0000000..4b0fc0c
--- /dev/null
@@ -0,0 +1,5 @@
+int main(int argc, char **argv) {
+  return 0;
+}
+
+// vim: ts=2 sts=2 sw=2