Skip to content
This repository has been archived by the owner on Jun 5, 2022. It is now read-only.

ncorgan/cal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CAL: C Abstraction Layer

license Travis-CI Build AppVeyor Build

Every C programmer that's had to maintain compatibility across platforms has had to deal with the headache of working with implementation differences. Linux vs Windows, POSIX vs WinAPI, the list goes on. This library aims to ease this issue by providing minimal functions that abstract away these differences, giving users a single API that can be used across platforms.

Current features:

  • Dynamic library loading
  • Endian-swapping
  • Getting common filesystem paths
  • Getting network interface information
  • High-frequency timing
  • Text conversion

Testing

Using Travis and AppVeyor, every push to this repository is automatically tested under the following configurations:

  • Compile, unit test:
    • Ubuntu 14.04 (x64)
      • GCC: 4.8.4, 6.2.0
      • Clang: 3.5.0, 4.0.0
    • Windows Server 2012 R2
      • MSVC (x86, x64): 2013, 2015
  • Cross-compile only:
    • MSVC (ARM): 2013, 2015

All source files are analyzed with CppCheck.

Unit tests use the Unity framework.

README last updated: 2017/06/24

About

CAL: C Abstraction Layer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published