mirror of
https://github.com/Drezil/imgui.git
synced 2024-12-18 14:16:36 +00:00
b6f251103b
OBJS is still deduced from SOURCES, but this change gives better control over where the object files get actually written.
67 lines
1.5 KiB
Makefile
67 lines
1.5 KiB
Makefile
#
|
|
# Cross Platform Makefile
|
|
# Compatible with MSYS2/MINGW, Ubuntu 14.04.1 and Mac OS X
|
|
#
|
|
# You will need GLFW (http://www.glfw.org):
|
|
# Linux:
|
|
# apt-get install libglfw-dev
|
|
# Mac OS X:
|
|
# brew install glfw
|
|
# MSYS2:
|
|
# pacman -S --noconfirm --needed mingw-w64-x86_64-toolchain mingw-w64-x86_64-glfw
|
|
#
|
|
|
|
#CXX = g++
|
|
#CXX = clang++
|
|
|
|
EXE = opengl3_example
|
|
SOURCES = main.cpp imgui_impl_glfw_gl3.cpp
|
|
SOURCES += ../../imgui.cpp ../../imgui_demo.cpp ../../imgui_draw.cpp
|
|
SOURCES += ../libs/gl3w/GL/gl3w.c
|
|
OBJS = $(addsuffix .o, $(basename $(SOURCES)))
|
|
|
|
UNAME_S := $(shell uname -s)
|
|
|
|
|
|
ifeq ($(UNAME_S), Linux) #LINUX
|
|
ECHO_MESSAGE = "Linux"
|
|
LIBS = -lGL `pkg-config --static --libs glfw3`
|
|
|
|
CXXFLAGS = -I../../ -I../libs/gl3w `pkg-config --cflags glfw3`
|
|
CXXFLAGS += -Wall -Wformat
|
|
CFLAGS = $(CXXFLAGS)
|
|
endif
|
|
|
|
ifeq ($(UNAME_S), Darwin) #APPLE
|
|
ECHO_MESSAGE = "Mac OS X"
|
|
LIBS = -framework OpenGL -framework Cocoa -framework IOKit -framework CoreVideo
|
|
#LIBS += -L/usr/local/lib -lglfw3
|
|
LIBS += -L/usr/local/lib -lglfw
|
|
|
|
CXXFLAGS = -I../../ -I../libs/gl3w -I/usr/local/include
|
|
CXXFLAGS += -Wall -Wformat
|
|
CFLAGS = $(CXXFLAGS)
|
|
endif
|
|
|
|
ifeq ($(findstring MINGW,$(UNAME_S)),MINGW)
|
|
ECHO_MESSAGE = "Windows"
|
|
LIBS = -lglfw3 -lgdi32 -lopengl32 -limm32
|
|
|
|
CXXFLAGS = -I../../ -I../libs/gl3w `pkg-config --cflags glfw3`
|
|
CXXFLAGS += -Wall -Wformat
|
|
CFLAGS = $(CXXFLAGS)
|
|
endif
|
|
|
|
|
|
.cpp.o:
|
|
$(CXX) $(CXXFLAGS) -c -o $@ $<
|
|
|
|
all: $(EXE)
|
|
@echo Build complete for $(ECHO_MESSAGE)
|
|
|
|
$(EXE): $(OBJS)
|
|
$(CXX) -o $@ $^ $(CXXFLAGS) $(LIBS)
|
|
|
|
clean:
|
|
rm -f $(EXE) $(OBJS)
|