diff --git a/Makefile b/Makefile
index d2682c9..3ee7c5b 100644
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,16 @@
 CFLAGS ?= -g
 
 HEADER_FILES = src
 SOURCE_FILES = src/captcha.c
+OBJECT_FILES = src/captcha.o
 
-OBJECT_FILES = $(SOURCE_FILES:.c=.o)
+src/captcha.o: src/captcha.c
+	$(CC) -std=c99 $(CFLAGS) -I $(HEADER_FILES) -c -o src/captcha.o src/captcha.c
 
-priv/captcha: clean priv $(OBJECT_FILES)
+priv/captcha: priv $(OBJECT_FILES)
 	mkdir -p priv
-	$(CC) $(CFLAGS) -I $(HEADER_FILES) -o $@ $(LDFLAGS) $(OBJECT_FILES) $(LDLIBS)
+	$(CC) -std=c99 $(CFLAGS) -I $(HEADER_FILES) -o priv/captcha $(LDFLAGS) $(OBJECT_FILES) $(LDLIBS)
 
+.PHONY: clean
 clean:
 	rm -f priv/captcha $(OBJECT_FILES) $(BEAM_FILES)