Git Product home page Git Product logo

bindinator's Introduction

Bindinator

The bindinator installs a tool called bindinate, which can be called with the name of a gir file to generate a binding project.

Example:

bindinate --gir=WebKit-3.0

If the package name in the gir file does not match the system package (i.e., the .pc file), it can be supplied to bindinate.

Example:

bindinate --gir=GnomeKeyring-1.0 --package=gnome-keyring-1

Dependencies

You'll need a fairly recent gtk-sharp from https://github.com/mono/gtk-sharp.

Extra cs code

If you want to extend/add code, you can add extra source files to the sources list in Makefile.am

Extra package checks

The bindinate tool creates a directory of the same name as the supplied gir file name and produces the needed files for compiling a binding. Customization of the gapi output can be done via the usual metadata file.

If the build requires checking for extra packages and getting assembly references, call bindinate with --dependency or -d options. E.g.:

bindinate --gir=Pango-1.0 -d=GLIB_SHARP,glib-sharp-3.0 -d=MONO_CAIRO,mono-cairo

This will create an m4 file for each dependency you have. E.g. for MONO_CAIRO, you'll get a file m4/MONO_CAIRO.m4 containing:

AC_DEFUN([CHECK_MONO_CAIRO],
[
	PKG_CHECK_MODULES(MONO_CAIRO, mono-cairo)
	AC_SUBST(MONO_CAIRO_CFLAGS)
	AC_SUBST(MONO_CAIRO_LIBS)
])

A CHECK_MONO_CAIRO call will be added to configure.ac automatically. $(MONO_CAIRO_CFLAGS) will be added to the code generation command and $(MONO_CAIRO_LIBS) will be added to the assembly build command.

bindinator's People

Contributors

sundermann avatar shana avatar thiblahute avatar ylatuya avatar bl8 avatar hbons avatar ocrete avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.