all: move standalone libraries to libs/ subdirectory

The root dir of our repository has grown quite a lot the past few months.

I'd like to make it more clear where the bulk of the engine lives (`src/`) and
also make it more clear which Mach libraries are consumable as standalone projects.

As for the name of this directory, `libs` was my first choice but there's a bit of
a convention of that being external libraries in Zig projects _today_, while these
are libraries maintained as part of Mach in this repository - not external ones.

We will name this directory `libs`, and if we have a need for external libraries
we will use `external` or `deps` for that directory name. I considered other names
such as `components`, `systems`, `modules` (which are bad as they overlap with
major ECS / engine concepts), and it seems likely the official Zig package manager
will break the convention of using a `libs` dir anyway.

Performed via:

```sh
mkdir libs/
git mv freetype libs/
git mv basisu libs/
git mv gamemode libs/
git mv glfw libs/
git mv gpu libs/
git mv gpu-dawn libs/
git mv sysaudio libs/
git mv sysjs libs/
git mv ecs libs/
```

git-subtree-dir: glfw
git-subtree-mainline: 0d5b853443
git-subtree-split: 572d1144f11b353abdb64fff828b25a4f0fbb7ca

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>

git mv ecs libs/

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2022-08-26 13:29:04 -07:00 committed by Stephen Gutekanst
parent 79ec61396f
commit 0645429df9
240 changed files with 6 additions and 6 deletions

View file

@ -0,0 +1,42 @@
pub const Compressor = opaque {};
pub const CompressorParams = opaque {};
pub const Image = opaque {};
pub extern fn basisu_encoder_init() void;
pub extern fn compressor_params_init() *CompressorParams;
pub extern fn compressor_params_deinit(*CompressorParams) void;
pub extern fn compressor_params_clear(*CompressorParams) void;
pub extern fn compressor_params_set_status_output(*CompressorParams, bool) void;
pub extern fn compressor_params_set_thread_count(*CompressorParams, u32) void;
pub extern fn compressor_params_set_quality_level(*CompressorParams, c_int) void;
pub extern fn compressor_params_get_pack_uastc_flags(*CompressorParams) u32;
pub extern fn compressor_params_set_pack_uastc_flags(*CompressorParams, u32) void;
pub extern fn compressor_params_set_uastc(*CompressorParams, bool) void;
pub extern fn compressor_params_set_perceptual(*CompressorParams, bool) void;
pub extern fn compressor_params_set_mip_srgb(*CompressorParams, bool) void;
pub extern fn compressor_params_set_no_selector_rdo(*CompressorParams, bool) void;
pub extern fn compressor_params_set_no_endpoint_rdo(*CompressorParams, bool) void;
pub extern fn compressor_params_set_rdo_uastc(*CompressorParams, bool) void;
pub extern fn compressor_params_set_rdo_uastc_quality_scalar(*CompressorParams, f32) void;
pub extern fn compressor_params_set_generate_mipmaps(*CompressorParams, bool) void;
pub extern fn compressor_params_set_mip_smallest_dimension(*CompressorParams, c_int) void;
pub extern fn compressor_params_get_or_create_source_image(*CompressorParams, u32) *Image;
pub extern fn compressor_params_resize_source_image_list(*CompressorParams, usize) void;
pub extern fn compressor_params_clear_source_image_list(*CompressorParams) void;
pub extern fn compressor_image_fill(*Image, [*]const u8, u32, u32, u32) void;
pub extern fn compressor_image_resize(*Image, u32, u32, u32) void;
pub extern fn compressor_image_get_width(*Image) u32;
pub extern fn compressor_image_get_height(*Image) u32;
pub extern fn compressor_image_get_pitch(*Image) u32;
pub extern fn compressor_image_get_total_pixels(*Image) u32;
pub extern fn compressor_init(*CompressorParams) ?*Compressor;
pub extern fn compressor_deinit(*Compressor) void;
pub extern fn compressor_process(*Compressor) u32;
pub extern fn compressor_get_output(*Compressor) [*]const u8;
pub extern fn compressor_get_output_size(*Compressor) u32;
pub extern fn compressor_get_output_bits_per_texel(*Compressor) f64;
pub extern fn compressor_get_any_source_image_has_alpha(*Compressor) bool;

View file

@ -0,0 +1,176 @@
#include <basisu_comp.h>
#include <basisu_enc.h>
#include <cstdbool>
#include <cstdint>
extern "C" {
void basisu_encoder_init() { basisu::basisu_encoder_init(); }
basisu::basis_compressor_params *compressor_params_init() {
return new basisu::basis_compressor_params();
};
void compressor_params_deinit(basisu::basis_compressor_params *params) {
delete params;
}
void compressor_params_clear(basisu::basis_compressor_params *params) {
params->clear();
}
void compressor_params_set_status_output(
basisu::basis_compressor_params *params, bool status_output) {
params->m_status_output = status_output;
}
void compressor_params_set_thread_count(basisu::basis_compressor_params *params,
uint32_t thread_count) {
params->m_pJob_pool = new basisu::job_pool(thread_count);
}
void compressor_params_set_quality_level(
basisu::basis_compressor_params *params, uint8_t quality_level) {
params->m_quality_level = quality_level;
}
uint32_t compressor_params_get_pack_uastc_flags(
basisu::basis_compressor_params *params) {
return params->m_pack_uastc_flags;
}
void compressor_params_set_pack_uastc_flags(
basisu::basis_compressor_params *params, uint32_t pack_uastc_flags) {
params->m_pack_uastc_flags = pack_uastc_flags;
}
void compressor_params_set_uastc(basisu::basis_compressor_params *params,
bool is_uastc) {
params->m_uastc = is_uastc;
}
void compressor_params_set_perceptual(basisu::basis_compressor_params *params,
bool perceptual) {
params->m_perceptual = perceptual;
}
void compressor_params_set_mip_srgb(basisu::basis_compressor_params *params,
bool mip_srgb) {
params->m_mip_srgb = mip_srgb;
}
void compressor_params_set_no_selector_rdo(
basisu::basis_compressor_params *params, bool no_selector_rdo) {
params->m_no_selector_rdo = no_selector_rdo;
}
void compressor_params_set_no_endpoint_rdo(
basisu::basis_compressor_params *params, bool no_endpoint_rdo) {
params->m_no_endpoint_rdo = no_endpoint_rdo;
}
void compressor_params_set_rdo_uastc(basisu::basis_compressor_params *params,
bool rdo_uastc) {
params->m_rdo_uastc = rdo_uastc;
}
void compressor_params_set_generate_mipmaps(
basisu::basis_compressor_params *params, bool generate_mipmaps) {
params->m_mip_gen = generate_mipmaps;
}
void compressor_params_set_rdo_uastc_quality_scalar(
basisu::basis_compressor_params *params, float rdo_uastc_quality_scalar) {
params->m_rdo_uastc_quality_scalar = rdo_uastc_quality_scalar;
}
void compressor_params_set_mip_smallest_dimension(
basisu::basis_compressor_params *params, int mip_smallest_dimension) {
params->m_mip_smallest_dimension = mip_smallest_dimension;
}
basisu::image *compressor_params_get_or_create_source_image(
basisu::basis_compressor_params *params, uint32_t index) {
if (params->m_source_images.size() < index + 1) {
params->m_source_images.resize(index + 1);
}
return &params->m_source_images[index];
}
void compressor_params_resize_source_image_list(
basisu::basis_compressor_params *params, size_t size) {
params->m_source_images.resize(size);
}
void compressor_params_clear_source_image_list(
basisu::basis_compressor_params *params) {
params->clear();
}
///
void compressor_image_fill(basisu::image *image, const uint8_t *pData,
uint32_t width, uint32_t height, uint32_t comps) {
image->init(pData, width, height, comps);
}
void compressor_image_resize(basisu::image *image, uint32_t w, uint32_t h,
uint32_t p) {
image->resize(w, h, p);
}
uint32_t compressor_image_get_width(basisu::image *image) {
return image->get_width();
}
uint32_t compressor_image_get_height(basisu::image *image) {
return image->get_height();
}
uint32_t compressor_image_get_pitch(basisu::image *image) {
return image->get_pitch();
}
uint32_t compressor_image_get_total_pixels(basisu::image *image) {
return image->get_total_pixels();
}
///
basisu::basis_compressor *
compressor_init(basisu::basis_compressor_params *params) {
auto comp = new basisu::basis_compressor();
if (comp->init(*params))
return comp;
else
return nullptr;
}
void compressor_deinit(basisu::basis_compressor *compressor) {
delete compressor;
}
basisu::basis_compressor::error_code
compressor_process(basisu::basis_compressor *compressor) {
return compressor->process();
}
const uint8_t *compressor_get_output(basisu::basis_compressor *compressor) {
return compressor->get_output_basis_file().data();
}
uint32_t
compressor_get_output_size(const basisu::basis_compressor *compressor) {
return compressor->get_basis_file_size();
}
double compressor_get_output_bits_per_texel(
const basisu::basis_compressor *compressor) {
return compressor->get_basis_bits_per_texel();
}
bool compressor_get_any_source_image_has_alpha(
const basisu::basis_compressor *compressor) {
return compressor->get_any_source_image_has_alpha();
}
}