From fe5fc67f3ab02341ad9c24f21646eb42b219df65 Mon Sep 17 00:00:00 2001 From: David Yip Date: Wed, 18 May 2016 02:25:23 -0500 Subject: glm: add rules to download/build version 0.9.7.4 --- index.html | 4 ++++ src/glm-test.cpp | 32 ++++++++++++++++++++++++++++++++ src/glm.mk | 28 ++++++++++++++++++++++++++++ 3 files changed, 64 insertions(+) create mode 100644 src/glm-test.cpp create mode 100644 src/glm.mk diff --git a/index.html b/index.html index 1c7cc16..116e9ae 100644 --- a/index.html +++ b/index.html @@ -1418,6 +1418,10 @@ local-pkg-list: $(LOCAL_PKG_LIST) GLibmm + glm + GLM - OpenGL Mathematics + + gmp GMP diff --git a/src/glm-test.cpp b/src/glm-test.cpp new file mode 100644 index 0000000..08e8a32 --- /dev/null +++ b/src/glm-test.cpp @@ -0,0 +1,32 @@ +/* + * This file is part of MXE. + * See index.html for further information. + * + * This file is a test program for glm, adapted from the code sample at + * http://glm.g-truc.net/0.9.7/index.html. + */ + +#include // glm::translate, glm::rotate, glm::scale, glm::perspective +#include // glm::mat4 +#include // glm::vec3 +#include // glm::vec4 +#include // so we can print a calculation result +#include + +glm::mat4 camera(float Translate, glm::vec2 const& Rotate) +{ + glm::mat4 Projection = glm::perspective(45.0f, 4.0f / 3.0f, 0.1f, 100.f); + glm::mat4 View = glm::translate(glm::mat4(1.0f), glm::vec3(0.0f, 0.0f, -Translate)); + View = glm::rotate(View, Rotate.y, glm::vec3(-1.0f, 0.0f, 0.0f)); + View = glm::rotate(View, Rotate.x, glm::vec3(0.0f, 1.0f, 0.0f)); + glm::mat4 Model = glm::scale(glm::mat4(1.0f), glm::vec3(0.5f)); + return Projection * View * Model; +} + +int main() +{ + glm::mat4 m = camera(0.0f, glm::vec2(0.0f, 0.0f)); + std::cout << glm::to_string(m) << std::endl; + + return 0; +} diff --git a/src/glm.mk b/src/glm.mk new file mode 100644 index 0000000..eba83d1 --- /dev/null +++ b/src/glm.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := glm +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.9.7.4 +$(PKG)_CHECKSUM := 0cfa1e40041114cda8ced7e6738860fe6f9a7103d25bcc376adb9840fcf21fe1 +$(PKG)_SUBDIR := glm-$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_VERSION).tar.gz +$(PKG)_URL := https://github.com/g-truc/glm/archive/$($(PKG)_VERSION).tar.gz +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(call MXE_GET_GITHUB_TAGS, g-truc/glm) +endef + +define $(PKG)_BUILD + mkdir '$(1).build' + + cd '$(1).build' && $(TARGET)-cmake '$(1)' + + $(MAKE) -C '$(1).build' -j '$(JOBS)' install + + '$(TARGET)-g++' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-glm.exe' +endef + -- cgit v0.12