A guide for the Haxe cpp target build systems, CFFI and APIs
The Haxe cpp target has many parts that make it whole. The haxelib run hxcpp
tool, the xml based build system, the C foreign function interface (CFFI), the platform and compiler toolchains, the <hxcpp.h>
and cpp.*
APIs - there is a lot of ground to cover by the hxcpp contributors.
A lot of these aspects are straight forward, but many are undocumented. The purpose of this guide is to close the gap, by joining together users from the development team and from the community to collaborate on a comprehensive view of each of the parts that make up the cpp target and it's toolchains.
- Provide a comprehensive reference
- To give up to date and nuanced usage reference for hxcpp users
- To help flesh out the necessary parts for the Haxe Manual
- But also be more than just a reference manual
- By being oriented toward learning material in the form of a guide,
- including walk throughs, tutorials and working examples
- Collaborating with the community and dev team
- Combining efforts to lighten the work load on everybody
- The guide is made up of a collection of simple markdown files
- They are organized into a strict structure and have a strict and consistent formatting
- Work in progress documents are much more free form and open ended, and co-exist. This allows users to write freely and detail information with the least amount of friction and effort possible, and then later be formalized into place. This also allows sections to be contributed even if incomplete, to be reviewed and helped by others.
- Revisions and goals will be handled by milestones
The intent is a versioned and dated PDF document with the necessary table of contents and links for consuming. This will be generated by the structured markdown files and will include clear and explicit markings for the version of hxcpp, the version of the haxe compiler and the version of this guide itself.
This file will be generated automatically on guide changes and versioned releases done on github.
Currently we are in the process of migrating existing documents (and new ones) to this repo. We are busy formalizing the collaborative efforts by the community members that are involved.
More details on the specification and formatting will follow.
Please feel free to ask questions, post ideas and suggestions, corrections and documents to issue list.
Please keep ALL discussions for the guide on this repo.
For submissions and corrections please feel free to submit a pull request.