• This repository has been archived on 31/Jan/2019
  • Stars
    star
    106
  • Rank 325,871 (Top 7 %)
  • Language Vala
  • License
    GNU General Publi...
  • Created over 11 years ago
  • Updated over 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A program that automatically generates CMake and Meson configuration files for your Vala project

AUTOVALA

IMPORTANT: Autovala has been migrated to Gitlab

https://gitlab.com/rastersoft/autovala

Autovala is a program and a library designed to help in the creation of projects with Vala and CMake. It also has support for Genie.

Now also has experimental Meson build system support.

The idea is quite simple: CMake is very powerful, but writting the CMakeLists files is boring and repetitive. Why not let the computer create them, by guessing what to do with each file? And if, at the end, there are mistakes, let the user fix them in an easy way, and generate the final CMakeLists files.

This is what Autovala does. This process is done in three steps:

* First, Autovala checks all the folders and files, and writes a project
file with the type of each file
* It also peeks the source files to determine which Vala packages they need,
and generate automagically that list
* After that (and after allowing the user to check, if (s)he wishes, the
project file), it uses that project file to generate the needed CMakeLists
files

Autovala greatly simplifies the process of working with Vala because:

* Automatically determines the vala packages and libraries needed to compile
and run the project, by inspecting the source code
* Automatically generates the .vapi and pkg-config files for libraries
* Automatically determinates the final destination for an icon, by checking
its type (svg or png) and, in the later case, its size.
* Automatically generates manpages from text files in several possible input
format (markdown, html, latex...).
* Greatly simplifies creating libraries in Vala, or a project with a binary
that uses a library defined in the same project.
* Automatically generates the metadata files to create .DEB and .RPM packages.
* Easily integrates unitary tests for each binary in the project.
* Can generate automatically DBUS bindings by using the DBUS introspection
capabilities.
* Automatically generates the list of source files for GETTEXT.
* Simplifies mixing C and Vala source files.

COMPILING AUTOVALA

Details about how to compile autovala are available in the INSTALL.md file.

You also can compile the plugins for Gedit and Scratch Text Editor, which are in the folders gedit_plugin and scratch_plugin. You can find inside the instructions.

USING AUTOVALA

The DOC folder contains the Wiki dumped in HTML format. Just open the index.html file with your browser, or go to the Wiki section in GitHub, and enjoy.

CONTACTING THE AUTHOR

Sergio Costas Rodriguez
[email protected]
http://www.rastersoft.com
https://gitlab.com/rastersoft/autovala

More Repositories

1

cronopete

An Apple's TimeMachine clone for Linux
Vala
179
star
2

devedeng

A rewrite of Devede, using Python3 and Gtk3
Python
53
star
3

panther_launcher

A fork from Slingshot Launcher, which doesn't depend on Gala, Granite or other libraries. It also has an applet for Gnome Flashback and an extension for Gnome Shell.
Vala
33
star
4

Devede

A DVD creator for Linux
Python
31
star
5

gsl1680

An user-space driver for Silead's GSL1680 capacitive touch screen driver chip.
C
24
star
6

fbzx

A ZX Spectrum emulator
C
23
star
7

terminus

An X terminal that mixes the capabilities of Guake and Terminator, written in Vala.
Vala
8
star
8

tabletwm

TabletWM is a minimalistic Window Manager, oriented to tablet PCs and devices with small screens
C
6
star
9

slingshot_gnome

A gnome shell extension that allows to use Slingshot Launcher from Elementary OS
JavaScript
5
star
10

multipackager

Simplifies the creation of Linux packages for multiple architectures and distributions
Python
4
star
11

tabletlauncher

An application launcher for small devices. Specifically designed to be used with tabletwm
CMake
3
star
12

activityAppLauncher

A gnome shell extension that adds an application launcher based on categories to the Activities view
JavaScript
3
star
13

SpecOS

A toy microkernel for the Sinclair Spectrum.
Assembly
3
star
14

tabletplayer

A simple media player for tablets, based on mplayer
CMake
2
star
15

gedit_closebutton

CMake
2
star
16

slingshot_app_launcher

A clone for Gnome Shell of Slingshot, the app launcher from Elementary OS
JavaScript
2
star
17

avoid_overview

JavaScript
2
star
18

create_system

Python
2
star
19

fbzx-wii

Automatically exported from code.google.com/p/fbzx-wii
C
1
star
20

manage_kernel

Allows to recover (part of) a kernel config file based on the exported symbols
Python
1
star
21

bareplayer

A simple music player for Android
Java
1
star
22

remove_app_menu

An extension for Gnome Shell that removes the app icon in the top bar
JavaScript
1
star
23

gamed

A little daemon to change the priority of X and window manager, to get a better performance with OpenGL games
Vala
1
star
24

vala-editor

Vala
1
star