glew -> glad & libglfw.so -> libglfw.a
This commit is contained in:
57
Makefile
57
Makefile
@@ -1,6 +1,7 @@
|
|||||||
BIN = manigraph
|
BIN = manigraph
|
||||||
|
|
||||||
OBJ = \
|
OBJ = \
|
||||||
|
ext/glad/glad.o \
|
||||||
src/surface.o \
|
src/surface.o \
|
||||||
src/context.o \
|
src/context.o \
|
||||||
src/texture.o \
|
src/texture.o \
|
||||||
@@ -14,18 +15,8 @@ OBJ = \
|
|||||||
CFLAGS = \
|
CFLAGS = \
|
||||||
-I./ext/cglm/include \
|
-I./ext/cglm/include \
|
||||||
-I./ext/glfw/include \
|
-I./ext/glfw/include \
|
||||||
-Wall -Wno-unused-function -std=c99 -D_POSIX_C_SOURCE \
|
-I./ext/glad \
|
||||||
|
-Wall -Wno-unused-function -std=c99 -D_GNU_SOURCE \
|
||||||
WAYLAND-LIB = \
|
|
||||||
xdg-shell \
|
|
||||||
relative-pointer-unstable-v1 \
|
|
||||||
xdg-decoration-unstable-v1 \
|
|
||||||
pointer-constraints-unstable-v1 \
|
|
||||||
viewporter \
|
|
||||||
idle-inhibit-unstable-v1 \
|
|
||||||
fractional-scale-v1 \
|
|
||||||
xdg-activation-v1 \
|
|
||||||
wayland
|
|
||||||
|
|
||||||
help:
|
help:
|
||||||
@echo "Para compilar el proyecto a tu sistema operativo"
|
@echo "Para compilar el proyecto a tu sistema operativo"
|
||||||
@@ -36,47 +27,31 @@ help:
|
|||||||
@echo " $(MAKE) cocoa"
|
@echo " $(MAKE) cocoa"
|
||||||
@echo "Para limpiar los archivos compilados se puede usar"
|
@echo "Para limpiar los archivos compilados se puede usar"
|
||||||
@echo " $(MAKE) clean"
|
@echo " $(MAKE) clean"
|
||||||
@echo "Para ejecturar el programa sin instalarlos se puede usar:"
|
|
||||||
@echo " $(MAKE) run-linux"
|
|
||||||
|
|
||||||
src/main.o: src/data/axis.h src/data/shaders.h
|
src/main.o: src/data/axis.h src/data/shaders.h
|
||||||
|
|
||||||
# WINDOWS
|
windows: $(OBJ)
|
||||||
windows: $(OBJ) glfw.dll
|
cd ext; $(MAKE) -f glfw.mk windows; cd -
|
||||||
$(CC) $(CFLAGS) $(OBJ) -o $(BIN) -L. -lglfw -lopengl32 -lglew32
|
$(CC) $(CFLAGS) $(OBJ) -o $(BIN) -L. -lglfw -lopengl32
|
||||||
|
|
||||||
glfw.dll:
|
|
||||||
$(CC) -fPIC -shared -D_GLFW_WIN32 -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o $@ -lgdi32
|
|
||||||
|
|
||||||
# LINUX
|
|
||||||
linux-wayland: $(OBJ)
|
linux-wayland: $(OBJ)
|
||||||
for i in $(WAYLAND-LIB); \
|
cd ext; $(MAKE) -f glfw.mk linux-wayland; cd -
|
||||||
do \
|
$(CC) -o $(BIN) $(OBJ) ext/libglfw.a -lGL -lm
|
||||||
wayland-scanner client-header ext/glfw/deps/wayland/$$i.xml ext/glfw/deps/wayland/$$i-client-protocol.h; \
|
|
||||||
wayland-scanner private-code ext/glfw/deps/wayland/$$i.xml ext/glfw/deps/wayland/$$i-client-protocol-code.h; \
|
|
||||||
done
|
|
||||||
$(MAKE) DFLAGS="-D_GLFW_WAYLAND" libglfw.so
|
|
||||||
$(CC) -o $(BIN) $(OBJ) -L. -lGLEW -lGL -lglfw -lm
|
|
||||||
|
|
||||||
linux-x11: $(OBJ)
|
linux-x11: $(OBJ)
|
||||||
$(MAKE) DFLAGS="-D_GLFW_X11" libglfw.so
|
cd ext; $(MAKE) -f glfw.mk linux-x11; cd -
|
||||||
$(CC) -o $(BIN) $(OBJ) -L. -lGLEW -lGL -lglfw -lm
|
$(CC) -o $(BIN) $(OBJ) ext/libglfw.a -lGL -lm
|
||||||
|
|
||||||
run-linux:
|
|
||||||
LD_LIBRARY_PATH=. ./$(BIN)
|
|
||||||
|
|
||||||
# COCOA
|
|
||||||
cocoa: $(OBJ)
|
cocoa: $(OBJ)
|
||||||
$(MAKE) DFLAGS="-D_GLFW_COCOA" libglfw.so
|
cd ext; $(MAKE) -f glfw.mk cocoa; cd -
|
||||||
$(CC) -framework OpenGL -o $(BIN) $(OBJ) -L. -lGLEW -lGL -lglfw
|
$(CC) -framework OpenGL -o $(BIN) $(OBJ) ext/glfw.a -lGL -lglfw
|
||||||
|
|
||||||
libglfw.so:
|
|
||||||
$(CC) -fPIC -shared $(DFLAGS) -D_GLFW_BUILD_DLL -Iext/glfw/deps/wayland ./ext/glfw/src/*.c -o $@
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm $(OBJ) $(BIN) ext/glfw/deps/wayland/*.h
|
rm $(OBJ) $(BIN)
|
||||||
|
cd ext; $(MAKE) -f glfw.mk clean; cd -
|
||||||
|
|
||||||
|
|
||||||
.SUFFIXES: .c .o
|
.SUFFIXES: .c .o
|
||||||
|
|
||||||
.c.o: src/main.h
|
.c.o:
|
||||||
$(CC) $(CFLAGS) -c -o $@ $<
|
$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
|
|||||||
71
ext/glfw.mk
Normal file
71
ext/glfw.mk
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
BIN = libglfw.a
|
||||||
|
OBJ = \
|
||||||
|
glfw/src/context.o \
|
||||||
|
glfw/src/egl_context.o \
|
||||||
|
glfw/src/glx_context.o \
|
||||||
|
glfw/src/init.o \
|
||||||
|
glfw/src/input.o \
|
||||||
|
glfw/src/linux_joystick.o \
|
||||||
|
glfw/src/monitor.o \
|
||||||
|
glfw/src/null_init.o \
|
||||||
|
glfw/src/null_joystick.o \
|
||||||
|
glfw/src/null_monitor.o \
|
||||||
|
glfw/src/null_window.o \
|
||||||
|
glfw/src/osmesa_context.o \
|
||||||
|
glfw/src/platform.o \
|
||||||
|
glfw/src/posix_module.o \
|
||||||
|
glfw/src/posix_poll.o \
|
||||||
|
glfw/src/posix_thread.o \
|
||||||
|
glfw/src/posix_time.o \
|
||||||
|
glfw/src/vulkan.o \
|
||||||
|
glfw/src/wgl_context.o \
|
||||||
|
glfw/src/win32_init.o \
|
||||||
|
glfw/src/win32_joystick.o \
|
||||||
|
glfw/src/win32_module.o \
|
||||||
|
glfw/src/win32_monitor.o \
|
||||||
|
glfw/src/win32_thread.o \
|
||||||
|
glfw/src/win32_time.o \
|
||||||
|
glfw/src/win32_window.o \
|
||||||
|
glfw/src/window.o \
|
||||||
|
glfw/src/wl_init.o \
|
||||||
|
glfw/src/wl_monitor.o \
|
||||||
|
glfw/src/wl_window.o \
|
||||||
|
glfw/src/x11_init.o \
|
||||||
|
glfw/src/x11_monitor.o \
|
||||||
|
glfw/src/x11_window.o \
|
||||||
|
glfw/src/xkb_unicode.o
|
||||||
|
|
||||||
|
WAYLAND-LIB = \
|
||||||
|
xdg-shell \
|
||||||
|
relative-pointer-unstable-v1 \
|
||||||
|
xdg-decoration-unstable-v1 \
|
||||||
|
pointer-constraints-unstable-v1 \
|
||||||
|
viewporter \
|
||||||
|
idle-inhibit-unstable-v1 \
|
||||||
|
fractional-scale-v1 \
|
||||||
|
xdg-activation-v1 \
|
||||||
|
wayland
|
||||||
|
|
||||||
|
windows:
|
||||||
|
$(MAKE) $(OBJ) CFLAGS="-D_GLFW_WIN32 -Iglfw/deps/wayland"
|
||||||
|
$(AR) rsc $(BIN) $(OBJ)
|
||||||
|
|
||||||
|
linux-x11:
|
||||||
|
$(MAKE) $(OBJ) CFLAGS="-D_GLFW_X11 -Iglfw/deps/wayland"
|
||||||
|
$(AR) rsc $(BIN) $(OBJ)
|
||||||
|
|
||||||
|
|
||||||
|
linux-wayland:
|
||||||
|
for i in $(WAYLAND-LIB); \
|
||||||
|
do \
|
||||||
|
wayland-scanner client-header glfw/deps/wayland/$$i.xml glfw/deps/wayland/$$i-client-protocol.h; \
|
||||||
|
wayland-scanner private-code glfw/deps/wayland/$$i.xml glfw/deps/wayland/$$i-client-protocol-code.h; \
|
||||||
|
done
|
||||||
|
$(MAKE) $(OBJ) CFLAGS="-D_GLFW_WAYLAND -fPIC -Iglfw/deps/wayland"
|
||||||
|
$(AR) rsc $(BIN) $(OBJ)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm $(OBJ) $(BIN)
|
||||||
|
rm glfw/deps/wayland/*.h
|
||||||
Reference in New Issue
Block a user