diff --git a/CMakeLists.txt b/CMakeLists.txt index e4e3492..73d4b3f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,38 +1,39 @@ # This builds a 32-bit version of library, building 64 bit is not supported yet. cmake_minimum_required(VERSION 3.0) -project(glez LANGUAGES C VERSION 0.0.1 DESCRIPTION "Basic OpenGL primitive + text drawing using freetype-gl") -set(glez_dest "lib/glez-${glez_VERSION}") -set(include_dest "include/glez-${glez_VERSION}") -set(lib_dest "${glez_dest}/${CMAKE_BUILD_TYPE}") +project(glez LANGUAGES C VERSION 0.0.1) + +set(export_dest "lib/${PROJECT_NAME}-${PROJECT_VERSION}") +set(include_dest "include/${PROJECT_NAME}-${PROJECT_VERSION}") +set(lib_dest "${export_dest}/${CMAKE_BUILD_TYPE}") find_package(Freetype REQUIRED) find_package(PNG REQUIRED) find_package(GLEW REQUIRED) -add_library(glez SHARED "") +add_library(${PROJECT_NAME} SHARED "") -set_target_properties(glez PROPERTIES COMPILE_FLAGS "-m32" LINK_FLAGS "-m32") +set_target_properties(${PROJECT_NAME} PROPERTIES COMPILE_FLAGS "-m32" LINK_FLAGS "-m32") -target_include_directories(glez PRIVATE - $ - $ +target_include_directories(${PROJECT_NAME} PRIVATE + $ + $ $ $ $ $ ) -target_compile_definitions(glez PRIVATE ${PNG_DEFINITIONS}) +target_compile_definitions(${PROJECT_NAME} PRIVATE ${PNG_DEFINITIONS}) -target_link_libraries(glez ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${GLEW_LIBRARIES}) +target_link_libraries(${PROJECT_NAME} ${FREETYPE_LIBRARIES} ${PNG_LIBRARIES} ${GLEW_LIBRARIES}) add_subdirectory(include) add_subdirectory(src) add_subdirectory(ftgl) -install(TARGETS glez EXPORT glez DESTINATION "${lib_dest}") +install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME} DESTINATION "${lib_dest}") install(FILES "include/glez.h" DESTINATION "${include_dest}") -install(EXPORT glez DESTINATION "${lib_dest}") -install(FILES glez-config.cmake DESTINATION ${glez_dest}) \ No newline at end of file +install(EXPORT ${PROJECT_NAME} DESTINATION "${lib_dest}") +install(FILES ${PROJECT_NAME}-config.cmake DESTINATION ${export_dest}) \ No newline at end of file diff --git a/Makefile b/Makefile deleted file mode 100644 index a598fa7..0000000 --- a/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -CC=$(shell sh -c "which gcc-7 || which gcc") -CFLAGS=-O3 -Wall -fPIC -fmessage-length=0 -D_GNU_SOURCE=1 -g3 -ggdb -Iinclude -isystemftgl -isystem/usr/local/include/freetype2 -isystem/usr/include/freetype2 -LDFLAGS=-shared -Wl,--no-undefined -LDLIBS=-lm -lrt -lGL -lfreetype -lGLEW -lpng -SRC_DIR=src -BIN32_DIR=bin32 -BIN64_DIR=bin64 -SOURCES=$(shell find $(SRC_DIR) -name "*.c" -print) -SOURCES+=$(shell find "ftgl" -name "*.c" -print) -OBJECTS=$(SOURCES:.c=.o) - -LIB32_PATH=/lib/i386-linux-gnu -LIB64_PATH=/lib/x86_64-linux-gnu - -TARGET32=$(BIN32_DIR)/libglez.so -TARGET64=$(BIN64_DIR)/libglez.so -TARGET=undefined - -.PHONY: clean clean_objects - -ifeq ($(ARCH),32) -CFLAGS+=-m32 -LDFLAGS+=-m32 -TARGET=$(TARGET32) -endif -ifeq ($(ARCH),64) -TARGET=$(TARGET64) -endif - -all: - mkdir -p $(BIN32_DIR) - mkdir -p $(BIN64_DIR) -ifndef ARCH - $(MAKE) clean_objects - $(MAKE) -e ARCH=32 - $(MAKE) clean_objects - $(MAKE) -e ARCH=64 -else - $(MAKE) clean_objects - $(MAKE) $(TARGET) -endif - -install: - cp $(TARGET32) $(LIB32_PATH) - cp $(TARGET64) $(LIB64_PATH) - cp -R include/. /usr/local/include/glez - -ftgl/distance-field.o : CFLAGS+=-w -ftgl/edtaa3func.o : CFLAGS+=-w -ftgl/font-manager.o : CFLAGS+=-w -ftgl/mat4.o : CFLAGS+=-w -ftgl/platform.o : CFLAGS+=-w -ftgl/shader.o : CFLAGS+=-w -ftgl/text-buffer.o : CFLAGS+=-w -ftgl/texture-atlas.o : CFLAGS+=-w -ftgl/utf8-utils.o : CFLAGS+=-w -ftgl/texture-font.o : CFLAGS+=-w -ftgl/vector.o : CFLAGS+=-w -ftgl/vertex-attribute.o : CFLAGS+=-w -ftgl/vertex-buffer.o : CFLAGS+=-w -ftgl/makefont.o : CFLAGS+=-w - -.c.o: - $(CC) $(CFLAGS) -c $< -o $@ - -$(TARGET): $(OBJECTS) - $(CC) $(LDFLAGS) $(OBJECTS) $(LDLIBS) -o $@ - -clean_objects: - find . -type f -name '*.o' -delete - -clean: - find . -type f -name '*.o' -delete - find . -type f -name '*.d' -delete - rm -f bin32/*.so - rm -f bin64/*.so \ No newline at end of file