aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile29
-rw-r--r--src/cerberus.c6
-rw-r--r--src/cerberus.h24
3 files changed, 54 insertions, 5 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..defe086
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,29 @@
+OPTIMISE = -Os
+CPPFLAGS =
+LDFLAGS =
+CFLAGS = -Wall -Wextra -pedantic
+
+CC_FLAGS = $(CPPFLAGS) $(CFLAGS) $(OPTIMISE)
+LD_FLAGS = $(LDFLAGS) $(CFLAGS) $(OPTIMISE)
+
+SRC = cerberus passphrase quit
+OBJ = $(foreach S, $(SRC), obj/$(S).o)
+
+
+.PHONY: all
+all: bin/cerberus
+
+
+bin/cerberus: $(OBJ)
+ @mkdir -p bin
+ $(CC) $(LD_FLAGS) -o "$@" $^
+
+
+obj/%.o: src/%.c src/%.h
+ $(CC) $(CC_FLAGS) -o "$@" -c "$<"
+
+
+.PHONY: clean
+clean:
+ -rm -r bin obj
+
diff --git a/src/cerberus.c b/src/cerberus.c
index f61f56a..cd6c376 100644
--- a/src/cerberus.c
+++ b/src/cerberus.c
@@ -16,11 +16,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <stdio.h>
-#include <unistd.h>
-
-#include "passphrase.h"
-#include "quit.h"
+#include "cerberus.h"
/* The number of seconds before the program times out */
diff --git a/src/cerberus.h b/src/cerberus.h
new file mode 100644
index 0000000..86dd2a2
--- /dev/null
+++ b/src/cerberus.h
@@ -0,0 +1,24 @@
+/**
+ * cerberus – Minimal login program
+ *
+ * Copyright © 2013 Mattias Andrée (maandree@member.fsf.org)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include <stdio.h>
+#include <unistd.h>
+
+#include "passphrase.h"
+#include "quit.h"
+