1SRCS = jpeg.cpp lpanel.cpp lp_gfx.cpp lp_main.cpp lp_utils.cpp lp_window.cpp \
2	lp_switch.cpp lp_font.cpp lp_materials.cpp
3
4OBJS = $(SRCS:.cpp=.o)
5
6CC = g++
7
8# compiler switches
9
10INCLUDE = -I/opt/X11/include -I/usr/local/include
11DEFINES =
12
13# Development
14#CFLAGS = -c -O3 -fPIC -Wno-deprecated -fstack-protector-all -D_FORTIFY_SOURCE=2 $(INCLUDE) $(DEFINES)
15
16# Production
17CFLAGS = -c -O3 -fPIC -Wno-deprecated -U_FORTIFY_SOURCE $(INCLUDE) $(DEFINES)
18
19LDFLAGS = -shared -L/usr/X11/lib -L/usr/local/lib -ljpeg -lGL -lGLU -lX11
20
21default: $(OBJS)
22	$(CC) $(LDFLAGS) $(OBJS) -o libfrontpanel.dylib
23	@echo
24	@echo "Be sure to copy libfrontpanel.dylib to a shared library path!"
25	@echo
26
27jpeg.o: jpeg.cpp cdjpeg.h
28	$(CC) $(CFLAGS) jpeg.cpp -o jpeg.o
29
30lpanel.o: lpanel.cpp lpanel.h lp_utils.h
31	$(CC) $(CFLAGS) lpanel.cpp -o lpanel.o
32
33lp_font.o: lp_font.cpp lp_font.h
34	$(CC) $(CFLAGS) lp_font.cpp -o lp_font.o
35
36lp_gfx.o: lp_gfx.cpp lpanel.h lp_utils.h jpeg.h
37	$(CC) $(CFLAGS) lp_gfx.cpp -o lp_gfx.o
38
39lp_main.o: lp_main.cpp lp_main.h lpanel.h lp_utils.h
40	$(CC) $(CFLAGS) lp_main.cpp -o lp_main.o
41
42lp_switch.o: lp_switch.cpp lpanel.h lp_switch.h lp_utils.h
43	$(CC) $(CFLAGS) lp_switch.cpp -o lp_switch.o
44
45lp_utils.o: lp_utils.cpp lp_utils.h
46	$(CC) $(CFLAGS) lp_utils.cpp -o lp_utils.o
47
48lp_window.o: lp_window.cpp lpanel.h
49	$(CC) $(CFLAGS) lp_window.cpp -o lp_window.o
50
51lp_materials.o: lp_materials.cpp lp_materials.h
52	$(CC) $(CFLAGS) lp_materials.cpp -o lp_materials.o
53
54clean:
55	rm -f *.o
56
57allclean:
58	make -f Makefile.osx clean
59	rm -f libfrontpanel.dylib
60
61all: clean default
62