mk-project¶
| author: | Brüggemann Eddie <mrcyberfighter@gmail.com> |
|---|---|
| program: | mk-project |
| version: | 1.0.0 |
| language: | C |
| release: | June 26, 2016 |
Presentation¶
mk-project is a tool done to ease the development process and a good bridge for the distributing process. Especially with the autotools.
mk-project is a T.D.E (Terminal Developement Environment): an utility used for the development of programs, libaries, modules, documentations (in many formats, man pages, info books or pages), and so soon...
mk-project is based on the make tool which on his turn, use severals utilities, for providing many features
and so many make targets.
Callable through a terminal, in preference (or through the G.U.I from mk-project) ,
because of the wide number of
targetsprovided and some take argument(s).
mk-project is an
Environmentin the terms of his wide field oftargetswhich aren’t statically at all.But dynamically configurable, changeable and creatable and so that the grass becomes greener...
The
targetsare short string easy to remember and so you can make work
- your computer, through the terminals
- and mostly your head through remembering, configurating, modifying and creating
targets.And not become an I.D.E (Integrated Development Environment) zombie thrashing his head and knows !
But a proud well informed programmer which knows exactly how his system and environment works which can easily automate the task using the make syntax.
So mk-project wants to make you the development easier without forgetting our computational roots (TTY knows) !
Through providing you, through a big
Makefile, which is generate, entirely, according to your settings,the easiest way of build all in one.
You can edit the
Makefileat your convienence, of course !Note
But think to notify the developers,
to inform them about your add-on(s) if you think it’s reliable and usable for others.
mk-project doesn’t claim to replace an IDE or others building tools but only give you an alternative
which
you can entirely adaptto your requirement.
Note
For being true the make tool implementation and the way it make you the life easier
without forgetting your
TTY Knowshas impress me so thatI couldn’t develop a good project without it
or in others words:
If the make tool have never exist I would invent it...
What provide mk-project¶
Note
At the time i write this documentation mk-project support only 3 differents programming languages:
- C or C++ and python.
That’s poor 3 language, but “I invite all the community to work together to take in charge more languages...”
file: see this document for participating (You can become from the simple contributor to the entire coautor).
mk-project provide at first a solid base for building a work,
through a big Makefile, which can be edited manually in respect of the following few conventions:
Note
Configuration settings are set through the string:
- F For false (disable option).
- T for true (enable option).
Some few others variables:
The variable $(SRC_FILES) is build from the variable $(SRC_DIR) which value is always:
./source.This mean if you want to add files manually (if you doesn’t use the GUI for this task) to your Makefile,
do it properly by using the $(SRC_DIR) variable:
SRC_DIR = ./source SRC_FILES = ${SRC_DIR}/my_file${EXT_SRC} \ ${SRC_DIR}/subfolder/my_file${EXT_SRC}So you will add file(s) relativ to the
./sourcedirectory where source file(s) have to reside.
note: Otherwise simply use the G.U.I for adding file(s) ( (Ctrl + a)).
A building system for your source files.
Many tools for machine code investigation:
From the simple -g option setting by a
GNU-Compilerfor debbuging withgdb, through disassemble the machine code files and executable tracing, to profiling the entire work.A support for Markdown, ReST and texinfo for building the documentation of your work is provided.
The documentation
targetssupport many output formats:
- info files.
- man (manual pages).
- HTML, HTML5, and texi HTML documentation.
- PDF and DVIPDF files.
- ODT files.
- XML files.
- LATEX files.
- EPUB files (epub3 is used).
note: the docbook and latex format are used internaly. mk-project provide a simple G.U.I composing of terminals and a menubar.
At first you can use the menu items to perform some actions like:
Generate a new project: (
(Ctrl + n)).Then you have to configurate your project answering some basics questions like:
- Programming language.
- Program name
- Project folder (in which the new project will be generate).
And some others according to your settings.
Once the new project is generated you can access to the make targets either through the mk-project G.U.I menubar (simple click on the wanted target to execute it !).
Or from the terminal of mk-project or any else terminal at the condition to be in the
Makefilecurrent folder.
note: Simply type $ make help to get the list of available targets. Warning
If you add some user-targets, to the
Makefile(s), think at adding them to the $ make help output.So that mk-project can auto-detect your target and list it to add it as menu item to the make targets.
If you add a bash comment on the same line it will be displayed as tooltip by overfly the menu items.
warning: Simply think to limit your entry at terminal maximal size: 79 characters. So mk-project provide anothers terminals ordered in tabs which you can add, remove, and configurating.
For purpose of terminals editor users like vi, ed, emacs which can be easily launch an instance their favorite
terminal editorin every tab all that continuing using the mk-project interface.
Finally you can switch between the single (Ctrl + m) (which should stay in the Makefile current folder) and the (Ctrl + m) terminals using the menu radio items.
How mk-project works¶
note: The answers is simply all is make in Makefiles, which will make you the development easier.
Author(s)¶
Developers: Brüggemann Eddie Documentation: Brüggemann Eddie
Contributor(s)¶
Become one !!!
The futur of mk-project¶
mk-project mic-on !!!¶
Note
The idea is to sit in front of the interface of mk-project (
microphone on!),writing the source code from your last creation:
And to say
execute: make exec, or the target you want...The program could react by analysing your voice entry and executing the target !!!
So that the build is automate by (simple) voice recognition.
So you can write your program with your hands
andbuild it with by emitting a simple order so that the program execute the corresponding target,
if reconize...
What do you think about it ?
note: We could enchance mk-project in the way of Speech reconignition...