Commit Graph

19 Commits

Author SHA1 Message Date
Samuel Rivas
d1e6f055fe Fix haxe to compile with ocaml 4.02
camlp4 is now a separate package
2015-07-23 19:50:01 +02:00
Tobias Geerinckx-Rice
b2d7f4b1ba Use common licence attributes from lib/licenses.nix
Many (less easily automatically converted) old-style strings
remain.

Where there was any possible ambiguity about the exact version or
variant intended, nothing was changed. IANAL, nor a search robot.

Use `with stdenv.lib` wherever it makes sense.
2015-05-27 22:00:06 +02:00
aszlig
3bb0e6df8a
haxe: Add package for the hxcpp runtime library.
I'm not adding this to pkgs/development/libraries because it somewhat is
strongly tied to Haxe itself, because otherwise you can't compile to C++
and in the event that someone is going to create something like
"haxePackages" someday it is easier to notice when it's residing in the
Haxe folder.

In theory it would also work by using imperative haxelib, but you'll get
precompiled libraries which need to be patched on NixOS systems. That's
the main reason I was packaging this, among from the fact that even when
patching the libraries, it still leads to occasional library hell and
instabilities.

The package has two outputs: One with the library itself, needed for
compile time ($out) and another one ($lib) which is needed at runtime,
so after compiling, the $out path can be safely garbage collected.

Right now, I've set meta.platforms to Linux only, because that's where
I've tested it. In order to get it running on other platforms the
targetArch attribute has to be set accordingly.

We also build everything completely from scratch, even though there are
binaries within the source ZIP file. The main reason is to make smaller
library dependencies by avoiding bundled libraries and using the ones we
already ship with nixpkgs.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-03-20 08:47:11 +01:00
aszlig
d68e9b855c
haxe: Add setup-hook and patch to add haxlib path.
Introduces a new environment variable called HAXELIB_PATH and the patch
for haxelib is trying to search that environment variable for other
libraries. If the haxelib path for a particular library isn't found, it
reverts to the normal behaviour of searching the user's home directory
for a file called .haxelib, which in turn points to a repsitory path and
that in turn has .current/.dev files to point it to the right version
number.

This avoids workarounds like this when using Nix to build Haxe projects:

configurePhase = ''
  export HOME="$(pwd)"
  echo "$(pwd)" > .haxelib

  mkdir dependency1
  echo dev > dependency1/.current
  echo "${dependency1}" > dependency1/.dev

  mkdir dependency2
  echo dev > dependency2/.current
  echo "${dependency2}" > dependency2/.dev
'';

Now every haxelib is expected to be in $out/lib/haxe/$name and whenever
it is listed in buildInputs of another Haxe derivation, HAXELIB_PATH
gets automatically set in the build environment.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-03-20 08:39:21 +01:00
Malcolm Matalka
27e2e4132b Add HaXe 3.1.3 2014-06-01 15:15:15 +02:00
aszlig
b59d53cc2d
Revert "haxe: Use ignoreExternals and fix build."
This reverts commit a0716f28af.

Starting with r6706, externals now have a fixed revision, so we no longer need
to ignore them.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>

Conflicts:
	pkgs/development/compilers/haxe/default.nix
2013-05-25 19:01:45 +02:00
aszlig
565b5b522f
haxe: Cosmetics - use -f flag on rm.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-05-25 19:01:45 +02:00
aszlig
64128b7297
haxe: Update to stable version 3.00.
So, finally, Haxe 3 is stable :-)

An overview of the new features can be found here:

http://haxe.org/manual/haxe3/features

This version now has a new build target "tools", so let's use it.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-05-25 19:01:45 +02:00
aszlig
a0716f28af
haxe: Use ignoreExternals and fix build.
Now, our builds shouldn't break anymore once there is a new change in ocamllibs.

I've used revision 256 from ocamllibs, because this was approximately the
revision we had back then when Haxe 2.10 got released.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2013-03-27 00:26:55 +01:00
aszlig
c6c7019091
haxe: Remove build files of haxelib/haxedoc early.
Previously, we installed std by omitting the tools directory. Now, there are
occasions where you actually want to use things like tools.haxelib from within
your project, for example to create something that interfaces with the haxelib
API. So we now just remove all files in there that were created during the main
build in postBuild.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-08 02:26:09 +02:00
aszlig
064cf68281
haxe: Rewrite package from scratch, version 2.10.
As well as for neko, we now have way less cruft within the mkDerivation
attribute set. We also now use make to build haxe, which will include haxelib
and haxedoc as well.

The main reason why I was doing this was because the package didn't build and
still was referencing mawercer.de, which does not contain those tarballs
anymore.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-07 11:41:59 +02:00
Eelco Dolstra
c556a6ea46 * "ensureDir" -> "mkdir -p". "ensureDir" is a rather pointless
function, so obsolete it.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31644
2012-01-18 20:16:00 +00:00
Marc Weber
f3e7f0fdf0 reverting my patch series adding -j -l support for make
svn path=/nixpkgs/branches/stdenv-updates/; revision=22336
2010-06-19 15:52:28 +00:00
Marc Weber
2dafd54743 opt-out some failing phases
svn path=/nixpkgs/branches/stdenv-updates/; revision=22285
2010-06-15 19:00:58 +00:00
Marc Weber
603fd4f206 HaXe and Neko update, C backend does work on NixOS
haxelib install hxcpp; Maybe export HXCPP_M64=1 then take off :)

svn path=/nixpkgs/trunk/; revision=22055
2010-05-29 18:26:45 +00:00
Marc Weber
b8fc0df586 updating HaXe and Neko
svn path=/nixpkgs/trunk/; revision=21150
2010-04-18 22:01:50 +00:00
Marc Weber
19f0cd20fd HaXe: support nekotools boot - add haxelib
svn path=/nixpkgs/trunk/; revision=20674
2010-03-16 23:34:56 +00:00
Marc Weber
5319704f80 removing old bleeding edge cruft replacing it by a niftier version using
source regions which are substituded by the tool nix-repository-manager.
See http://github.com/MarcWeber/nix-repository-manager/raw/master/README.

sourceByName is called sourceFromHead now.

updates: MPlayerTrunk, haxe, neko, netsurf, cinelerra, ctags
cinelerra does no longer build due to Xorg update

svn path=/nixpkgs/trunk/; revision=18894
2009-12-11 13:58:23 +00:00
Marc Weber
c5b2c2c40a adding haxe
svn path=/nixpkgs/trunk/; revision=18708
2009-11-30 01:05:04 +00:00