2016-09-09 21:30:25 +02:00
|
|
|
Lutin Build system {#mainpage}
|
2016-09-05 21:08:58 +02:00
|
|
|
==================
|
2015-10-03 12:32:51 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
@tableofcontents
|
2016-09-05 21:08:58 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
`lutin` is a generic builder and package maker is a FREE software tool.
|
|
|
|
|
|
|
|
|
|
|
|
![Py package](https://badge.fury.io/py/lutin.png) https://pypi.python.org/pypi/lutin
|
|
|
|
|
|
|
|
|
|
|
|
Release (master) {#lutin_mainpage_build_master}
|
|
|
|
================
|
|
|
|
|
|
|
|
![Build Status](https://travis-ci.org/HeeroYui/lutin.svg?branch=master) https://travis-ci.org/HeeroYui/lutin
|
|
|
|
|
|
|
|
|
|
|
|
Developement (dev) {#lutin_mainpage_build_dev}
|
|
|
|
==================
|
|
|
|
|
|
|
|
![Build Status](https://travis-ci.org/HeeroYui/lutin.svg?branch=dev) https://travis-ci.org/HeeroYui/lutin
|
|
|
|
|
|
|
|
|
|
|
|
What is Lutin? {#lutin_mainpage_intro}
|
|
|
|
==============
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Lutin is an application/library builder, it is designed to concurence CMake, Makefile, Ant, graddle ...
|
|
|
|
|
|
|
|
Lutin is deveopped in Python 2.x and 3.x to permit many user to play with it.
|
|
|
|
|
|
|
|
Python permit to Lutin to be used in many environement in a fast way.
|
|
|
|
|
|
|
|
Lutin support can compile every thing you want, just add a builder that you need (not in the common way). Basicly Lutin support languages:
|
2016-09-05 21:08:58 +02:00
|
|
|
- C (ainsi/89/99) ==> .o;
|
|
|
|
- C++ (98/99/03/11/14/...) ==> .o;
|
|
|
|
- .S (assembleur) ==> .o;
|
|
|
|
- .java ==> .class;
|
|
|
|
- .class ==> jar;
|
|
|
|
- .o ==> .a;
|
|
|
|
- .o ==> .so;
|
|
|
|
- .o/.a ==> binary.
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Some packege can be generate for some platform:
|
2016-09-05 21:08:58 +02:00
|
|
|
- debian package;
|
|
|
|
- windows application zip;
|
|
|
|
- MacOs application .app;
|
|
|
|
- iOs package;
|
|
|
|
- Android Package .apk.
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Compilation is availlable for:
|
2016-09-05 21:08:58 +02:00
|
|
|
- gcc/g++;
|
|
|
|
- clang/clang++.
|
2015-10-03 12:32:51 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
Manage **workspace build** (in oposition of CMake/make/...)
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
Install: {#lutin_mainpage_installation}
|
|
|
|
========
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Requirements: ``Python >= 2.7`` and ``pip``
|
|
|
|
|
2016-09-05 21:08:58 +02:00
|
|
|
Install lutin:
|
2016-09-09 21:30:25 +02:00
|
|
|
--------------
|
2016-09-05 21:08:58 +02:00
|
|
|
|
2015-10-03 12:32:51 +02:00
|
|
|
Just run:
|
2016-09-13 23:56:20 +02:00
|
|
|
```{.sh}
|
2015-10-03 12:32:51 +02:00
|
|
|
pip install lutin
|
2016-09-05 21:08:58 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
Install pip:
|
2016-09-09 21:30:25 +02:00
|
|
|
------------
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Install pip on debian/ubuntu:
|
2016-09-13 23:56:20 +02:00
|
|
|
```{.sh}
|
2015-10-03 12:32:51 +02:00
|
|
|
sudo apt-get install pip
|
2016-09-05 21:08:58 +02:00
|
|
|
```
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Install pip on ARCH-linux:
|
2016-09-13 23:56:20 +02:00
|
|
|
```{.sh}
|
2015-10-03 12:32:51 +02:00
|
|
|
sudo pacman -S pip
|
2016-09-05 21:08:58 +02:00
|
|
|
```
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Install pip on MacOs:
|
2016-09-13 23:56:20 +02:00
|
|
|
```{.sh}
|
2015-10-03 12:32:51 +02:00
|
|
|
sudo easy_install pip
|
2016-09-05 21:08:58 +02:00
|
|
|
```
|
2015-10-03 12:32:51 +02:00
|
|
|
|
2016-09-05 21:08:58 +02:00
|
|
|
Install from sources:
|
2016-09-09 21:30:25 +02:00
|
|
|
---------------------
|
2015-10-03 12:32:51 +02:00
|
|
|
|
2016-09-13 23:56:20 +02:00
|
|
|
```{.sh}
|
2015-10-03 12:32:51 +02:00
|
|
|
git clone http://github.com/HeeroYui/lutin.git
|
|
|
|
cd lutin
|
|
|
|
sudo ./setup.py install
|
2016-09-05 21:08:58 +02:00
|
|
|
```
|
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
git repository {#lutin_mainpage_repository}
|
|
|
|
==============
|
2015-10-03 12:32:51 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
http://github.com/HeeroYui/lutin/
|
2016-09-05 21:08:58 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
Tutorals: {#lutin_mainpage_tutorial}
|
|
|
|
=========
|
2016-09-05 21:08:58 +02:00
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
- @ref lutin_concept
|
|
|
|
- @ref lutin_use
|
|
|
|
- @ref lutin_module
|
2016-09-22 21:33:06 +02:00
|
|
|
- @ref lutin_ios
|
2016-09-09 21:30:25 +02:00
|
|
|
|
|
|
|
|
2017-01-05 21:28:23 +01:00
|
|
|
License (MPL v2.0) {#lutin_mainpage_licence}
|
2016-09-09 21:30:25 +02:00
|
|
|
=====================
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Copyright lutin Edouard DUPIN
|
|
|
|
|
2017-01-05 21:28:23 +01:00
|
|
|
Licensed under the Mozilla Public License, Version 2.0 (the "License");
|
2015-10-03 12:32:51 +02:00
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
|
2017-01-05 21:28:23 +01:00
|
|
|
https://www.mozilla.org/MPL/2.0/
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
|
|
|
|
|
2016-09-09 21:30:25 +02:00
|
|
|
History: {#lutin_mainpage_history}
|
|
|
|
========
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
I work with some builder, Every one have theire own adventages, and their problems.
|
|
|
|
The main point I see, is that the polimorphisme of the worktree is really hard.
|
|
|
|
The second point is the generation on different platforms is hard too.
|
|
|
|
|
|
|
|
Some other problem example:
|
2016-09-05 21:08:58 +02:00
|
|
|
- Makefile is too slow on windows mingw;
|
|
|
|
- Cmake does not create end point package;
|
|
|
|
- none is really simple to write.
|
2015-10-03 12:32:51 +02:00
|
|
|
|
|
|
|
Then I create a simple interface that manage all I need. and written in python to permit to be faster on every platform.
|
2016-09-22 21:33:06 +02:00
|
|
|
|
|
|
|
|
|
|
|
[link macos account developper](https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppStoreDistributionTutorial/AddingYourAccounttoXcode/AddingYourAccounttoXcode.html)
|