Files
rez_demo/GL_STUFF/Makefile

229 lines
6.3 KiB
Makefile
Raw Normal View History

include ../external.mk
S=${PWD}GL_STUFF/SOURCES/
H=${PWD}GL_STUFF/HEADERS/
O=${PWD}GL_STUFF/OBJECTS/
_U=UTILS/
_S=SCENE/
_E=EFFECTS/
_C=CURVES/
COMPATIBILITY_OBJECT=GLES_3_1_compatibility.o
UTILS_OBJECTS=${O}${_U}ClockIterator.o ${O}${_U}OnlyOnce.o ${O}${_U}ResourceCache.o ${O}${_U}ShaderMaker.o
SCENE_OBJECTS=${O}${_S}Camera.o ${O}${_S}Instance3D.o ${O}${_S}InstancesLoader.o ${O}${_S}Model3D.o ${O}${_S}ObjectInstance.o ${O}${_S}objloader.o ${O}${_S}ShadingHelper.o
# THE PLATFORM SUPPORTS UP TO GLES2 AND COMPUTE SHADERS COME WITH GLES3.1
# REMOVED
# ${O}${_E}CRT_shader.o
EFFECTS_OBJECTS=${O}${_E}PseudoContext.o ${O}${_E}ReelManager.o ${O}${_E}Scene.o ${O}${_E}Screen.o ${O}${_E}TexMerger.o
CURVES_OBJECTS=${O}${_C}Bezier.o ${O}${_C}Curve.o ${O}${_C}CurveIterator.o ${O}${_C}CurvesLoader.o ${O}${_C}Hermite.o ${O}${_C}NURBS.o
OBJECTS=${COMPATIBILITY_OBJECT} ${UTILS_OBJECTS} ${SCENE_OBJECTS} ${EFFECTS_OBJECTS} ${CURVES_OBJECTS}
CFLAGS=-ansi -Wpedantic -Winline -Werror -std=c++11 # c11
all:
make ${OBJECTS}
# COMPATIBILITY OBJECT
GLES_3_1_compatibility.o : GLES_3_1_compatibility.c GLES_3_1_compatibility.h ${HEADERS}GLES2/gl2.h ${HEADERS}GLES2/gl2ext.h
${C_COMPILER} \
${I_GRAPHICS} \
-o GLES_3_1_compatibility.o \
-c -ansi -Wpedantic -Winline -Werror -std=c99 \
GLES_3_1_compatibility.c \
${GLOBAL_COMPILE_CONF}
# UTILS
${O}${_U}ClockIterator.o : ${S}${_U}ClockIterator.cpp ${H}${_U}ClockIterator.hpp
${CPP_COMPILER} \
-o ${O}${_U}ClockIterator.o \
-c ${CFLAGS} ${S}${_U}ClockIterator.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_U}OnlyOnce.o : ${S}${_U}OnlyOnce.cpp ${H}${_U}OnlyOnce.hpp ${H}${_U}stb_image.h
${CPP_COMPILER} \
${I_GRAPHICS} \
-o ${O}${_U}OnlyOnce.o \
-c ${CFLAGS} ${S}${_U}OnlyOnce.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_U}ResourceCache.o : ${S}${_U}ResourceCache.cpp ${H}${_U}ResourceCache.h ${H}${_U}ShaderMaker.h
${CPP_COMPILER} \
${I_GRAPHICS} \
-o ${O}${_U}ResourceCache.o \
-c ${CFLAGS} ${S}${_U}ResourceCache.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_U}ShaderMaker.o : ${S}${_U}ShaderMaker.cpp ${H}${_U}ShaderMaker.h
${CPP_COMPILER} \
${I_GRAPHICS} \
-o ${O}${_U}ShaderMaker.o \
-c ${CFLAGS} ${S}${_U}ShaderMaker.cpp \
${GLOBAL_COMPILE_CONF}
# SCENE
${O}${_S}Camera.o : ${S}${_S}Camera.cpp ${H}${_S}Camera.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_MY_GLUT} \
-o ${O}${_S}Camera.o \
-c ${CFLAGS} ${S}${_S}Camera.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}Instance3D.o : ${S}${_S}Instance3D.cpp ${H}${_S}Instance3D.h
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_GRAPHICS} \
-o ${O}${_S}Instance3D.o \
-c ${CFLAGS} ${S}${_S}Instance3D.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}InstancesLoader.o : ${S}${_S}InstancesLoader.cpp ${H}${_S}InstancesLoader.h
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_GRAPHICS} \
-o ${O}${_S}InstancesLoader.o \
-c ${CFLAGS} ${S}${_S}InstancesLoader.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}ObjectInstance.o : ${S}${_S}ObjectInstance.cpp ${H}${_S}ObjectInstance.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_GRAPHICS} \
-o ${O}${_S}ObjectInstance.o \
-c ${CFLAGS} ${S}${_S}ObjectInstance.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}objloader.o : ${S}${_S}objloader.cpp ${H}${_S}objloader.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_S}objloader.o \
-c ${CFLAGS} ${S}${_S}objloader.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}Model3D.o : ${S}${_S}Model3D.cpp ${H}${_S}Model3D.hpp \
${H}${_U}OnlyOnce.hpp ${H}${_U}ShaderMaker.h ${H}${_S}objloader.hpp \
${H}${_U}ResourceCache.h \
./GLES_3_1_compatibility.h
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_GRAPHICS} \
-o ${O}${_S}Model3D.o \
-c ${CFLAGS} ${S}${_S}Model3D.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_S}ShadingHelper.o : ${S}${_S}ShadingHelper.cpp ${H}${_S}ShadingHelper.h
${CPP_COMPILER} \
${I_CGI_MATH} \
${I_GRAPHICS} \
-o ${O}${_S}ShadingHelper.o \
-c ${CFLAGS} ${S}${_S}ShadingHelper.cpp \
${GLOBAL_COMPILE_CONF}
#EFFECTS
# THE PLATFORM SUPPORTS UP TO GLES2 AND COMPUTE SHADERS COME WITH GLES3.1
#
# ${O}${_E}CRT_shader.o : ${S}${_E}CRT_shader.cpp ${H}${_E}CRT_shader.h ${H}${_U}ShaderMaker.h
# ${COMPILER} \
# ${I_CGI_MATH} \
# ${I_GRAPHICS} \
# -o ${O}${_E}CRT_shader.o \
# -c ${CFLAGS} ${S}${_E}CRT_shader.cpp \
# ${GLOBAL_COMPILE_CONF}
${O}${_E}PseudoContext.o : ${S}${_E}PseudoContext.cpp ${H}${_E}PseudoContext.h
${CPP_COMPILER} \
-o ${O}${_E}PseudoContext.o \
-c ${CFLAGS} ${S}${_E}PseudoContext.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_E}ReelManager.o : ${S}${_E}ReelManager.cpp ${H}${_E}ReelManager.h
${CPP_COMPILER} \
${I_GRAPHICS} \
-o ${O}${_E}ReelManager.o \
-c ${CFLAGS} ${S}${_E}ReelManager.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_E}Scene.o : ${S}${_E}Scene.cpp ${H}${_E}Scene.h ./GLES_3_1_compatibility.h
${CPP_COMPILER} \
${I_GRAPHICS} \
${I_MY_GLUT} \
${I_CGI_MATH} \
-o ${O}${_E}Scene.o \
-c ${CFLAGS} ${S}${_E}Scene.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_E}Screen.o : ${S}${_E}Screen.cpp ${H}${_E}Screen.h ${H}${_U}ShaderMaker.h
${CPP_COMPILER} \
${I_GRAPHICS} \
${I_MY_GLUT} \
${I_CGI_MATH} \
-o ${O}${_E}Screen.o \
-c ${CFLAGS} ${S}${_E}Screen.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_E}TexMerger.o : ${S}${_E}TexMerger.cpp ${H}${_E}TexMerger.h ${H}${_U}ShaderMaker.h
${CPP_COMPILER} \
${I_GRAPHICS} \
${I_CGI_MATH} \
-o ${O}${_E}TexMerger.o \
-c ${CFLAGS} ${S}${_E}TexMerger.cpp \
${GLOBAL_COMPILE_CONF}
#CURVES
${O}${_C}Bezier.o : ${S}${_C}Bezier.cpp ${H}${_C}Bezier.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}Bezier.o \
-c ${CFLAGS} ${S}${_C}Bezier.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_C}Curve.o : ${S}${_C}Curve.cpp ${H}${_C}Curve.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}Curve.o \
-c ${CFLAGS} ${S}${_C}Curve.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_C}CurveIterator.o : ${S}${_C}CurveIterator.cpp ${H}${_C}CurveIterator.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}CurveIterator.o \
-c ${CFLAGS} ${S}${_C}CurveIterator.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_C}CurvesLoader.o : ${S}${_C}CurvesLoader.cpp ${H}${_C}CurvesLoader.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}CurvesLoader.o \
-c ${CFLAGS} ${S}${_C}CurvesLoader.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_C}Hermite.o : ${S}${_C}Hermite.cpp ${H}${_C}Hermite.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}Hermite.o \
-c ${CFLAGS} ${S}${_C}Hermite.cpp \
${GLOBAL_COMPILE_CONF}
${O}${_C}NURBS.o : ${S}${_C}NURBS.cpp ${H}${_C}NURBS.hpp
${CPP_COMPILER} \
${I_CGI_MATH} \
-o ${O}${_C}NURBS.o \
-c ${CFLAGS} ${S}${_C}NURBS.cpp \
${GLOBAL_COMPILE_CONF}
.PHONY: clean
clean:
-rm ${OBJECTS} *~ core