lutin/doc
2016-09-05 21:08:58 +02:00
..
010_basic_concept.md [DOC] update documentation and add better stanadart API 2016-09-05 21:08:58 +02:00
020_Compile_a_module.md [DOC] update documentation and add better stanadart API 2016-09-05 21:08:58 +02:00
030_Create_a_new_module.md [DOC] update documentation and add better stanadart API 2016-09-05 21:08:58 +02:00
readme.md [DOC] update documentation and add better stanadart API 2016-09-05 21:08:58 +02:00

Lutin Build system

What is Lutin, and how can I use it?

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:

  • 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.

Some packege can be generate for some platform:

  • debian package;
  • windows application zip;
  • MacOs application .app;
  • iOs package;
  • Android Package .apk.

Compilation is availlable for:

  • gcc/g++;
  • clang/clang++.

Manage [b]workspace build[/b] (in oposition of CMake/make/...)

Install:

Requirements: Python >= 2.7 and pip

Install lutin:


Just run:

	pip install lutin

Install pip:


Install pip on debian/ubuntu:

	sudo apt-get install pip

Install pip on ARCH-linux:

	sudo pacman -S pip

Install pip on MacOs:

	sudo easy_install pip

Install from sources:


	git clone http://github.com/HeeroYui/lutin.git
	cd lutin
	sudo ./setup.py install

Tutoral entry point:

tutorial

License (APACHE v2.0)

Copyright lutin Edouard DUPIN

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

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.

History:

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:

  • Makefile is too slow on windows mingw;
  • Cmake does not create end point package;
  • none is really simple to write.

Then I create a simple interface that manage all I need. and written in python to permit to be faster on every platform.