dev-libs/vera: new package, add 20240804-r1

Signed-off-by: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
This commit is contained in:
Nguyen Dinh Dang Duong
2025-07-11 05:12:45 +07:00
parent 5bdc9404eb
commit 267cab4d7b
9 changed files with 654 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
From 74d6dffc30ebaf4046954901e8605c8600edb488 Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Wed, 9 Jul 2025 21:23:51 +0700
Subject: [PATCH 1/6] Bump cmake min version
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f82abad..c29116c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 3.2)
+cmake_minimum_required(VERSION 3.5)
project(vera CXX)
--
2.50.0

View File

@@ -0,0 +1,27 @@
From 6d4b10f540f951abb42c1a6d62e93ebbb6fca36d Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Thu, 10 Jul 2025 01:35:06 +0700
Subject: [PATCH 2/6] Remove hardcoded installation dir
---
src/CMakeLists.txt | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 981ff16..8021914 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -302,7 +302,9 @@ target_include_directories(vera PUBLIC ${INCLUDE_DEPS_FOLDERS} ${INCLUDE_FOLDER}
if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
- install(TARGETS ${PROJECT_NAME} DESTINATION lib)
+ install(TARGETS ${PROJECT_NAME}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(FILES ${ROOT_HEADER} DESTINATION include/vera)
install(FILES ${GL_HEADER} DESTINATION include/vera/gl)
install(FILES ${IO_HEADER} DESTINATION include/vera/io)
--
2.50.0

View File

@@ -0,0 +1,76 @@
From 68dbfb61d2557b11412a579abc7bc032d0202072 Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Thu, 10 Jul 2025 00:53:04 +0700
Subject: [PATCH 3/6] Use dev-libs/stb package
---
src/CMakeLists.txt | 1 +
src/io/gltf.cpp | 5 -----
src/ops/pixel.cpp | 5 +----
src/stb_impl.cpp | 5 +++++
4 files changed, 7 insertions(+), 9 deletions(-)
create mode 100644 src/stb_impl.cpp
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 8021914..74b00c0 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -36,6 +36,7 @@ set(VERA_SOURCES
${DEPS_FOLDER}/stb/stb_image.cpp
${SOURCE_FOLDER}/app.cpp
${SOURCE_FOLDER}/window.cpp
+ ${SOURCE_FOLDER}/stb_impl.cpp
${SOURCE_FOLDER}/gl/gl.cpp
${SOURCE_FOLDER}/gl/fbo.cpp
${SOURCE_FOLDER}/gl/vbo.cpp
diff --git a/src/io/gltf.cpp b/src/io/gltf.cpp
index fcc25b7..2c08f43 100644
--- a/src/io/gltf.cpp
+++ b/src/io/gltf.cpp
@@ -20,11 +20,6 @@
#include "glm/gtc/type_ptr.hpp"
#include "glm/gtx/quaternion.hpp"
-#define TINYGLTF_IMPLEMENTATION
-#define STB_IMAGE_IMPLEMENTATION
-#define STB_IMAGE_WRITE_IMPLEMENTATION
-// #define TINYGLTF_NOEXCEPTION
-// #define JSON_NOEXCEPTION
#include "tiny_gltf.h"
#define BUFFER_OFFSET(i) ((char *)NULL + (i))
diff --git a/src/ops/pixel.cpp b/src/ops/pixel.cpp
index e57b84f..58ef78e 100644
--- a/src/ops/pixel.cpp
+++ b/src/ops/pixel.cpp
@@ -3,9 +3,6 @@
#include "vera/ops/pixel.h"
#include "vera/ops/fs.h"
-#define STB_IMAGE_WRITE_IMPLEMENTATION
-#define STB_IMAGE_IMPLEMENTATION
-
#include "stb_image.h"
#include "stb_image_write.h"
#include "extract_depthmap.h"
@@ -191,4 +188,4 @@ void freePixels(void *pixels) {
stbi_image_free(pixels);
}
-}
\ No newline at end of file
+}
diff --git a/src/stb_impl.cpp b/src/stb_impl.cpp
new file mode 100644
index 0000000..82928fa
--- /dev/null
+++ b/src/stb_impl.cpp
@@ -0,0 +1,5 @@
+#define STB_IMAGE_IMPLEMENTATION
+#include "stb_image.h"
+
+#define STB_IMAGE_WRITE_IMPLEMENTATION
+#include "stb_image_write.h"
--
2.50.0

View File

@@ -0,0 +1,46 @@
From 7cc9a85c6a656d72abbbe74ee9b70a21a015ca21 Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Thu, 10 Jul 2025 00:53:09 +0700
Subject: [PATCH 4/6] Change include lines
---
src/gl/textureStreamAudio.cpp | 2 +-
src/xr/holoPlay.cpp | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/gl/textureStreamAudio.cpp b/src/gl/textureStreamAudio.cpp
index ae886b5..59c23b6 100644
--- a/src/gl/textureStreamAudio.cpp
+++ b/src/gl/textureStreamAudio.cpp
@@ -17,7 +17,7 @@
extern "C" {
#include <libavcodec/avfft.h>
#include <libavutil/mem.h>
-#include "miniaudio.h"
+#include <miniaudio/miniaudio.h>
}
ma_device_config a_deviceConfig;
diff --git a/src/xr/holoPlay.cpp b/src/xr/holoPlay.cpp
index 012e1e0..b43d087 100644
--- a/src/xr/holoPlay.cpp
+++ b/src/xr/holoPlay.cpp
@@ -5,7 +5,7 @@
#include <fstream>
-#include "json.hpp"
+#include <nlohmann/json.hpp>
namespace vera {
@@ -299,4 +299,4 @@ void feedLenticularUniforms(Shader& _shader) {
_shader.setUniform("u_lenticularRB", float(lenticular.ri), float(lenticular.bi));
}
-}
\ No newline at end of file
+}
--
2.50.0

View File

@@ -0,0 +1,107 @@
From 8a275ff1cc0a892113f0d3dcc23c6396deaa8c31 Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Thu, 10 Jul 2025 01:24:44 +0700
Subject: [PATCH 5/6] Remove some bundled deps
---
deps/CMakeLists.txt | 18 +-----------------
src/CMakeLists.txt | 22 ++++++++++++++--------
2 files changed, 15 insertions(+), 25 deletions(-)
diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt
index 45d1e48..8ca12fd 100644
--- a/deps/CMakeLists.txt
+++ b/deps/CMakeLists.txt
@@ -1,31 +1,15 @@
## GLFW
if (NOT NO_X11 AND NOT FORCE_GBM AND NOT EMSCRIPTEN)
- # Configure GLFW to build only the library.
- set(GLFW_BUILD_DOCS OFF CACHE BOOL "")
- set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "")
- set(GLFW_BUILD_TESTS OFF CACHE BOOL "")
- set(GLFW_INSTALL OFF CACHE BOOL "")
- add_subdirectory(glfw)
-
- if(APPLE)
- target_compile_options(glfw PRIVATE "-Wno-deprecated-declarations")
- endif()
-
if(NOT DEFINED OpenGL_GL_PREFERENCE)
# set(OpenGL_GL_PREFERENCE "LEGACY")
set(OPENGL_GL_PREFERENCE "GLVND")
endif()
set(OpenGL_GL_PREFERENCE ${OPENGL_GL_PREFERENCE})
find_package(OpenGL REQUIRED)
-
message(STATUS "OPENGL_LIBRARIES: ${OPENGL_LIBRARIES}")
message(STATUS "OPENGL_opengl_LIBRARY: ${OPENGL_opengl_LIBRARY}")
endif()
-if (WIN32)
- add_subdirectory(glew)
-endif (WIN32)
-
if (EMSCRIPTEN)
add_subdirectory(emscripten-webxr)
-endif (EMSCRIPTEN)
\ No newline at end of file
+endif (EMSCRIPTEN)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 74b00c0..0289ee3 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -3,17 +3,12 @@ set(SOURCE_FOLDER "${PROJECT_SOURCE_DIR}/src")
set(DEPS_FOLDER "${PROJECT_SOURCE_DIR}/deps")
set(INCLUDE_FOLDER "${PROJECT_SOURCE_DIR}/include")
set(INCLUDE_DEPS_FOLDERS
- "${PROJECT_SOURCE_DIR}/deps/glm"
- "${PROJECT_SOURCE_DIR}/deps/stb"
"${PROJECT_SOURCE_DIR}/deps/glob"
"${PROJECT_SOURCE_DIR}/deps/skymodel"
"${PROJECT_SOURCE_DIR}/deps/fontstash"
- "${PROJECT_SOURCE_DIR}/deps/miniaudio"
"${PROJECT_SOURCE_DIR}/deps/phonedepth"
- "${PROJECT_SOURCE_DIR}/deps/tinygltf"
"${PROJECT_SOURCE_DIR}/deps/tinyobjloader"
"${PROJECT_SOURCE_DIR}/deps/tinyply"
- "${PROJECT_SOURCE_DIR}/deps/miniz"
"${PROJECT_SOURCE_DIR}/deps/tinyexr"
)
@@ -28,12 +23,9 @@ file(GLOB XR_HEADER "${INCLUDE_FOLDER}/vera/xr/*.h")
# SOURCE files
set(VERA_SOURCES
- ${DEPS_FOLDER}/miniz/miniz.cpp
${DEPS_FOLDER}/glob/glob.cpp
${DEPS_FOLDER}/phonedepth/extract_depthmap.cpp
${DEPS_FOLDER}/skymodel/ArHosekSkyModel.cpp
- ${DEPS_FOLDER}/stb/stb_image_write.cpp
- ${DEPS_FOLDER}/stb/stb_image.cpp
${SOURCE_FOLDER}/app.cpp
${SOURCE_FOLDER}/window.cpp
${SOURCE_FOLDER}/stb_impl.cpp
@@ -91,6 +83,20 @@ set(VERA_SOURCES
#
add_library(vera ${VERA_SOURCES})
+find_package(PkgConfig)
+
+# miniaudio package just install header files to /usr/include, just patch miniaudio.h -> miniaudio/miniaudio.h
+
+pkg_check_modules(STB stb REQUIRED)
+target_include_directories(vera PUBLIC ${STB_INCLUDE_DIRS})
+
+find_library(TINYGLTF_LIB tinygltf REQUIRED)
+target_link_libraries(vera PUBLIC ${TINYGLTF_LIB})
+
+pkg_check_modules(MINIZ_LIB miniz REQUIRED)
+target_include_directories(vera PUBLIC ${MINIZ_LIB_INCLUDE_DIRS})
+target_link_libraries(vera PUBLIC ${MINIZ_LIB_LIBRARIES})
+
set_target_properties(vera PROPERTIES
CXX_STANDARD 11
CXX_STANDARD_REQUIRED ON
--
2.50.0

View File

@@ -0,0 +1,274 @@
From df04be674dec037e4dd2442a0fc791589ded2019 Mon Sep 17 00:00:00 2001
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
Date: Thu, 10 Jul 2025 22:01:48 +0700
Subject: [PATCH 6/6] Fix in-class initialization
---
include/vera/app.h | 4 +++-
include/vera/gl/textureStream.h | 4 +++-
include/vera/gl/textureStreamAudio.h | 2 +-
include/vera/types/sky.h | 3 ++-
include/vera/window.h | 5 ++++-
include/vera/xr/holoPlay.h | 3 ++-
src/CMakeLists.txt | 4 +++-
src/app.cpp | 4 +++-
src/gl/textureStream.cpp | 6 ++++++
src/gl/textureStreamAudio.cpp | 1 +
src/gl/textureStreamMMAL.cpp | 3 ++-
src/types/sky.cpp | 5 +++++
src/window.cpp | 4 ++++
src/xr/holoPlay.cpp | 2 +-
14 files changed, 40 insertions(+), 10 deletions(-)
create mode 100644 src/gl/textureStream.cpp
create mode 100644 src/types/sky.cpp
diff --git a/include/vera/app.h b/include/vera/app.h
index 16d4b80..df909c1 100644
--- a/include/vera/app.h
+++ b/include/vera/app.h
@@ -16,6 +16,8 @@ namespace vera {
class App {
public:
+ App();
+
void run(WindowProperties _properties = WindowProperties());
virtual void setup() {};
@@ -90,4 +92,4 @@ protected:
#endif
};
-}
\ No newline at end of file
+}
diff --git a/include/vera/gl/textureStream.h b/include/vera/gl/textureStream.h
index 3964089..d2d4cbf 100644
--- a/include/vera/gl/textureStream.h
+++ b/include/vera/gl/textureStream.h
@@ -2,6 +2,7 @@
#include "texture.h"
+#include <GL/glext.h>
#include <vector>
#include <iostream>
@@ -10,6 +11,7 @@ namespace vera {
class TextureStream : public Texture {
public:
+ TextureStream();
virtual ~TextureStream() {}
virtual void setSpeed( float _speed ) {};
@@ -86,7 +88,7 @@ protected:
}
std::vector<GLuint> m_idPrevs;
- bool m_play = true;
+ bool m_play;
};
}
diff --git a/include/vera/gl/textureStreamAudio.h b/include/vera/gl/textureStreamAudio.h
index 3f24205..236b7e6 100644
--- a/include/vera/gl/textureStreamAudio.h
+++ b/include/vera/gl/textureStreamAudio.h
@@ -16,7 +16,7 @@ public:
private:
static const int m_buf_len = 1024;
std::vector<uint8_t> m_buffer_wr, m_buffer_re, m_texture;
- float* m_dft_buffer = nullptr;
+ float* m_dft_buffer;
};
diff --git a/include/vera/types/sky.h b/include/vera/types/sky.h
index 1e03460..49eabb3 100644
--- a/include/vera/types/sky.h
+++ b/include/vera/types/sky.h
@@ -7,6 +7,7 @@ namespace vera {
// SKY BOX GENERATOR
// --------------------------------------------------------------
struct SkyData {
+ SkyData();
glm::vec3 groundAlbedo = glm::vec3(0.25f);
float elevation = 0.3f;
float azimuth = 0.0f;
@@ -14,4 +15,4 @@ struct SkyData {
bool change = false;
};
-}
\ No newline at end of file
+}
diff --git a/include/vera/window.h b/include/vera/window.h
index 21f754a..deebbd9 100644
--- a/include/vera/window.h
+++ b/include/vera/window.h
@@ -20,6 +20,9 @@ enum WindowStyle {
};
struct WindowProperties {
+
+ WindowProperties();
+
WindowStyle style = REGULAR;
size_t major = 2;
size_t minor = 0;
@@ -138,4 +141,4 @@ void setMouseDragCallback(std::function<void(float, float, int)>);
void setScrollCallback(std::function<void(float)>);
void setDropCallback(std::function<void(int, const char**)>);
-}
\ No newline at end of file
+}
diff --git a/include/vera/xr/holoPlay.h b/include/vera/xr/holoPlay.h
index 376004e..b258cd3 100644
--- a/include/vera/xr/holoPlay.h
+++ b/include/vera/xr/holoPlay.h
@@ -42,6 +42,7 @@ void renderQuilt(std::function<void(const QuiltProperties&, glm::vec4&, int&)> _
// in order to render correctly make sure this values match your calibration file on your device
//
struct LenticularProperties {
+ LenticularProperties() = default;
float dpi = 324.0;
float pitch = 52.58737671470091;
float slope = -7.196136200157333;
@@ -55,4 +56,4 @@ void setLenticularProperties(const std::string& _path);
std::string getLenticularFragShader(size_t _versionNumber = 100);
void feedLenticularUniforms(Shader& _shader);
-}
\ No newline at end of file
+}
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 0289ee3..0db75c0 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -41,6 +41,7 @@ set(VERA_SOURCES
${SOURCE_FOLDER}/gl/textureBump.cpp
${SOURCE_FOLDER}/gl/textureCube.cpp
${SOURCE_FOLDER}/gl/textureProps.cpp
+ ${SOURCE_FOLDER}/gl/textureStream.cpp
${SOURCE_FOLDER}/gl/textureStreamAV.cpp
${SOURCE_FOLDER}/gl/textureStreamOMX.cpp
${SOURCE_FOLDER}/gl/textureStreamMMAL.cpp
@@ -74,6 +75,7 @@ set(VERA_SOURCES
${SOURCE_FOLDER}/types/node.cpp
${SOURCE_FOLDER}/types/scene.cpp
${SOURCE_FOLDER}/types/triangle.cpp
+ ${SOURCE_FOLDER}/types/sky.cpp
${SOURCE_FOLDER}/shaders/defaultShaders.cpp
${SOURCE_FOLDER}/xr/holoPlay.cpp
${SOURCE_FOLDER}/xr/xr.cpp
@@ -81,7 +83,7 @@ set(VERA_SOURCES
# C++ LIBRAY
#
-add_library(vera ${VERA_SOURCES})
+add_library(vera SHARED ${VERA_SOURCES})
find_package(PkgConfig)
diff --git a/src/app.cpp b/src/app.cpp
index 008080b..abe7eff 100644
--- a/src/app.cpp
+++ b/src/app.cpp
@@ -13,6 +13,8 @@
namespace vera {
+App::App() = default;
+
#if defined(__EMSCRIPTEN__)
EM_BOOL App::loop (double _time, void* _userData) {
App* _app = (App*)_userData;
@@ -299,4 +301,4 @@ void App::orbitControl() {
cam->setVirtualOffset(1.5, getQuiltCurrentViewIndex(), getQuiltTotalViews());
}
-}
\ No newline at end of file
+}
diff --git a/src/gl/textureStream.cpp b/src/gl/textureStream.cpp
new file mode 100644
index 0000000..d45b5c3
--- /dev/null
+++ b/src/gl/textureStream.cpp
@@ -0,0 +1,6 @@
+#include "vera/gl/textureStream.h"
+
+namespace vera {
+ TextureStream::TextureStream() = default;
+}
+
diff --git a/src/gl/textureStreamAudio.cpp b/src/gl/textureStreamAudio.cpp
index 59c23b6..8a52cbb 100644
--- a/src/gl/textureStreamAudio.cpp
+++ b/src/gl/textureStreamAudio.cpp
@@ -53,6 +53,7 @@ TextureStreamAudio::TextureStreamAudio(): TextureStream() {
m_dft_buffer = (float*)av_malloc_array(sizeof(float), m_buf_len);
m_buffer_wr.resize(m_buf_len, 0);
m_buffer_re.resize(m_buf_len, 0);
+ m_dft_buffer = nullptr;
}
TextureStreamAudio::~TextureStreamAudio() {
diff --git a/src/gl/textureStreamMMAL.cpp b/src/gl/textureStreamMMAL.cpp
index ff8b184..e515164 100644
--- a/src/gl/textureStreamMMAL.cpp
+++ b/src/gl/textureStreamMMAL.cpp
@@ -615,7 +615,8 @@ TextureStreamMMAL::TextureStreamMMAL() :
camera_component(NULL),
m_fbo_id(0), m_old_fbo_id(0),
m_egl_img(0),
- m_vbo(nullptr) {
+ m_vbo(nullptr),
+ camera_component(NULL) {
#ifndef DRIVER_BROADCOM
// bcm_host is initialated on the creation of the window in LEGACY
bcm_host_init();
diff --git a/src/types/sky.cpp b/src/types/sky.cpp
new file mode 100644
index 0000000..1bfa0c6
--- /dev/null
+++ b/src/types/sky.cpp
@@ -0,0 +1,5 @@
+#include "vera/types/sky.h"
+
+namespace vera {
+ SkyData::SkyData() = default;
+}
diff --git a/src/window.cpp b/src/window.cpp
index 35f2249..90d295b 100644
--- a/src/window.cpp
+++ b/src/window.cpp
@@ -49,6 +49,10 @@ static float yScroll = 0.0f;
static bool bShift = false;
static bool bControl = false;
+namespace vera {
+ WindowProperties::WindowProperties() = default;
+}
+
#if defined(DRIVER_GLFW)
#if defined(__APPLE__)
diff --git a/src/xr/holoPlay.cpp b/src/xr/holoPlay.cpp
index b43d087..b8862eb 100644
--- a/src/xr/holoPlay.cpp
+++ b/src/xr/holoPlay.cpp
@@ -15,7 +15,7 @@ static Shader quilt_shader;
static int currentViewIndex = 0;
// QUILT
-QuiltProperties::QuiltProperties() {};
+QuiltProperties::QuiltProperties() = default;
QuiltProperties::QuiltProperties(int _width, int _height, int _cols, int _rows) {
width = _width;
height = _height;
--
2.50.0

View File

@@ -0,0 +1,9 @@
prefix=/usr
includedir=${prefix}/include/
libdir=${prefix}/@LIBDIR@
Name: Vera
Description: C++/WASM GL Framework
Version: @VERSION@
Libs: -L${libdir} -lvera
Cflags: -I${includedir}

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>dangduong31205@gmail.com</email>
<name>Nguyen Dinh Dang Duong</name>
</maintainer>
<upstream>
<remote-id type="github">patriciogonzalezvivo/vera</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,82 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake git-r3
DESCRIPTION="C++/WASM GL Framework"
HOMEPAGE="https://github.com/patriciogonzalezvivo/vera"
EGIT_REPO_URI="https://github.com/patriciogonzalezvivo/vera/"
EGIT_COMMIT="cb117806d14ab2c31db86d5b8cab5c58b791dd6c"
LICENSE="Prosperity-3.0.0"
SLOT="0"
IUSE="X wayland"
DEPEND="
dev-cpp/nlohmann_json
media-libs/glm
dev-libs/miniz
dev-cpp/tinygltf
dev-libs/stb
dev-libs/miniaudio
media-video/ffmpeg
media-libs/libsdl2
dev-libs/glib
media-libs/libpulse
virtual/opengl
virtual/glu
media-libs/glfw
X? (
x11-libs/libX11
x11-libs/libXrandr
x11-libs/libXcursor
x11-libs/libXi
x11-libs/libXxf86vm
)
wayland? (
dev-libs/wayland
gui-libs/libdecor
x11-libs/libxkbcommon
)
"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}/0001-Bump-cmake-min-version.patch"
"${FILESDIR}/0002-Remove-hardcoded-installation-dir.patch"
"${FILESDIR}/0003-Use-dev-libs-stb-package.patch"
"${FILESDIR}/0004-Change-include-lines.patch"
"${FILESDIR}/0005-Remove-some-bundled-deps.patch"
"${FILESDIR}/0006-Fix-in-class-initialization.patch"
)
src_prepare() {
cmake_src_prepare
local libdir=$(get_libdir)
rm -rf "${S}/deps"{glew,glfw,glm,miniaudio,miniz,stb,tinygltf} || die "delete bundled deps failed"
sed \
-e "s|@LIBDIR@|${libdir%/}/|g" \
-e "s|@VERSION@|${PV}|g" \
"${FILESDIR}/vera.pc.in" > vera.pc || die "sed failed"
}
src_configure() {
local libdir=$(get_libdir)
local args=(
-DCMAKE_INSTALL_PREFIX=/usr
-DCMAKE_INSTALL_LIBDIR=${libdir}
-DNO_X11="$(usex X OFF ON)"
)
cmake_src_configure
}
src_install() {
cmake_src_install
insinto /usr/$(get_libdir)/pkgconfig
doins vera.pc
}