All Projects → cjstehno → gradle-natives

cjstehno / gradle-natives

Licence: Apache-2.0 license
Gradle plugin to aid in managing native libraries associated with Java-based projects.

Programming Languages

groovy
2714 projects
CSS
56736 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to gradle-natives

i2c-tools
DEPRECATED - git conversion of http://lm-sensors.org/svn/i2c-tools subversion repo.
Stars: ✭ 34 (+6.25%)
Mutual labels:  abandoned
rilproxy
DEPRECATED
Stars: ✭ 21 (-34.37%)
Mutual labels:  abandoned
Mozdef
DEPRECATED - MozDef: Mozilla Enterprise Defense Platform
Stars: ✭ 2,164 (+6662.5%)
Mutual labels:  abandoned
django-kb
Simple knowledge base made with django
Stars: ✭ 15 (-53.12%)
Mutual labels:  abandoned
oauthorizer
DEPRECATED - Enable easy use of oauth for other addons
Stars: ✭ 26 (-18.75%)
Mutual labels:  abandoned
rescuefox
DEPRECATED - demo game to drive 3D engine creation: rescue your pet space fox!
Stars: ✭ 35 (+9.38%)
Mutual labels:  abandoned
socialapi-dev
DEPRECATED - Experimental support for a Social API in Firefox
Stars: ✭ 41 (+28.13%)
Mutual labels:  abandoned
gradle-syntastic-plugin
A Gradle plugin for integrating your Java project with Vim and Syntastic.
Stars: ✭ 45 (+40.63%)
Mutual labels:  gradle-plugin
page-metadata-service
DEPRECATED - A RESTful service that returns the metadata about a given URL.
Stars: ✭ 18 (-43.75%)
Mutual labels:  abandoned
Gaia
DEPRECATED - Gaia is a HTML5-based Phone UI for the Boot 2 Gecko Project. NOTE: For details of what branches are used for what releases, see
Stars: ✭ 2,091 (+6434.38%)
Mutual labels:  abandoned
iris firefox
DEPRECATED - Test Suite for Firefox using Mozilla Iris
Stars: ✭ 41 (+28.13%)
Mutual labels:  abandoned
iris
DEPRECATED - A Python 3 automation test tool for desktop applications
Stars: ✭ 18 (-43.75%)
Mutual labels:  abandoned
elmo
DEPRECATED - Elmo ~ https://mozilla.github.io/elmo/
Stars: ✭ 32 (+0%)
Mutual labels:  abandoned
b2g-installer
DEPRECATED - Tools to easily flash b2g on your android phone
Stars: ✭ 27 (-15.62%)
Mutual labels:  abandoned
AndroidLintReporter
Gradle Plugin to report Android Lint and Detekt result back to Github Pull Request
Stars: ✭ 22 (-31.25%)
Mutual labels:  gradle-plugin
IconFamily
Troy Stephens's Cocoa/Objective-C wrapper for Mac OS X Icon Services’ “IconFamily” data type. Its main purpose is to enable Cocoa applications to easily assign custom file icons from NSImage instances.
Stars: ✭ 21 (-34.37%)
Mutual labels:  abandoned
web-forward
DEPRECATED - Innovation acceleration program from Mozilla Labs
Stars: ✭ 17 (-46.87%)
Mutual labels:  abandoned
editorconfig-gradle-plugin
A Gradle plugin for checking whether project files comply with format rules defined in .editorconfig files and eventually also for fixing the violations
Stars: ✭ 40 (+25%)
Mutual labels:  gradle-plugin
yaclt
Yet Another Change Log Tool
Stars: ✭ 24 (-25%)
Mutual labels:  help-wanted
tmwa
DEPRECATED: The server running The Mana World Legacy. All new projects should use Hercules instead. See the "evol-hercules" repo.
Stars: ✭ 44 (+37.5%)
Mutual labels:  abandoned

Gradle Natives Plugin

Build Status Coverage Status

A Gradle plugin to aid in working with Java-based projects that provide supporting native libraries.

Current Status: Abandoned

This plugin started out to solve the simple problem of making the native libraries stored in dependency jar files more easily usable in Gradle projects, namely the simple game project that I was working on at the time. When I stopped working on the game project, it seemed that there was some interest in the plugin so I kept it up and tried to make it a bit better. Personally, I have not used it since a few months after it was written, and I have other projects that I do actually use, so I am listing this project as abandoned.

That being said, I will make some attempt to keep it building successfully under current Gradle and Groovy trends; however, most reported issues probably won't get much attention. You are welcome to submit pull requests for fixes and features and I will review and act on them in a timely manner.

Build

./gradlew clean build

Installation

To add the plugin to your project, add the following to your build.gradle file (or update the buildscript block if it already exists):

buildscript {
  repositories {
    maven {
      url "https://plugins.gradle.org/m2/"
    }
  }
  dependencies {
    classpath "gradle.plugin.com.stehno:gradle-natives:0.3.1"
  }
}

apply plugin: "com.stehno.natives"

Alternately, you can use the new plug definition block in Gradle 2.1 and beyond.

plugins {
	id 'com.stehno.natives' version '0.3.1'
}

The plugin is compiled on Java 7.

Usage

Without any additional configuration, the plugin will find all native libraries in all compile and runtime dependency configurations, for all platforms, and unpack them into the build/natives directory of your project. You can configure this behavior by adding a natives block to your build.gradle file. The default behavior has the following configuration:

natives {
    configurations = ['compile', 'runtime']
    platforms = Platform.all()
    outputDir = 'natives'
}

A libraries Closure may also be added to filter the resolved libraries, such as:

natives {
    configurations = ['compile', 'runtime']
    platforms = Platform.all()
    outputDir = 'natives'
    libraries {
        exclude = ['somelib.dll']
    }
}

There are two tasks provided by the plguin:

  • listNatives - lists all of the native libraries resolved by the current configuration.
  • includeNatives - includes (copies) the resolved native libraries into the configured output directory.

Warning

This plugin only resolves native libraries that are on the project classpath as dependencies of the project (Gradle dependencies, either direct or transitive).

References

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].