A multiplatform C++ library for common and basic system functionalities.

axl.cm

CMake|main

A multiplatform C++ library for common and basic system functionalities.

Platforms

  • Linux
  • Windows

C++ standard

  • minimum: C++98
  • target: C++11
  • maximum: *

Features

  • thread
  • time
    • Time - for keeping track of elapsed time. i.e. delta time since last setting.
    • Timer - count down timer for keeping track of elapsed, excess and remaining time.

Getting Started

Clone Repository

  • git clone https://github.com/defalt8/axl.cm.git
  • cd axl.cm

Build Library And Tests

Using The Build Scripts

  • ./build

  • ./build [target]

  • ./build <library-type> <build-type> [target] ...cmake args

    • target: axl.cm | install | clean | ...
    • library-type: static | shared
    • config: Debug | Release | MinSizeRel | RelWithDebInfo
    • you can set this variables in the shell. They will be used in the build script when you run it
      • CMAKE_GENERATOR, CMAKE_BUILD_DIR, CMAKE_INSTALL_DIR, CMAKE_SOURCE_DIR
  • build

    • ./build or
    • ./build axl.cm or
    • ./build static release or
    • ./build SHARED Release or
    • ./build Static debug axl.cm ...
  • install

    • ./build install
    • ./build static release install ...

Manually

  • configure cmake

    • cmake -B out/build or
    • cmake -B out/build -DAXLCM_BUILD_TESTS=OFF or
    • cmake -B out/build -DAXLCM_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=ON or
    • cmake -B out/build -DCMAKE_INSTALL_PREFIX=out/install or
    • cmake -B out/build -DCMAKE_INSTALL_PREFIX=out/install -DAXLCM_BUILD_TESTS=OFF or
    • cmake -B out/build -DCMAKE_INSTALL_PREFIX=out/install -DAXLCM_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=ON
  • build

    • cmake --build out/build --config Release
  • install

    • cmake --build out/build --config Release --target install

Testing

  • Make sure that the tests are built.
  • ./build test or ./build RUN_TESTS for MSCV
  • ctest -C Release --test-dir out/build

Output

Generated library output files will be located under out/build/bin and out/build/lib

  • The output names are:
    • Shared Release: axl.cm
    • Shared Debug: axl.cmd
    • Static Release: axl.cms
    • Static Debug: axl.cmsd

Header Files

Owner
Axel
Ambitious and Determined C++ programmer and game engine and game developer
Axel
Similar Resources

Basic emulator for the CHIP-8 system

CHIP-8 Emulator Overview This project aims to write a small and functional CHIP-8 emulator (or more accurately an interpreter, since CHIP-8 wasn't eve

Feb 12, 2022

Common Lisp and CXX interoperation with JIT

Common Lisp and CXX interoperation  with JIT

CL-CXX-JIT - Common Lisp C++ JIT for exposing C++ functions This library provides an interface to C++ from lisp. It compiles C++ code, then loads it i

Dec 19, 2022

This package contains the common algorithms in robotic arm, and I have developed it based on universal robot. It will be continuously updateing.

This package contains the common algorithms in robotic arm, and I have developed it based on universal robot. It will be continuously updateing.

Robotic_Arm_Algorithms It contains the common algorithms in robotic arm, and will be recording the development as soon as I have completed the any one

Dec 21, 2022

Common Sensor API for the BMA2 family of sensors

BMA2 Sensor API Sensor overview The BMA2 is a triaxial, low-g acceleration sensor with digital output. An ASIC in the sensor converts the output of a

Dec 5, 2022

Common Device Source For Xiaomi Redmi Note 5 Pro (whyred)

The Redmi Note 5 Pro (codenamed "whyred") are high-end mid-range smartphones from Xiaomi announced and released in February 2018. Device specification

Dec 22, 2021

Clio is an embryonic experiment in UI for Common Lisp programs.

Clio Clio is an embryonic experiment in UI for Common Lisp programs. Building and running Clio Make sure you have the prerequisites: Visual Studio 201

Feb 26, 2022

A repository that includes common helper functions for writing applications in the DPDK. I will be using this for my future projects in the DPDK.

The DPDK Common (WIP) Description This project includes helpful functions and global variables for developing applications using the DPDK. I am using

Dec 27, 2022

Common Lisp editor/IDE with high expansibility

Common Lisp editor/IDE with high expansibility

Lem is the editor/IDE well-tuned for Common Lisp. After installing lem, you can start developing in Common Lisp at once. You can skip over writing tid

Jan 7, 2023

How do I submit patches to Android Common Kernels

How do I submit patches to Android Common Kernels BEST: Make all of your changes to upstream Linux. If appropriate, backport to the stable releases. T

Apr 7, 2022
Serial Data Monitor is a multiplatform (Windows, Linux, Mac, ...) tool to interactively receive/edit/monitor data and send commands to an embedded system via the serial bus
Serial Data Monitor is a multiplatform (Windows, Linux, Mac, ...) tool to interactively receive/edit/monitor data and send commands to an embedded system via the serial bus

See wiki for full documentation Serial Data Monitor Description Serial Data Monitor is a multiplatform (Windows, Linux, Mac, ...) tool to interactivel

Oct 29, 2021
A model checker for the Dynamic Logic of Propositional Assignments (DL-PA) with solving and parameterized random formula generation functionalities.

A model checker for the Dynamic Logic of Propositional Assignments (DL-PA) with solving and parameterized random formula generation functionalities.

Dec 31, 2021
USB to interfaces implementing MicroPython "machine" module functionalities on a computer.
USB to interfaces implementing MicroPython

u2if project u2if(USB to interfaces) is an attempt to implement some of the MicroPython "machine" module functionalities on a computer. The goal is to

Dec 26, 2022
ozz-animation provides runtime character animation playback functionalities (loading, sampling, blending...)
ozz-animation provides runtime character animation playback functionalities (loading, sampling, blending...)

ozz-animation open source c++ 3d skeletal animation library and toolset ozz-animation provides runtime character animation playback functionalities (l

Dec 27, 2022
This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler
This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler

This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler

Dec 31, 2022
Modern & multiplatform game engine in C++17
Modern & multiplatform game engine in C++17

RaZ Modern & multiplatform 3D game engine in C++17 Linux Windows macOS WebAssembly Compilation Unit tests No CI yet No CI yet N/A Codacy Coveralls Sum

Dec 24, 2022
C++ Multiplatform Modular Toolkit Template
C++ Multiplatform Modular Toolkit Template

C++ Multiplatform Modular Toolkit Template Nativium Philosophy: Write Once And Compile Anywhere About Write a single code in C++ and compile for any p

Dec 26, 2022
A C library for runtime-flippable feature flags on Linux/x86-64, with negligible overhead in the common case

Biased runtime-flippable flags, with cross-modifying code The dynamic_flag library is a two-file "C" library that offers efficient biased conditionals

Dec 14, 2022
A basic system that waters a plant according to the heat index of the environment.

Basic-Plant-Watering-System ?? This is a basic plant watering system created on Arduino Uno using DHT11 Temperature and Humidity sensor. DHT Sensor Li

Apr 11, 2021
A basic database management system for students

Student-DBMS A basic database management system for students. This program is a simple student database management system that stores the students nam

Jan 21, 2022