|
|
-
- # Compiler to use. Make does something special with this.
- CC = gcc
- CFLAGS = -I"/usr/include/SDL2" -g -Wall -lSDL2
-
- ODIR = obj
- SDIR = src
-
- _DEPS = SDL_Clicky.h clickable.h clickable_hierarchy.h containers/containers.h
- DEPS = $(patsubst %,$(SDIR)/%,$(_DEPS))
- _SRC = SDL_Clicky.c clickable.c clickable_hierarchy.c containers/containers.c
- SRC = $(patsubst %,$(SDIR)/%,$(_SRC))
- _OBJS = $(_SRC:.c=.o)
- OBJS = $(patsubst %,$(ODIR)/%,$(_OBJS))
- OUT = out/libSDL_Clicky.a
-
- # Rules that are always executed regardless of file states.
- .POHNY: clean force forceobjs
-
- # Name isn't special, it's just befitting of being the first rule. The first rule is executed if no rule is specified.
- make: $(OUT)
- # echo $(OBJS) #Uncomment this line to see if the target gets run or just to get a list of the objs or whatever.
-
- $(ODIR)/%.o: $(SDIR)/%.c $(DEPS)
- $(CC) $(CFLAGS) -c $< -o $@
-
- #obj/SDL_Clicky.o: src/SDL_Clicky.c $(DEPS)
- # $(CC) -c $< -o $@
-
- #obj/%.o: src/%.c $(DEPS)
- # $(CC) -c $< -o $@
-
- # Compiling the actual build.
- $(OUT): $(OBJS)
- #$(CC) $(OBJS) -c -o obj/libSDL_Clicky.o;
- #ar rcs $(OUT) obj/libSDL_Clicky.o;
- ar rcs $(OUT) $(OBJS);
-
- # Primitive targets for forcing a compilation. Cleans up after themselves. NOT UPDATED FOR USE HERE! IT WAS COPY-PASTED FROM ELSEWHERE!
- forceobjs:
- $(CC) -c $(SRC)
-
- force: forceobjs
- $(CC) $(_OBJS) -o $(OUT); rm *.o
-
- # Rule that is always executed regardless of the states of the files. Deletes junk.
- clean:
- rm $(OUT) $(ODIR)/*.o;
-
- asdf:
- echo $(OBJS)
-
|