mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-06-06 05:13:37 +00:00
Compare commits
249 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f5c7d72813 | ||
|
|
d357f1a8ed | ||
|
|
163a382727 | ||
|
|
ec232441a2 | ||
|
|
adf48bddba | ||
|
|
73ad8265a8 | ||
|
|
7a1b8bfb71 | ||
|
|
1049ba5906 | ||
|
|
5c847a370a | ||
|
|
f7561cf00e | ||
|
|
11f838c363 | ||
|
|
9dddc7f142 | ||
|
|
f1d1900a92 | ||
|
|
a1c5ff3fb6 | ||
|
|
02ec562596 | ||
|
|
9c55897afc | ||
|
|
32e4b9928d | ||
|
|
381c8b926a | ||
|
|
a1ddfbc3a5 | ||
|
|
0233bc614d | ||
|
|
b874f68d80 | ||
|
|
beaff0a892 | ||
|
|
0d4967fc35 | ||
|
|
1550034ac4 | ||
|
|
798a009f1d | ||
|
|
8776ba127c | ||
|
|
de759967c8 | ||
|
|
36356d7694 | ||
|
|
57c5759250 | ||
|
|
5c9232e063 | ||
|
|
776554d9e1 | ||
|
|
7bf54b734e | ||
|
|
2b58d63ab6 | ||
|
|
6d3efc40c1 | ||
|
|
735076eb3c | ||
|
|
e50417845d | ||
|
|
8e4d58631e | ||
|
|
9c711700e4 | ||
|
|
92b3cc5cfb | ||
|
|
8feb5fab5b | ||
|
|
ab7af4709a | ||
|
|
817d1b27ef | ||
|
|
cbdf9a0408 | ||
|
|
0376334dde | ||
|
|
b3c93a41c1 | ||
|
|
24cb251dd0 | ||
|
|
00004fa6da | ||
|
|
5a4de2c5de | ||
|
|
01a1658c6b | ||
|
|
68327c3a9d | ||
|
|
04c272508c | ||
|
|
4fc3dd4a5a | ||
|
|
085e197ea3 | ||
|
|
8ed9ea8b51 | ||
|
|
12ae5363ea | ||
|
|
bc71554fc8 | ||
|
|
2fcc5fdb08 | ||
|
|
e3ff964291 | ||
|
|
5862e56f26 | ||
|
|
892b119c9d | ||
|
|
f8f9f4d12c | ||
|
|
3c699fe619 | ||
|
|
f45695f7fa | ||
|
|
bd56b7d65c | ||
|
|
8c4a80b585 | ||
|
|
9c4cfc02ce | ||
|
|
f1b459adfd | ||
|
|
e8295a80b4 | ||
|
|
f0b3c89f89 | ||
|
|
4f155b0f7a | ||
|
|
158aa95f52 | ||
|
|
ee40be39a4 | ||
|
|
4df6ec860c | ||
|
|
cbe3e13bde | ||
|
|
5941f66f0e | ||
|
|
0fd59fd7a4 | ||
|
|
de13527000 | ||
|
|
a1b3ae0c81 | ||
|
|
ab73ec398b | ||
|
|
b8b4f9ce4b | ||
|
|
d74192ee38 | ||
|
|
c8455be838 | ||
|
|
5c5db47443 | ||
|
|
e8d2b1cc36 | ||
|
|
1b39a96d37 | ||
|
|
70d26112f2 | ||
|
|
946a2d4a48 | ||
|
|
ce50734cf0 | ||
|
|
1b8e9faf08 | ||
|
|
287edecf42 | ||
|
|
f82050134e | ||
|
|
1999676d30 | ||
|
|
b7ad383924 | ||
|
|
16c0047575 | ||
|
|
08dbd48e8d | ||
|
|
e5fd37f35d | ||
|
|
cd0e06b9ef | ||
|
|
428f8b4ca3 | ||
|
|
73c7b4a111 | ||
|
|
b79b18dfb7 | ||
|
|
90e75450a4 | ||
|
|
56712d5032 | ||
|
|
9261c1eaa5 | ||
|
|
057ad6798c | ||
|
|
5eea59c2cd | ||
|
|
d113da8bab | ||
|
|
e535bc8ad0 | ||
|
|
500a06b8a9 | ||
|
|
a33753a973 | ||
|
|
d6a58594d2 | ||
|
|
191a465665 | ||
|
|
73049cea22 | ||
|
|
ecbf66674f | ||
|
|
103d1b2c83 | ||
|
|
9a4afa3f94 | ||
|
|
9d9c76529f | ||
|
|
3f6bf521fc | ||
|
|
9249f4c892 | ||
|
|
744c434349 | ||
|
|
c0bdcfe274 | ||
|
|
66c3040dbb | ||
|
|
7000802ae8 | ||
|
|
41c54dd4d9 | ||
|
|
9db5df37f9 | ||
|
|
91184df3b2 | ||
|
|
d9cebb072f | ||
|
|
d427c4271d | ||
|
|
067726f3e2 | ||
|
|
02a4d8ece5 | ||
|
|
94f9bd408e | ||
|
|
7e813f0999 | ||
|
|
4c14c369fe | ||
|
|
362cba8ada | ||
|
|
3d0e24c639 | ||
|
|
ffa5434646 | ||
|
|
7bee8f0414 | ||
|
|
50405c5948 | ||
|
|
823b3e4770 | ||
|
|
e0f8b5d722 | ||
|
|
9baed5046d | ||
|
|
8742115007 | ||
|
|
7b141f7f5a | ||
|
|
9b0306fb9b | ||
|
|
7ac37f8ee9 | ||
|
|
de40a2c191 | ||
|
|
5f0cf96dbb | ||
|
|
19c6f730c3 | ||
|
|
f2eab1a900 | ||
|
|
a117391400 | ||
|
|
8984ebdeb8 | ||
|
|
f8554f0b81 | ||
|
|
0230509c1c | ||
|
|
e586e68d9b | ||
|
|
546f48b3e1 | ||
|
|
b75f6860da | ||
|
|
91aafbcae4 | ||
|
|
35fa436449 | ||
|
|
bad05cd2b6 | ||
|
|
68361ac199 | ||
|
|
5fb4265643 | ||
|
|
e2570fd7b7 | ||
|
|
02a743eb7a | ||
|
|
d5ec705667 | ||
|
|
b4ce40af2b | ||
|
|
5e7f5b2ada | ||
|
|
fe1c5cb1e1 | ||
|
|
480d68ece3 | ||
|
|
38bc744a0b | ||
|
|
4b283d3de7 | ||
|
|
f1279496e5 | ||
|
|
e995558293 | ||
|
|
716904fe0c | ||
|
|
233c7bd0f6 | ||
|
|
a7055cbe52 | ||
|
|
57fd5644d2 | ||
|
|
1fde9ff92d | ||
|
|
be3479234b | ||
|
|
cd0ad9e00a | ||
|
|
aa3443651a | ||
|
|
506a336bca | ||
|
|
4e38179977 | ||
|
|
2dc967e656 | ||
|
|
256aec2e56 | ||
|
|
880d223252 | ||
|
|
1bc488563d | ||
|
|
306522dd90 | ||
|
|
003ce6c40d | ||
|
|
f16b58e236 | ||
|
|
7953d11e3a | ||
|
|
58c20ef428 | ||
|
|
ef2f51e930 | ||
|
|
cf9df60603 | ||
|
|
2f3d764edb | ||
|
|
026ff9466a | ||
|
|
48c3faca51 | ||
|
|
6b2bb22474 | ||
|
|
e6db9b1caa | ||
|
|
5ce30ac868 | ||
|
|
ee09ff00ff | ||
|
|
e9ce152222 | ||
|
|
b1741cb2b1 | ||
|
|
bd9a07f99c | ||
|
|
cc87e86386 | ||
|
|
deec2fbb21 | ||
|
|
f0f5b6297e | ||
|
|
1c2cebf738 | ||
|
|
4d037af2de | ||
|
|
4cf6ec5ef5 | ||
|
|
211f1cae14 | ||
|
|
acfb15751e | ||
|
|
28f764f991 | ||
|
|
1fdba43460 | ||
|
|
f24dabb6a3 | ||
|
|
a6c0074fcf | ||
|
|
646a101086 | ||
|
|
ff00ba7ffa | ||
|
|
9c9061eb67 | ||
|
|
4f79dcdfba | ||
|
|
77d20ed799 | ||
|
|
2041469c69 | ||
|
|
549a0a807f | ||
|
|
3545617046 | ||
|
|
1894a8b86c | ||
|
|
30f2bf8a85 | ||
|
|
668eaa8960 | ||
|
|
33f773c97a | ||
|
|
55161eff7c | ||
|
|
95bf9df10d | ||
|
|
fe9576d846 | ||
|
|
4853310bb8 | ||
|
|
88629b5612 | ||
|
|
60017b5191 | ||
|
|
8f20737d52 | ||
|
|
2220a171c9 | ||
|
|
7f97b73eef | ||
|
|
915672f858 | ||
|
|
a9f88dae64 | ||
|
|
64c25128bc | ||
|
|
34dfe18660 | ||
|
|
714a65d9d4 | ||
|
|
443b81595a | ||
|
|
ff7acae84b | ||
|
|
35e9ca4fa9 | ||
|
|
10a53b57d8 | ||
|
|
d883e86e1c | ||
|
|
15b39d40af | ||
|
|
eef0deb633 | ||
|
|
d60e11c4e2 | ||
|
|
01f6b1026c |
12
ChangeLog
12
ChangeLog
@@ -1,12 +0,0 @@
|
||||
2003-08-18 Eelco Visser <visser@cs.uu.nl>
|
||||
|
||||
* pkgs/strategoxt/pkg-build.sh: generic build script for packages
|
||||
with the standard untar; bootstrap; configure; make; make install
|
||||
interface. The script is parameterized with arguments for
|
||||
configure. That is, all arguments are passed verbatim to
|
||||
configure.
|
||||
|
||||
* asfix-tools, gpp, sc, srts, stratego-front, xtc: Fix expressions
|
||||
and (trivial) build script for basic strategoxt packages. All
|
||||
packages are abstracted on subversion revision.
|
||||
|
||||
50
pkgs/BUGS
Normal file
50
pkgs/BUGS
Normal file
@@ -0,0 +1,50 @@
|
||||
* If NIX_DEBUG is turned on (set to "1"), autoconf configure scripts
|
||||
may fail to find the correct preprocessor:
|
||||
|
||||
checking how to run the C preprocessor... /lib/cpp
|
||||
|
||||
|
||||
* When building gcc using a Nix gcc, generated libraries link against
|
||||
the libraries of the latter:
|
||||
|
||||
$ ldd /nix/store/3b1d3995c4edbf026be5c73f66f69245-gcc-3.3.3/lib/libstdc++.so
|
||||
...
|
||||
libgcc_s.so.1 => /nix/store/1f19e61d1b7051f1131f78b41b2a0e7e-gcc-3.3.2/lib/libgcc_s.so.1 (0x400de000)
|
||||
(wrong! should be .../3b1d.../lib/libgcc_s...)
|
||||
...
|
||||
|
||||
|
||||
* Subtle problems can occur if the Nix store directory or one of its
|
||||
parents is a symlink. E.g., purity checks can barf:
|
||||
|
||||
impure path `/data/nix/store/099cd9aee7d056a9922fd6dd116a3f5c-gcc-3.3.3/bin/../lib/gcc-lib/i686-pc-linux-gnu/3.3.3/crtbegin.o' used in link
|
||||
|
||||
(This happened because /nix was a symlink to /data/nix.) Maybe we
|
||||
should disallow this entirely, since, exactly because it is
|
||||
perfectly legal for a builder to expand a symlink, we can end up
|
||||
with derivates referring to paths that existed in the build
|
||||
environment but not in the target environment.
|
||||
|
||||
Disallowing this can be highly inconvenient, since it makes it
|
||||
harder to move the Nix store to a different file system. (On Linux,
|
||||
`bind' mounts can help here.)
|
||||
|
||||
|
||||
* In libXt:
|
||||
|
||||
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include/X11 -g -O2 -c -o ActionHook.lo `test -f 'ActionHook.c' || echo './'`ActionHook.c
|
||||
mkdir .libs
|
||||
gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include/X11 -g -O2 -c ActionHook.c -fPIC -DPIC -o .libs/ActionHook.o
|
||||
In file included from IntrinsicI.h:55,
|
||||
from ActionHook.c:69:
|
||||
include/X11/IntrinsicP.h:54:27: X11/Intrinsic.h: No such file or directory
|
||||
|
||||
|
||||
* Then:
|
||||
|
||||
gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include -I./include/X11 -g -O2 -c ActionHook.c -fPIC -DPIC -o .libs/ActionHook.o
|
||||
In file included from IntrinsicI.h:55,
|
||||
from ActionHook.c:69:
|
||||
include/X11/IntrinsicP.h:202:25: X11/ObjectP.h: No such file or directory
|
||||
|
||||
(moved to include/X11; should edit include/Makefile.am)
|
||||
@@ -1,18 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
envpkgs="$freetype"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
tar xvfj $fonts || exit 1
|
||||
cd MPlayer-* || exit 1
|
||||
./configure --prefix=$out --with-win32libdir=$win32codecs \
|
||||
--with-reallibdir=$win32codecs \
|
||||
--disable-sdl --disable-esd --disable-xanim --disable-cdparanoia --disable-directfb \
|
||||
--disable-lirc --disable-svga --disable-libdv \
|
||||
--disable-vorbis --disable-png --disable-jpeg --disable-gif \
|
||||
--enable-runtime-cpudetection \
|
||||
|| exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
cp -p ../font-arial-iso-8859-1/font-arial-18-iso-8859-1/* $out/share/mplayer/font || exit 1
|
||||
@@ -1,20 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "MPlayer-0.91")
|
||||
|
||||
, ("build", Relative("MPlayer/MPlayer-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-0.91.tar.bz2")
|
||||
, ("md5", "bb09138564ddf954392d20dbc4b88ebd")
|
||||
]))
|
||||
|
||||
, ("fonts", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2")
|
||||
, ("md5", "1ecd31d17b51f16332b1fcc7da36b312")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
, ("freetype", IncludeFix("freetype/freetype.fix"))
|
||||
, ("win32codecs", IncludeFix("win32codecs/win32codecs.fix"))
|
||||
]
|
||||
)
|
||||
113
pkgs/README
Normal file
113
pkgs/README
Normal file
@@ -0,0 +1,113 @@
|
||||
* Classification scheme for packages
|
||||
|
||||
- many packages fall under several categories; what matters is the
|
||||
*primary* purpose of a package. For example, the libxml2 package
|
||||
builds both a library and some tools; but it's a library foremost,
|
||||
so it goes under ./development/libraries.
|
||||
|
||||
- when in doubt, refactor.
|
||||
|
||||
IF it's used to support SOFTWARE DEVELOPMENT:
|
||||
|
||||
IF it's a LIBRARY used by other packages:
|
||||
IF it's directly related to GTK:
|
||||
./development/libraries/gtk+
|
||||
ELSE
|
||||
./development/libraries
|
||||
(e.g., libxml2)
|
||||
ELSE IF it's a COMPILER:
|
||||
./development/compilers
|
||||
(e.g., gcc)
|
||||
ELSE IF it's an INTERPRETER:
|
||||
./development/interpreters
|
||||
ELSE IF it's a development TOOL (or set of):
|
||||
IF it's a PARSER GENERATOR (incl. lexers):
|
||||
./development/tools/parsing
|
||||
(e.g., bison, flex)
|
||||
ELSE IF it's a BUILD MANAGER:
|
||||
./development/tools/build-managers
|
||||
(e.g., gnumake
|
||||
ELSE
|
||||
./development/tools/misc
|
||||
(e.g., binutils)
|
||||
ELSE
|
||||
./development/misc
|
||||
|
||||
ELSE IF it's a TOOL (or set of):
|
||||
# a tool is a relatively *small* program, esp. one intented to be
|
||||
# used non-interactively
|
||||
|
||||
IF it's for NETWORKING:
|
||||
./tools/networking
|
||||
(e.g., wget)
|
||||
ELSE IF it's for TEXT PROCESSING:
|
||||
./tools/text
|
||||
(e.g., diffutils)
|
||||
ELSE IF it's a SYSTEM utility, i.e., something related or essential
|
||||
to the operation of a system:
|
||||
./tools/system
|
||||
(e.g., init)
|
||||
ELSE IF it's an ARCHIVER (which may include a compression function):
|
||||
./tools/archivers
|
||||
(e.g., zip, tar)
|
||||
ELSE IF it's a COMPRESSION program:
|
||||
./tools/compression
|
||||
(e.g., gzip, bzip2)
|
||||
ELSE
|
||||
./tools/misc
|
||||
|
||||
ELSE IF it's a SHELL:
|
||||
|
||||
./shells
|
||||
|
||||
ELSE IF it's a SERVER:
|
||||
|
||||
IF it's a HTTP server:
|
||||
./servers/http
|
||||
(e.g., apache)
|
||||
IF it's a X11 server:
|
||||
./servers/x11
|
||||
(e.g., xfree86)
|
||||
ELSE
|
||||
./servers/misc
|
||||
|
||||
ELSE IF it's a DESKTOP ENVIRONMENT (incl. WINDOW MANAGERS):
|
||||
|
||||
./desktops
|
||||
(e.g., kde, gnome, fvwm)
|
||||
|
||||
ELSE IF it's an APPLICATION:
|
||||
# a (typically large) program with a distinct user interface,
|
||||
# primarily used interactively
|
||||
|
||||
IF it's a VERSION MANAGEMENT system:
|
||||
./applications/version-management
|
||||
ELSE IF it's for VIDEO playback/etc:
|
||||
./applications/video
|
||||
ELSE IF it's for GRAPHICS viewing/editing/etc:
|
||||
./applications/graphics
|
||||
ELSE IF it's for NETWORKING:
|
||||
IF it's a MAILREADER:
|
||||
./applications/networking/mailreaders
|
||||
IF it's a NEWSREADER:
|
||||
./applications/networking/newsreaders
|
||||
ELSE
|
||||
./applications/networking/misc
|
||||
ELSE
|
||||
./applications/misc
|
||||
|
||||
ELSE IF it's DATA (i.e., doe not have a straight-forward executable semantics):
|
||||
|
||||
IF it's related to SGML/XML processing:
|
||||
IF it's a XML DTD:
|
||||
./data/sgml+xml/schemas/xml-dtd
|
||||
ELSE IF it's an XSLT stylesheet (okay, these are executable...):
|
||||
./data/sgml+xml/stylesheets/xslt
|
||||
|
||||
ELSE IF it's a GAME:
|
||||
|
||||
./games
|
||||
|
||||
ELSE:
|
||||
|
||||
./misc
|
||||
1
pkgs/STABLE
Normal file
1
pkgs/STABLE
Normal file
@@ -0,0 +1 @@
|
||||
1
|
||||
16
pkgs/TODO
Normal file
16
pkgs/TODO
Normal file
@@ -0,0 +1,16 @@
|
||||
* Bump freetype to 2.1.7 (but it breaks Pango 1.2.5).
|
||||
|
||||
* Patch development/tools/misc/libtool not to search standard
|
||||
directories for libraries (like setup.sh does now). [do we want
|
||||
this?]
|
||||
|
||||
* In setup.sh: add configureFlagsArray or something
|
||||
|
||||
* Inform freedesktop people that Xaw requires Xpm.
|
||||
|
||||
* After building gcc, filter out references to /tmp/nix... in
|
||||
.../lib/libsupc++.la and .../lib/libstdc++.la
|
||||
|
||||
* diffutils retains a dependency on coreutils/bin/pr; causes stdenv to
|
||||
depend on 2 copies of coreutils (the first one impure in
|
||||
stdenv-nix-linux!)
|
||||
1
pkgs/VERSION
Normal file
1
pkgs/VERSION
Normal file
@@ -0,0 +1 @@
|
||||
0.5
|
||||
@@ -1,11 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
envpkgs="$fontconfig"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd fcpackage*/Xft || exit 1
|
||||
./configure --prefix=$out --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
echo $envpkgs > $out/envpkgs || exit 1
|
||||
@@ -1,14 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "Xft-20021121")
|
||||
|
||||
, ("build", Relative("Xft/Xft-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "http://fontconfig.org/release/fcpackage.2_1.tar.gz")
|
||||
, ("md5", "2f2852c80924a9b5356c3037a471c1a1")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
, ("fontconfig", IncludeFix("fontconfig/fontconfig.fix"))
|
||||
]
|
||||
)
|
||||
9
pkgs/applications/editors/emacs/modes/nxml/builder.sh
Normal file
9
pkgs/applications/editors/emacs/modes/nxml/builder.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
mkdir -p $out/emacs/site-lisp || exit 1
|
||||
cd $out/emacs/site-lisp || exit 1
|
||||
tar xvfz $src || exit 1
|
||||
mv nxml-mode-*/* . || exit 1
|
||||
rmdir nxml-mode-*
|
||||
|
||||
exit 0
|
||||
8
pkgs/applications/editors/emacs/modes/nxml/default.nix
Normal file
8
pkgs/applications/editors/emacs/modes/nxml/default.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{stdenv, fetchurl}: stdenv.mkDerivation {
|
||||
name = "nxml-mode-20031031";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www.thaiopensource.com/download/nxml-mode-20031031.tar.gz;
|
||||
md5 = "4cbc32047183e6cc1b7a2757d1078bd2";
|
||||
};
|
||||
}
|
||||
17
pkgs/applications/graphics/gqview/default.nix
Normal file
17
pkgs/applications/graphics/gqview/default.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{stdenv, fetchurl, pkgconfig, gtk, libpng}:
|
||||
|
||||
assert pkgconfig != null && gtk != null && libpng != null;
|
||||
# Note that we cannot just copy gtk's png attribute, since gtk might
|
||||
# not be linked against png.
|
||||
# !!! assert libpng == gtk.libpng;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gqview-1.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://heanet.dl.sourceforge.net/sourceforge/gqview/gqview-1.4.1.tar.gz;
|
||||
md5 = "d963fbb878d78e8ebf78ea8c18caa72f";
|
||||
};
|
||||
|
||||
buildInputs = [pkgconfig gtk libpng];
|
||||
}
|
||||
5
pkgs/diffutils/diffutils-build.sh → pkgs/applications/misc/hello/builder.sh
Executable file → Normal file
5
pkgs/diffutils/diffutils-build.sh → pkgs/applications/misc/hello/builder.sh
Executable file → Normal file
@@ -1,9 +1,8 @@
|
||||
#! /bin/sh
|
||||
|
||||
buildinputs="$perl"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd diffutils-* || exit 1
|
||||
cd hello-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
11
pkgs/applications/misc/hello/default.nix
Normal file
11
pkgs/applications/misc/hello/default.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{stdenv, fetchurl, perl}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "hello-2.1.1";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.nluug.nl/pub/gnu/hello/hello-2.1.1.tar.gz;
|
||||
md5 = "70c9ccf9fac07f762c24f2df2290784d";
|
||||
};
|
||||
perl = perl;
|
||||
}
|
||||
10
pkgs/applications/misc/xchm/default.nix
Normal file
10
pkgs/applications/misc/xchm/default.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{stdenv, fetchurl, wxGTK, chmlib}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "xchm-0.9.1";
|
||||
src = fetchurl {
|
||||
url = http://belnet.dl.sourceforge.net/sourceforge/xchm/xchm-0.9.1.tar.gz;
|
||||
md5 = "5ba671e09e4c3ac46ffb5ce9d2c985eb";
|
||||
};
|
||||
buildInputs = [wxGTK chmlib];
|
||||
}
|
||||
23
pkgs/firebird/firebird-build.sh → pkgs/applications/networking/browsers/firefox/builder.sh
Executable file → Normal file
23
pkgs/firebird/firebird-build.sh → pkgs/applications/networking/browsers/firefox/builder.sh
Executable file → Normal file
@@ -1,13 +1,8 @@
|
||||
#! /bin/sh
|
||||
. $stdenv/setup
|
||||
|
||||
envpkgs="$gtk $libIDL"
|
||||
. $stdenv/setup || exit 1
|
||||
export PATH=$pkgconfig/bin:$perl/bin:$zip/bin:$unzip/bin:$PATH
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd mozilla || exit 1
|
||||
|
||||
cat > .mozconfig <<EOF
|
||||
preConfigure() {
|
||||
cat > .mozconfig <<EOF
|
||||
export MOZ_PHOENIX=1
|
||||
mk_add_options MOZ_PHOENIX=1
|
||||
ac_add_options --enable-crypto
|
||||
@@ -23,10 +18,12 @@ ac_add_options --enable-xft
|
||||
ac_add_options --enable-swg
|
||||
ac_add_options --enable-strip
|
||||
ac_add_options --enable-default-toolkit=gtk2
|
||||
ac_add_options --disable-pedantic
|
||||
EOF
|
||||
echo "ac_add_options --prefix=$out" >> .mozconfig
|
||||
echo "ac_add_options --prefix=$out" >> .mozconfig
|
||||
}
|
||||
preConfigure=preConfigure
|
||||
|
||||
./configure || exit 1
|
||||
make -f client.mk build || exit 1
|
||||
make install || exit 1
|
||||
|
||||
makeFlags="-f client.mk build"
|
||||
|
||||
genericBuild
|
||||
19
pkgs/applications/networking/browsers/firefox/default.nix
Normal file
19
pkgs/applications/networking/browsers/firefox/default.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk, perl, zip, libIDL
|
||||
}:
|
||||
|
||||
assert pkgconfig != null && gtk != null && perl != null
|
||||
&& zip != null && libIDL != null;
|
||||
|
||||
# !!! assert libIDL.glib == gtk.glib;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "firefox-0.8";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/0.8/firefox-source-0.8.tar.bz2;
|
||||
md5 = "cdc85152f4219bf3e3f1a8dc46e04654";
|
||||
};
|
||||
|
||||
buildInputs = [pkgconfig gtk perl zip libIDL];
|
||||
}
|
||||
14
pkgs/applications/networking/mailreaders/sylpheed/builder.sh
Normal file
14
pkgs/applications/networking/mailreaders/sylpheed/builder.sh
Normal file
@@ -0,0 +1,14 @@
|
||||
buildInputs="$gtk $gdkpixbuf $openssl"
|
||||
. $stdenv/setup
|
||||
|
||||
if test $sslSupport; then
|
||||
configureFlags="--enable-ssl $extraflags"
|
||||
fi
|
||||
|
||||
if test $imageSupport; then
|
||||
configureFlags="--enable-gdk-pixbuf $extraflags"
|
||||
else
|
||||
configureFlags="--disable-gdk-pixbuf --disable-imlibtest $extraflags"
|
||||
fi
|
||||
|
||||
genericBuild
|
||||
@@ -0,0 +1,24 @@
|
||||
{ sslSupport ? true
|
||||
, imageSupport ? true
|
||||
, stdenv, fetchurl, gtk, openssl ? null, gdkpixbuf ? null
|
||||
}:
|
||||
|
||||
assert gtk != null;
|
||||
assert sslSupport -> openssl != null;
|
||||
assert imageSupport -> gdkpixbuf != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "sylpheed-0.9.10";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://sylpheed.good-day.net/sylpheed/sylpheed-0.9.10.tar.bz2;
|
||||
md5 = "4e2242436de3cf3977a1b25b1ddc4930";
|
||||
};
|
||||
|
||||
inherit sslSupport imageSupport;
|
||||
|
||||
inherit gtk;
|
||||
openssl = if sslSupport then openssl else null;
|
||||
gdkpixbuf = if imageSupport then gdkpixbuf else null;
|
||||
}
|
||||
25
pkgs/applications/networking/newsreaders/pan/default.nix
Normal file
25
pkgs/applications/networking/newsreaders/pan/default.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{ spellChecking ? true
|
||||
, stdenv, fetchurl, pkgconfig, gtk, gtkspell ? null, gnet
|
||||
, libxml2, perl, pcre
|
||||
}:
|
||||
|
||||
assert pkgconfig != null && gtk != null && gnet != null
|
||||
&& libxml2 != null && perl != null && pcre != null;
|
||||
assert spellChecking -> gtkspell != null /* !!! && gtk == gtkspell.gtk */;
|
||||
# !!! assert gtk.glib == gnet.glib;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "pan-0.14.2.91";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://pan.rebelbase.com/download/releases/0.14.2.91/SOURCE/pan-0.14.2.91.tar.bz2;
|
||||
md5 = "4770d899a1c1ba968ce96bc5aeb07b62";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig gtk gnet libxml2 perl pcre
|
||||
(if spellChecking then gtkspell else null)
|
||||
];
|
||||
|
||||
inherit spellChecking stdenv;
|
||||
}
|
||||
35
pkgs/applications/version-management/subversion/builder.sh
Normal file
35
pkgs/applications/version-management/subversion/builder.sh
Normal file
@@ -0,0 +1,35 @@
|
||||
buildInputs="$openssl $db4 $httpd $swig $python $expat"
|
||||
. $stdenv/setup
|
||||
|
||||
configureFlags="--without-gdbm --disable-static"
|
||||
|
||||
if test "$localServer"; then
|
||||
configureFlags="--with-berkeley-db=$db4 $configureFlags"
|
||||
fi
|
||||
|
||||
if test "$sslSupport"; then
|
||||
configureFlags="--with-ssl --with-libs=$openssl $configureFlags"
|
||||
fi
|
||||
|
||||
if test "$httpServer"; then
|
||||
configureFlags="--with-apxs=$httpd/bin/apxs --with-apr=$httpd --with-apr-util=$httpd $configureFlags"
|
||||
makeFlags="APACHE_LIBEXECDIR=$out/modules $makeFlags"
|
||||
fi
|
||||
|
||||
if test "$swigBindings"; then
|
||||
configureFlags="--with-swig=$swig $configureFlags"
|
||||
fi
|
||||
|
||||
installFlags="$makeFlags"
|
||||
|
||||
|
||||
postInstall() {
|
||||
if test "$swigBindings"; then
|
||||
make swig-py
|
||||
make install-swig-py
|
||||
fi
|
||||
}
|
||||
postInstall=postInstall
|
||||
|
||||
|
||||
genericBuild
|
||||
31
pkgs/applications/version-management/subversion/default.nix
Normal file
31
pkgs/applications/version-management/subversion/default.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ localServer ? false
|
||||
, httpServer ? false
|
||||
, sslSupport ? false
|
||||
, swigBindings ? false
|
||||
, stdenv, fetchurl
|
||||
, openssl ? null, httpd ? null, db4 ? null, expat, swig ? null
|
||||
}:
|
||||
|
||||
assert expat != null;
|
||||
assert localServer -> db4 != null;
|
||||
assert httpServer -> httpd != null && httpd.expat == expat;
|
||||
assert sslSupport -> openssl != null && (httpServer -> httpd.openssl == openssl);
|
||||
assert swigBindings -> swig != null && swig.pythonSupport;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "subversion-1.0.2";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://subversion.tigris.org/tarballs/subversion-1.0.2.tar.bz2;
|
||||
md5 = "246ffcc67ca629ae523956c4c1a67cce";
|
||||
};
|
||||
|
||||
openssl = if sslSupport then openssl else null;
|
||||
httpd = if httpServer then httpd else null;
|
||||
db4 = if localServer then db4 else null;
|
||||
swig = if swigBindings then swig else null;
|
||||
python = if swigBindings then swig.python else null;
|
||||
|
||||
inherit expat localServer httpServer sslSupport swigBindings;
|
||||
}
|
||||
22
pkgs/applications/video/MPlayer/builder.sh
Normal file
22
pkgs/applications/video/MPlayer/builder.sh
Normal file
@@ -0,0 +1,22 @@
|
||||
buildInputs="$x11 $freetype $zlib $alsa"
|
||||
. $stdenv/setup
|
||||
|
||||
postUnpack() {
|
||||
unpackFile $fonts
|
||||
}
|
||||
postUnpack=postUnpack
|
||||
|
||||
configureFlags="\
|
||||
--with-win32libdir=$win32codecs \
|
||||
--with-reallibdir=$win32codecs \
|
||||
--disable-sdl --disable-esd --disable-xanim --disable-cdparanoia --disable-directfb \
|
||||
--disable-lirc --disable-svga --disable-libdv \
|
||||
--disable-vorbis --disable-png --disable-jpeg --disable-gif \
|
||||
--enable-runtime-cpudetection"
|
||||
|
||||
postInstall() {
|
||||
cp -p ../font-arial-iso-8859-1/font-arial-18-iso-8859-1/* $out/share/mplayer/font
|
||||
}
|
||||
postInstall=postInstall
|
||||
|
||||
genericBuild
|
||||
26
pkgs/applications/video/MPlayer/default.nix
Normal file
26
pkgs/applications/video/MPlayer/default.nix
Normal file
@@ -0,0 +1,26 @@
|
||||
{ alsaSupport ? false
|
||||
, stdenv, fetchurl, x11, freetype, zlib, alsa ? null}:
|
||||
|
||||
assert x11 != null && freetype != null;
|
||||
assert alsaSupport -> alsa != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "MPlayer-1.0pre3";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www2.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre3.tar.bz2;
|
||||
md5 = "998becb79417c6a14d15c07e85188b82";
|
||||
};
|
||||
fonts = fetchurl {
|
||||
url = http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2;
|
||||
md5 = "1ecd31d17b51f16332b1fcc7da36b312";
|
||||
};
|
||||
|
||||
win32codecs = (import ./win32codecs) {
|
||||
inherit stdenv fetchurl;
|
||||
};
|
||||
|
||||
alsa = if alsaSupport then alsa else null;
|
||||
inherit alsaSupport x11 freetype zlib;
|
||||
}
|
||||
7
pkgs/applications/video/MPlayer/win32codecs/builder.sh
Normal file
7
pkgs/applications/video/MPlayer/win32codecs/builder.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
. $stdenv/setup
|
||||
|
||||
mkdir $out
|
||||
cd $out
|
||||
tar xvfj $src
|
||||
mv extralite/* .
|
||||
rmdir extralite
|
||||
8
pkgs/applications/video/MPlayer/win32codecs/default.nix
Normal file
8
pkgs/applications/video/MPlayer/win32codecs/default.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{stdenv, fetchurl}: stdenv.mkDerivation {
|
||||
name = "win32codecs-1";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www2.mplayerhq.hu/MPlayer/releases/codecs/extralite.tar.bz2;
|
||||
md5 = "4748ecae87f71e8bda9cb2e2a9bd30b4";
|
||||
};
|
||||
}
|
||||
9
pkgs/applications/video/mplayerplug-in/builder.sh
Normal file
9
pkgs/applications/video/mplayerplug-in/builder.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
buildinputs="$x11"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd mplayer* || exit 1
|
||||
./configure || exit 1
|
||||
make || exit 1
|
||||
mkdir -p $out/lib/mozilla/plugins || exit 1
|
||||
cp mplayerplug-in.so $out/lib/mozilla/plugins || exit 1
|
||||
15
pkgs/applications/video/mplayerplug-in/default.nix
Normal file
15
pkgs/applications/video/mplayerplug-in/default.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{stdenv, fetchurl, x11}:
|
||||
|
||||
assert x11 != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "mplayerplug-in-1.0pre2";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://heanet.dl.sourceforge.net/sourceforge/mplayerplug-in/mplayerplug-in-1.0pre2.tar.gz;
|
||||
md5 = "1a6eb243989c143984bb1aac63b5282e";
|
||||
};
|
||||
|
||||
x11 = x11;
|
||||
}
|
||||
23
pkgs/applications/video/vlc/default.nix
Normal file
23
pkgs/applications/video/vlc/default.nix
Normal file
@@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchurl, x11, wxGTK, libdvdcss, libdvdplay
|
||||
, mpeg2dec, a52dec, libmad, alsa}:
|
||||
|
||||
assert x11 != null && wxGTK != null && libdvdcss != null
|
||||
&& libdvdplay != null && mpeg2dec != null && a52dec != null
|
||||
&& libmad != null && alsa != null;
|
||||
assert libdvdplay.libdvdread.libdvdcss == libdvdcss;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "vlc-0.7.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://download.videolan.org/pub/videolan/vlc/0.7.1/vlc-0.7.1.tar.gz;
|
||||
md5 = "faa5e3162a3e9b3a3d8c3dcc06f70911";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
x11 wxGTK libdvdcss libdvdplay libdvdplay.libdvdread
|
||||
mpeg2dec a52dec libmad alsa
|
||||
];
|
||||
|
||||
configureFlags = "--disable-ffmpeg --enable-alsa";
|
||||
}
|
||||
6
pkgs/applications/video/zapping/builder.sh
Normal file
6
pkgs/applications/video/zapping/builder.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
. $stdenv/setup
|
||||
|
||||
# !!! hack - `make install' tries to setuid to root
|
||||
installFlags="ZSFB_OWNER=`id -u` ZSFB_GROUP=`id -g`"
|
||||
|
||||
genericBuild
|
||||
36
pkgs/applications/video/zapping/default.nix
Normal file
36
pkgs/applications/video/zapping/default.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ teletextSupport ? true
|
||||
, jpegSupport ? true
|
||||
, pngSupport ? true
|
||||
, stdenv, fetchurl, pkgconfig, perl, python, x11, libgnomeui
|
||||
, libglade, scrollkeeper, esound, gettext
|
||||
, zvbi ? null, libjpeg ? null, libpng ? null }:
|
||||
|
||||
assert pkgconfig != null && perl != null && python != null &&
|
||||
x11 != null && libgnomeui != null && libglade != null &&
|
||||
scrollkeeper != null && esound != null && gettext != null;
|
||||
|
||||
assert teletextSupport -> zvbi != null && zvbi.pngSupport
|
||||
/* !!! && pngSupport && zvbi.libpng == libpng */;
|
||||
|
||||
assert jpegSupport -> libjpeg != null;
|
||||
assert pngSupport -> libpng != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "zapping-0.7cvs6";
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://heanet.dl.sourceforge.net/sourceforge/zapping/zapping-0.7cvs6.tar.bz2;
|
||||
md5 = "cdedc0088c70f4520c37066ec05cb996";
|
||||
};
|
||||
|
||||
inherit teletextSupport jpegSupport pngSupport;
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig perl python x11 libgnomeui
|
||||
libglade scrollkeeper esound gettext
|
||||
(if teletextSupport then zvbi else null)
|
||||
(if jpegSupport then libjpeg else null)
|
||||
(if pngSupport then libpng else null)
|
||||
];
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
#! /bin/sh
|
||||
set -e
|
||||
$pkgbuild --with-aterm=$aterm --with-sdf=$sdf2 --with-srts=$srts --with-xtc=$xtc
|
||||
@@ -1,19 +0,0 @@
|
||||
Function(["rev"],
|
||||
Package(
|
||||
[ ("name", "asfix-tools")
|
||||
|
||||
, ("build", Relative("asfix-tools/asfix-tools-build.sh"))
|
||||
, ("pkgbuild", Relative("strategoxt/pkg-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("strategoxt/fetchsvn.fix"),
|
||||
[ ("name", "asfix-tools"), ("rev", Var("rev"))]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
, ("aterm", IncludeFix("aterm/aterm.fix"))
|
||||
, ("sdf2", IncludeFix("sdf2/sdf2.fix"))
|
||||
, ("autoxt", App(IncludeFix("autoxt/autoxt.fix"),[("rev",Var("rev"))]))
|
||||
, ("srts", App(IncludeFix("srts/srts.fix"),[("rev",Var("rev"))]))
|
||||
, ("xtc", App(IncludeFix("xtc/xtc.fix"),[("rev",Var("rev"))]))
|
||||
]
|
||||
)
|
||||
)
|
||||
@@ -1,10 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd aterm-* || exit 1
|
||||
./configure --prefix=$out --with-gcc || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
strip -S $out/lib/*.a || exit 1
|
||||
@@ -1,12 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "aterm-2.0")
|
||||
, ("build", Relative("aterm/aterm-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "http://www.cwi.nl/projects/MetaEnv/aterm/aterm-2.0.tar.gz")
|
||||
, ("md5", "853474e4bcf4a85f7d38a0676b36bded")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
]
|
||||
)
|
||||
@@ -1,13 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
envpkgs=$glib
|
||||
. $stdenv/setup || exit 1
|
||||
export PATH=$pkgconfig/bin:$perl/bin:$PATH
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd atk-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
|
||||
echo $envpkgs > $out/envpkgs || exit 1
|
||||
@@ -1,16 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "atk-1.2.4")
|
||||
|
||||
, ("build", Relative("atk/atk-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://ftp.gtk.org/pub/gtk/v2.2/atk-1.2.4.tar.bz2")
|
||||
, ("md5", "2d6d50df31abe0e8892b5d3e7676a02d")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
, ("pkgconfig", IncludeFix("pkgconfig/pkgconfig.fix"))
|
||||
, ("glib", IncludeFix("glib/glib.fix"))
|
||||
, ("perl", IncludeFix("perl/perl.fix"))
|
||||
]
|
||||
)
|
||||
@@ -1,3 +0,0 @@
|
||||
#! /bin/sh
|
||||
set -e
|
||||
$pkgbuild
|
||||
@@ -1,13 +0,0 @@
|
||||
Function(["rev"],
|
||||
Package(
|
||||
[ ("name", "autoxt")
|
||||
|
||||
, ("build", Relative("strategoxt/pkg-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("strategoxt/fetchsvn.fix"),
|
||||
[ ("name", "autoxt"), ("rev", Var("rev"))]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
]
|
||||
)
|
||||
)
|
||||
@@ -1,25 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
export PATH=/bin:/usr/bin
|
||||
|
||||
mkdir $out || exit 1
|
||||
mkdir $out/bin || exit 1
|
||||
|
||||
sed \
|
||||
-e s^@OUT\@^$out^g \
|
||||
< $setup > $out/setup || exit 1
|
||||
|
||||
sed \
|
||||
-e 's^@GCC\@^$NIX_CC^g' \
|
||||
< $gccwrapper > $out/bin/gcc || exit 1
|
||||
chmod +x $out/bin/gcc || exit 1
|
||||
ln -s gcc $out/bin/cc || exit 1
|
||||
|
||||
sed \
|
||||
-e 's^@GCC\@^$NIX_CXX^g' \
|
||||
< $gccwrapper > $out/bin/g++ || exit 1
|
||||
chmod +x $out/bin/g++ || exit 1
|
||||
ln -s g++ $out/bin/c++ || exit 1
|
||||
|
||||
cp $ldwrapper $out/bin/ld || exit 1
|
||||
chmod +x $out/bin/ld || exit 1
|
||||
@@ -1,9 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "baseenv")
|
||||
, ("build", Relative("baseenv/baseenv-build.sh"))
|
||||
|
||||
, ("setup", Relative("baseenv/setup.sh"))
|
||||
, ("gccwrapper", Relative("baseenv/gcc-wrapper.sh"))
|
||||
, ("ldwrapper", Relative("baseenv/ld-wrapper.sh"))
|
||||
]
|
||||
)
|
||||
@@ -1,42 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
IFS=
|
||||
|
||||
justcompile=0
|
||||
for i in $@; do
|
||||
if test "$i" == "-c"; then
|
||||
justcompile=1
|
||||
elif test "$i" == "-S"; then
|
||||
justcompile=1
|
||||
elif test "$i" == "-E"; then
|
||||
justcompile=1
|
||||
elif test "$i" == "-E"; then
|
||||
justcompile=1
|
||||
elif test "$i" == "-M"; then
|
||||
justcompile=1
|
||||
elif test "$i" == "-MM"; then
|
||||
justcompile=1
|
||||
fi
|
||||
done
|
||||
|
||||
IFS=" "
|
||||
extra=($NIX_CFLAGS_COMPILE)
|
||||
if test "$justcompile" != "1"; then
|
||||
extra=(${extra[@]} $NIX_CFLAGS_LINK)
|
||||
for i in $NIX_LDFLAGS; do
|
||||
extra=(${extra[@]} "-Wl,$i")
|
||||
done
|
||||
if test "$NIX_STRIP_DEBUG" == "1"; then
|
||||
extra=(${extra[@]} -g0 -Wl,-s)
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$NIX_DEBUG" == "1"; then
|
||||
echo "extra flags to @GCC@:" >&2
|
||||
for i in ${extra[@]}; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
fi
|
||||
|
||||
IFS=
|
||||
exec @GCC@ $@ ${extra[@]}
|
||||
@@ -1,17 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
IFS=" "
|
||||
extra=($NIX_CFLAGS_LINK $NIX_LDFLAGS)
|
||||
if test "$NIX_STRIP_DEBUG" == "1"; then
|
||||
extra=(${extra[@]} -s)
|
||||
fi
|
||||
|
||||
if test "$NIX_DEBUG" == "1"; then
|
||||
echo "extra flags to @LD@:" >&2
|
||||
for i in ${extra[@]}; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
fi
|
||||
|
||||
IFS=
|
||||
exec $NIX_LD $@ ${extra[@]}
|
||||
@@ -1,40 +0,0 @@
|
||||
# Add the directory containing the GCC wrappers to the PATH.
|
||||
export PATH=@OUT@/bin:$PATH
|
||||
|
||||
# Recursively add all envpkgs to the relevant environment variables.
|
||||
addtoenv()
|
||||
{
|
||||
envpkgs="$envpkgs $1"
|
||||
|
||||
if test -d $1/bin; then
|
||||
export PATH=$1/bin:$PATH
|
||||
fi
|
||||
|
||||
if test -d $1/lib; then
|
||||
export NIX_CFLAGS_LINK="-L$1/lib $NIX_CFLAGS_LINK"
|
||||
export NIX_LDFLAGS="-rpath $1/lib $NIX_LDFLAGS"
|
||||
fi
|
||||
|
||||
if test -d $1/lib/pkgconfig; then
|
||||
export PKG_CONFIG_PATH=$1/lib/pkgconfig:$PKG_CONFIG_PATH
|
||||
fi
|
||||
|
||||
if test -f $1/envpkgs; then
|
||||
for i in $(cat $1/envpkgs); do
|
||||
addtoenv $i
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
oldenvpkgs=$envpkgs
|
||||
envpkgs=
|
||||
|
||||
for i in $oldenvpkgs; do
|
||||
addtoenv $i
|
||||
done
|
||||
|
||||
# Add the output as an rpath.
|
||||
export NIX_LDFLAGS="-rpath $out/lib $NIX_LDFLAGS"
|
||||
|
||||
# Strip debug information by default.
|
||||
export NIX_STRIP_DEBUG=1
|
||||
@@ -1,10 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd bash-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
(cd $out/bin; ln -s bash sh) || exit 1
|
||||
@@ -1,13 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "bash-2.05b")
|
||||
|
||||
, ("build", Relative("bash/bash-build.sh"))
|
||||
|
||||
, ("src", Call(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://ftp.nluug.nl/pub/gnu/bash/bash-2.05b.tar.gz")
|
||||
, ("md5", "5238251b4926d778dfe162f6ce729733")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv-linux/stdenv-nativetools.fix"))
|
||||
]
|
||||
)
|
||||
@@ -1,15 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd binutils-* || exit 1
|
||||
|
||||
# Clear the default library search path.
|
||||
echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt || exit 1
|
||||
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
|
||||
strip -S $out/lib/*.a || exit 1
|
||||
@@ -1,13 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "binutils-2.14")
|
||||
|
||||
, ("build", Relative("binutils/binutils-build.sh"))
|
||||
|
||||
, ("src", Call(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://ftp.nluug.nl/pub/gnu/binutils/binutils-2.14.tar.bz2")
|
||||
, ("md5", "2da8def15d28af3ec6af0982709ae90a")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv-linux/stdenv-nativetools.fix"))
|
||||
]
|
||||
)
|
||||
@@ -1,10 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
export PATH=$m4/bin:$PATH
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd bison-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
@@ -1,15 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "bison-1.875")
|
||||
|
||||
, ("build", Relative("bison/bison-build.sh"))
|
||||
|
||||
, ("src", Call(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://ftp.nluug.nl/pub/gnu/bison/bison-1.875.tar.bz2")
|
||||
, ("md5", "b7f8027b249ebd4dd0cc948943a71af0")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
, ("m4", IncludeFix("gnum4/gnum4.fix"))
|
||||
]
|
||||
)
|
||||
|
||||
11
pkgs/build-support/fetchfile/builder.sh
Normal file
11
pkgs/build-support/fetchfile/builder.sh
Normal file
@@ -0,0 +1,11 @@
|
||||
. $stdenv/setup
|
||||
|
||||
echo "copying $url into $out..."
|
||||
|
||||
cp "$pathname" "$out" || exit 1
|
||||
|
||||
actual=$(md5sum -b $out | cut -c1-32)
|
||||
if test "$actual" != "$md5"; then
|
||||
echo "hash is $actual, expected $md5"
|
||||
exit 1
|
||||
fi
|
||||
7
pkgs/build-support/fetchfile/default.nix
Normal file
7
pkgs/build-support/fetchfile/default.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{stdenv}: {pathname, md5}: stdenv.mkDerivation {
|
||||
name = baseNameOf (toString url);
|
||||
builder = ./builder.sh;
|
||||
pathname = pathname;
|
||||
md5 = md5;
|
||||
id = md5;
|
||||
}
|
||||
19
pkgs/build-support/fetchsvn/builder.sh
Normal file
19
pkgs/build-support/fetchsvn/builder.sh
Normal file
@@ -0,0 +1,19 @@
|
||||
. $stdenv/setup
|
||||
|
||||
header "exporting $url (r$rev) into $out"
|
||||
|
||||
prefetch=$(dirname $out)/svn-checkout-tmp-$md5
|
||||
echo $prefetch
|
||||
if test -e "$prefetch"; then
|
||||
mv $prefetch $out
|
||||
else
|
||||
svn export -r "$rev" "$url" $out
|
||||
fi
|
||||
|
||||
actual=$(nix-hash $out)
|
||||
if test "$actual" != "$md5"; then
|
||||
echo "hash is $actual, expected $md5" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
stopNest
|
||||
9
pkgs/build-support/fetchsvn/default.nix
Normal file
9
pkgs/build-support/fetchsvn/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{stdenv, subversion, nix}: {url, rev ? "HEAD", md5}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "svn-export";
|
||||
builder = ./builder.sh;
|
||||
buildInputs = [subversion nix];
|
||||
id = md5;
|
||||
inherit url rev md5;
|
||||
}
|
||||
47
pkgs/build-support/fetchsvn/nix-prefetch-svn
Executable file
47
pkgs/build-support/fetchsvn/nix-prefetch-svn
Executable file
@@ -0,0 +1,47 @@
|
||||
#! /bin/sh -e
|
||||
|
||||
url=$1
|
||||
rev=$2
|
||||
|
||||
if test -z "$url"; then
|
||||
echo "syntax: nix-prefetch-svn URL [REVISION]" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
test -n "$rev" || rev="HEAD"
|
||||
|
||||
# !!! hacky; we should have a way to query the location of the store.
|
||||
if storeDir=$(which nix-store); then
|
||||
storeDir=$(dirname $(dirname "$storeDir"))/store
|
||||
else
|
||||
storeDir=/nix/store
|
||||
fi
|
||||
|
||||
# !!! race? should be relatively safe, `svn export' barfs if $tmpPath exists.
|
||||
tmpPath1=$storeDir/svn-checkout-tmp-$$
|
||||
|
||||
# Perform the checkout.
|
||||
svn export -r "$rev" "$url" $tmpPath1 >&2
|
||||
|
||||
# Compute the hash.
|
||||
hash=$(nix-hash $tmpPath1)
|
||||
echo "hash is $hash" >&2
|
||||
|
||||
# Rename it so that the fetchsvn builder can find it.
|
||||
tmpPath2=$storeDir/svn-checkout-tmp-$hash
|
||||
test -e $tmpPath2 || mv $tmpPath1 $tmpPath2 # !!! race
|
||||
|
||||
# Create a Nix expression that does a fetchsvn.
|
||||
nixExpr=$(dirname $(readlink -f $0))/../../system/i686-linux.nix
|
||||
storeExpr=$( \
|
||||
echo "(import $nixExpr).fetchsvn {url=\"$url\"; rev=\"$rev\"; md5=\"$hash\";}" \
|
||||
| nix-instantiate -)
|
||||
|
||||
# Realise it.
|
||||
finalPath=$(nix-store -qnB --force-realise $storeExpr)
|
||||
|
||||
echo "path is $finalPath" >&2
|
||||
|
||||
rm -rf $tmpPath2 || true
|
||||
|
||||
echo $hash
|
||||
13
pkgs/build-support/fetchurl/builder.sh
Normal file
13
pkgs/build-support/fetchurl/builder.sh
Normal file
@@ -0,0 +1,13 @@
|
||||
. $stdenv/setup
|
||||
|
||||
header "downloading $out from $url"
|
||||
|
||||
curl --fail --location --max-redirs 20 "$url" > "$out"
|
||||
|
||||
actual=$(md5sum -b "$out" | cut -c1-32)
|
||||
if test "$actual" != "$md5"; then
|
||||
echo "hash is $actual, expected $md5"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
stopNest
|
||||
11
pkgs/build-support/fetchurl/default.nix
Normal file
11
pkgs/build-support/fetchurl/default.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{stdenv, curl}: {url, md5}:
|
||||
|
||||
# Note that `curl' may be `null', in case of the native stdenv.
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = baseNameOf (toString url);
|
||||
builder = ./builder.sh;
|
||||
buildInputs = [curl];
|
||||
id = md5;
|
||||
inherit url md5;
|
||||
}
|
||||
83
pkgs/build-support/gcc-wrapper/builder.sh
Normal file
83
pkgs/build-support/gcc-wrapper/builder.sh
Normal file
@@ -0,0 +1,83 @@
|
||||
. $stdenv/setup
|
||||
|
||||
|
||||
# Force gcc to use ld-wrapper.sh when calling ld.
|
||||
cflagsCompile="-B$out/bin"
|
||||
|
||||
if test -z "$nativeGlibc"; then
|
||||
# The "-B$glibc/lib" flag is a quick hack to force gcc to link
|
||||
# against the crt1.o from our own glibc, rather than the one in
|
||||
# /usr/lib. The real solution is of course to prevent those paths
|
||||
# from being used by gcc in the first place.
|
||||
cflagsCompile="$cflagsCompile -B$glibc/lib -isystem $glibc/include"
|
||||
ldflags="$ldflags -L$glibc/lib -dynamic-linker $glibc/lib/ld-linux.so.2"
|
||||
fi
|
||||
|
||||
if test -n "$nativeTools"; then
|
||||
gccPath="$nativePrefix/bin"
|
||||
ldPath="$nativePrefix/bin"
|
||||
else
|
||||
ldflags="$ldflags -L$gcc/lib"
|
||||
gccPath="$gcc/bin"
|
||||
ldPath="$binutils/bin"
|
||||
fi
|
||||
|
||||
|
||||
mkdir $out
|
||||
mkdir $out/bin
|
||||
|
||||
|
||||
mkGccWrapper () {
|
||||
local dst=$1
|
||||
local src=$2
|
||||
|
||||
if ! test -f "$src"; then
|
||||
echo "$src does not exist (skipping)"
|
||||
return
|
||||
fi
|
||||
|
||||
sed \
|
||||
-e "s^@gcc@^$src^g" \
|
||||
-e "s^@out@^$out^g" \
|
||||
-e "s^@shell@^$shell^g" \
|
||||
< $gccWrapper > $dst
|
||||
chmod +x $dst
|
||||
}
|
||||
|
||||
mkGccWrapper $out/bin/gcc $gccPath/gcc
|
||||
ln -s gcc $out/bin/cc
|
||||
|
||||
mkGccWrapper $out/bin/g++ $gccPath/g++
|
||||
ln -s g++ $out/bin/c++
|
||||
|
||||
mkGccWrapper $out/bin/g77 $gccPath/g77
|
||||
ln -s g77 $out/bin/f77
|
||||
|
||||
|
||||
sed \
|
||||
-e "s^@out@^$out^g" \
|
||||
-e "s^@ldflags@^$ldflags^g" \
|
||||
-e "s^@ld@^$ldPath/ld^g" \
|
||||
-e "s^@shell@^$shell^g" \
|
||||
< $ldWrapper > $out/bin/ld
|
||||
chmod +x $out/bin/ld
|
||||
|
||||
|
||||
mkdir $out/nix-support
|
||||
test -n "$gcc" && echo $gcc > $out/nix-support/orig-gcc
|
||||
test -n "$glibc" && echo $glibc > $out/nix-support/orig-glibc
|
||||
|
||||
cat > $out/nix-support/add-flags <<EOF
|
||||
export NIX_CFLAGS_COMPILE="$cflagsCompile \$NIX_CFLAGS_COMPILE"
|
||||
export NIX_CFLAGS_LINK="$cflagsLink \$NIX_CFLAGS_LINK"
|
||||
export NIX_LDFLAGS="$ldflags \$NIX_LDFLAGS"
|
||||
export NIX_GLIBC_FLAGS_SET=1
|
||||
EOF
|
||||
|
||||
sed \
|
||||
-e "s^@gcc@^$gcc^g" \
|
||||
-e "s^@binutils@^$binutils^g" \
|
||||
-e "s^@glibc@^$glibc^g" \
|
||||
< $setupHook > $out/nix-support/setup-hook
|
||||
|
||||
cp -p $utils $out/nix-support/utils
|
||||
27
pkgs/build-support/gcc-wrapper/default.nix
Normal file
27
pkgs/build-support/gcc-wrapper/default.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
# The Nix `gcc' stdenv.mkDerivation is not directly usable, since it doesn't
|
||||
# know where the C library and standard header files are. Therefore
|
||||
# the compiler produced by that package cannot be installed directly
|
||||
# in a user environment and used from the command line. This
|
||||
# stdenv.mkDerivation provides a wrapper that sets up the right environment
|
||||
# variables so that the compiler and the linker just "work".
|
||||
|
||||
{ name, stdenv, nativeTools, nativeGlibc, nativePrefix ? ""
|
||||
, gcc ? null, glibc ? null, binutils ? null, shell ? ""
|
||||
}:
|
||||
|
||||
assert nativeTools -> nativePrefix != "";
|
||||
assert !nativeTools -> gcc != null && binutils != null;
|
||||
assert !nativeGlibc -> glibc != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
builder = ./builder.sh;
|
||||
setupHook = ./setup-hook.sh;
|
||||
gccWrapper = ./gcc-wrapper.sh;
|
||||
ldWrapper = ./ld-wrapper.sh;
|
||||
utils = ./utils.sh;
|
||||
inherit name nativeTools nativeGlibc nativePrefix gcc glibc binutils;
|
||||
langC = if nativeTools then true else gcc.langC;
|
||||
langCC = if nativeTools then true else gcc.langCC;
|
||||
langF77 = if nativeTools then false else gcc.langF77;
|
||||
shell = if shell == "" then stdenv.shell else shell;
|
||||
}
|
||||
103
pkgs/build-support/gcc-wrapper/gcc-wrapper.sh
Normal file
103
pkgs/build-support/gcc-wrapper/gcc-wrapper.sh
Normal file
@@ -0,0 +1,103 @@
|
||||
#! @shell@ -e
|
||||
|
||||
if test -n "$NIX_GCC_WRAPPER_START_HOOK"; then
|
||||
. "$NIX_GCC_WRAPPER_START_HOOK"
|
||||
fi
|
||||
|
||||
if test -z "$NIX_GLIBC_FLAGS_SET"; then
|
||||
. @out@/nix-support/add-flags
|
||||
fi
|
||||
|
||||
. @out@/nix-support/utils
|
||||
|
||||
|
||||
# Figure out if linker flags should be passed. GCC prints annoying
|
||||
# warnings when they are not needed.
|
||||
dontLink=0
|
||||
if test "$*" = "-v" -o -z "$*"; then
|
||||
dontLink=1
|
||||
else
|
||||
for i in "$@"; do
|
||||
if test "$i" = "-c"; then
|
||||
dontLink=1
|
||||
elif test "$i" = "-S"; then
|
||||
dontLink=1
|
||||
elif test "$i" = "-E"; then
|
||||
dontLink=1
|
||||
elif test "$i" = "-E"; then
|
||||
dontLink=1
|
||||
elif test "$i" = "-M"; then
|
||||
dontLink=1
|
||||
elif test "$i" = "-MM"; then
|
||||
dontLink=1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
# Optionally filter out paths not refering to the store.
|
||||
params=("$@")
|
||||
if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE"; then
|
||||
rest=()
|
||||
n=0
|
||||
while test $n -lt ${#params[*]}; do
|
||||
p=${params[n]}
|
||||
p2=${params[$((n+1))]}
|
||||
if test "${p:0:3}" = "-L/" && badPath "${p:2}"; then
|
||||
skip $p
|
||||
elif test "$p" = "-L" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
elif test "${p:0:3}" = "-I/" && badPath "${p:2}"; then
|
||||
skip $p
|
||||
elif test "$p" = "-I" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
elif test "$p" = "-isystem" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
else
|
||||
rest=("${rest[@]}" "$p")
|
||||
fi
|
||||
n=$((n + 1))
|
||||
done
|
||||
params=("${rest[@]}")
|
||||
fi
|
||||
|
||||
|
||||
# Add the flags for the C compiler proper.
|
||||
extra=($NIX_CFLAGS_COMPILE)
|
||||
|
||||
if test "$dontLink" != "1"; then
|
||||
|
||||
# Add the flags that should only be passed to the compiler when
|
||||
# linking.
|
||||
extra=(${extra[@]} $NIX_CFLAGS_LINK)
|
||||
|
||||
# Add the flags that should be passed to the linker (and prevent
|
||||
# `ld-wrapper' from adding NIX_LDFLAGS again).
|
||||
for i in $NIX_LDFLAGS; do
|
||||
extra=(${extra[@]} "-Wl,$i")
|
||||
done
|
||||
export NIX_LDFLAGS_SET=1
|
||||
|
||||
if test "$NIX_STRIP_DEBUG" = "1"; then
|
||||
# Add executable-stripping flags.
|
||||
extra=(${extra[@]} $NIX_CFLAGS_STRIP)
|
||||
fi
|
||||
fi
|
||||
|
||||
# Optionally print debug info.
|
||||
if test "$NIX_DEBUG" = "1"; then
|
||||
echo "original flags to @gcc@:" >&2
|
||||
for i in "${params[@]}"; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
echo "extra flags to @gcc@:" >&2
|
||||
for i in ${extra[@]}; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
fi
|
||||
|
||||
if test -n "$NIX_GCC_WRAPPER_EXEC_HOOK"; then
|
||||
. "$NIX_GCC_WRAPPER_EXEC_HOOK"
|
||||
fi
|
||||
|
||||
exec @gcc@ "${params[@]}" ${extra[@]}
|
||||
144
pkgs/build-support/gcc-wrapper/ld-wrapper.sh
Normal file
144
pkgs/build-support/gcc-wrapper/ld-wrapper.sh
Normal file
@@ -0,0 +1,144 @@
|
||||
#! @shell@ -e
|
||||
|
||||
if test -n "$NIX_LD_WRAPPER_START_HOOK"; then
|
||||
. "$NIX_LD_WRAPPER_START_HOOK"
|
||||
fi
|
||||
|
||||
if test -z "$NIX_GLIBC_FLAGS_SET"; then
|
||||
. @out@/nix-support/add-flags
|
||||
fi
|
||||
|
||||
. @out@/nix-support/utils
|
||||
|
||||
|
||||
# Optionally filter out paths not refering to the store.
|
||||
params=("$@")
|
||||
if test "$NIX_ENFORCE_PURITY" = "1" -a -n "$NIX_STORE" \
|
||||
-a \( -z "$NIX_IGNORE_LD_THROUGH_GCC" -o -z "$NIX_LDFLAGS_SET" \); then
|
||||
rest=()
|
||||
n=0
|
||||
while test $n -lt ${#params[*]}; do
|
||||
p=${params[n]}
|
||||
p2=${params[$((n+1))]}
|
||||
if test "${p:0:3}" = "-L/" && badPath "${p:2}"; then
|
||||
skip $p
|
||||
elif test "$p" = "-L" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
elif test "$p" = "-rpath" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
elif test "$p" = "-dynamic-linker" && badPath "$p2"; then
|
||||
n=$((n + 1)); skip $p2
|
||||
elif test "${p:0:1}" = "/" && badPath "$p"; then
|
||||
# We cannot skip this; barf.
|
||||
echo "impure path \`$p' used in link" >&2
|
||||
exit 1
|
||||
else
|
||||
rest=("${rest[@]}" "$p")
|
||||
fi
|
||||
n=$((n + 1))
|
||||
done
|
||||
params=("${rest[@]}")
|
||||
fi
|
||||
|
||||
|
||||
extra=()
|
||||
|
||||
if test -z "$NIX_LDFLAGS_SET"; then
|
||||
extra=(${extra[@]} $NIX_LDFLAGS)
|
||||
fi
|
||||
|
||||
|
||||
# Add all used dynamic libraries to the rpath.
|
||||
if test "$NIX_DONT_SET_RPATH" != "1"; then
|
||||
|
||||
# First, find all -L... switches.
|
||||
allParams=("${params[@]}" ${extra[@]})
|
||||
libPath=""
|
||||
addToLibPath() {
|
||||
local path="$1"
|
||||
if test "${path:0:1}" != "/"; then return 0; fi
|
||||
case "$path" in
|
||||
*..*|*./*|*/.*|*//*)
|
||||
local path2
|
||||
if path2=$(readlink -f "$path"); then
|
||||
path="$path2"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
case $libPath in
|
||||
*\ $path\ *) return 0 ;;
|
||||
esac
|
||||
libPath="$libPath $path "
|
||||
}
|
||||
n=0
|
||||
while test $n -lt ${#allParams[*]}; do
|
||||
p=${allParams[n]}
|
||||
p2=${allParams[$((n+1))]}
|
||||
if test "${p:0:3}" = "-L/"; then
|
||||
addToLibPath ${p:2}
|
||||
elif test "$p" = "-L"; then
|
||||
addToLibPath ${p2}
|
||||
n=$((n + 1))
|
||||
fi
|
||||
n=$((n + 1))
|
||||
done
|
||||
|
||||
# Second, for each -l... switch, find the directory containing the
|
||||
# library and add it to the rpath.
|
||||
rpath=""
|
||||
addToRPath() {
|
||||
# If the path is not in the store, don't add it to the rpath.
|
||||
# This typically happens for libraries in /tmp that are later
|
||||
# copied to $out/lib. If not, we're screwed.
|
||||
if test "${1:0:${#NIX_STORE}}" != "$NIX_STORE"; then return 0; fi
|
||||
case $rpath in
|
||||
*\ $1\ *) return 0 ;;
|
||||
esac
|
||||
rpath="$rpath $1 "
|
||||
}
|
||||
findLib() {
|
||||
for i in $libPath; do
|
||||
if test -f $i/lib$1.so; then
|
||||
addToRPath $i
|
||||
fi
|
||||
done
|
||||
}
|
||||
n=0
|
||||
while test $n -lt ${#allParams[*]}; do
|
||||
p=${allParams[n]}
|
||||
p2=${allParams[$((n+1))]}
|
||||
if test "${p:0:2}" = "-l"; then
|
||||
findLib ${p:2}
|
||||
elif test "$p" = "-l"; then
|
||||
# I haven't seen `-l foo', but you never know...
|
||||
findLib ${p2}
|
||||
n=$((n + 1))
|
||||
fi
|
||||
n=$((n + 1))
|
||||
done
|
||||
|
||||
# Finally, add `-rpath' switches.
|
||||
for i in $rpath; do
|
||||
extra=(${extra[@]} -rpath $i)
|
||||
done
|
||||
|
||||
fi
|
||||
|
||||
|
||||
# Optionally print debug info.
|
||||
if test "$NIX_DEBUG" = "1"; then
|
||||
echo "original flags to @ld@:" >&2
|
||||
for i in "${params[@]}"; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
echo "extra flags to @ld@:" >&2
|
||||
for i in ${extra[@]}; do
|
||||
echo " $i" >&2
|
||||
done
|
||||
fi
|
||||
|
||||
if test -n "$NIX_LD_WRAPPER_EXEC_HOOK"; then
|
||||
. "$NIX_LD_WRAPPER_EXEC_HOOK"
|
||||
fi
|
||||
|
||||
exec @ld@ "${params[@]}" ${extra[@]}
|
||||
25
pkgs/build-support/gcc-wrapper/setup-hook.sh
Normal file
25
pkgs/build-support/gcc-wrapper/setup-hook.sh
Normal file
@@ -0,0 +1,25 @@
|
||||
addCVars () {
|
||||
if test -d $1/include; then
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$1/include"
|
||||
fi
|
||||
|
||||
if test -d $1/lib; then
|
||||
export NIX_LDFLAGS="$NIX_LDFLAGS -L$1/lib"
|
||||
fi
|
||||
}
|
||||
|
||||
envHooks=(${envHooks[@]} addCVars)
|
||||
|
||||
# Note: these come *after* $out in the PATH (see setup.sh).
|
||||
|
||||
if test -n "@gcc@"; then
|
||||
PATH=$PATH:@gcc@/bin
|
||||
fi
|
||||
|
||||
if test -n "@binutils@"; then
|
||||
PATH=$PATH:@binutils@/bin
|
||||
fi
|
||||
|
||||
if test -n "@glibc@"; then
|
||||
PATH=$PATH:@glibc@/bin
|
||||
fi
|
||||
23
pkgs/build-support/gcc-wrapper/utils.sh
Normal file
23
pkgs/build-support/gcc-wrapper/utils.sh
Normal file
@@ -0,0 +1,23 @@
|
||||
skip () {
|
||||
if test "$NIX_DEBUG" = "1"; then
|
||||
echo "skipping impure path $1" >&2
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# Checks whether a path is impure. E.g., `/lib/foo.so' is impure, but
|
||||
# `/nix/store/.../lib/foo.so' isn't.
|
||||
badPath() {
|
||||
local p=$1
|
||||
|
||||
# Relative paths are okay (since they're presumably relative to
|
||||
# the temporary build directory).
|
||||
if test "${p:0:1}" != "/"; then return 1; fi
|
||||
|
||||
# Otherwise, the path should refer to the store or some temporary
|
||||
# directory (including the build directory).
|
||||
test \
|
||||
"${p:0:${#NIX_STORE}}" != "$NIX_STORE" -a \
|
||||
"${p:0:4}" != "/tmp" -a \
|
||||
"${p:0:${#NIX_BUILD_TOP}}" != "$NIX_BUILD_TOP"
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd bzip2-* || exit 1
|
||||
make || exit 1
|
||||
make install PREFIX=$out || exit 1
|
||||
@@ -1,13 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "bzip2-1.0.2")
|
||||
|
||||
, ("build", Relative("bzip2/bzip2-build.sh"))
|
||||
|
||||
, ("src", Call(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://sources.redhat.com/pub/bzip2/v102/bzip2-1.0.2.tar.gz")
|
||||
, ("md5", "ee76864958d568677f03db8afad92beb")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv-linux/stdenv-nativetools.fix"))
|
||||
]
|
||||
)
|
||||
@@ -1,9 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd coreutils-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
@@ -1,13 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "coreutils-5.0")
|
||||
|
||||
, ("build", Relative("coreutils/coreutils-build.sh"))
|
||||
|
||||
, ("src", Call(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "ftp://ftp.nluug.nl/pub/gnu/coreutils/coreutils-5.0.tar.bz2")
|
||||
, ("md5", "94e5558ee2a65723d4840bfde2d323f0")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv-linux/stdenv-nativetools.fix"))
|
||||
]
|
||||
)
|
||||
@@ -0,0 +1,5 @@
|
||||
. $stdenv/setup
|
||||
|
||||
mkdir -p $out/xml/dtd/docbook
|
||||
cd $out/xml/dtd/docbook
|
||||
unpackFile $src
|
||||
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-4.2/default.nix
Normal file
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-4.2/default.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{stdenv, fetchurl, unzip}:
|
||||
|
||||
assert unzip != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "docbook-xml-4.2";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip;
|
||||
md5 = "73fe50dfe74ca631c1602f558ed8961f";
|
||||
};
|
||||
buildInputs = [unzip];
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
. $stdenv/setup
|
||||
|
||||
mkdir -p $out/xml/dtd/docbook
|
||||
cd $out/xml/dtd/docbook
|
||||
unpackFile $src
|
||||
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-4.3/default.nix
Normal file
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-4.3/default.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{stdenv, fetchurl, unzip}:
|
||||
|
||||
assert unzip != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "docbook-xml-4.3";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip;
|
||||
md5 = "ab200202b9e136a144db1e0864c45074";
|
||||
};
|
||||
buildInputs = [unzip];
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
. $stdenv/setup
|
||||
|
||||
mkdir -p $out/xml/dtd/docbook-ebnf
|
||||
cd $out/xml/dtd/docbook-ebnf
|
||||
stripHash $dtd
|
||||
cp -p $dtd $strippedName
|
||||
stripHash $catalog
|
||||
cp -p $catalog $strippedName
|
||||
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix
Normal file
13
pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{stdenv, fetchurl, unzip}:
|
||||
|
||||
assert unzip != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "docbook-xml-ebnf-1.2b1";
|
||||
builder = ./builder.sh;
|
||||
dtd = fetchurl {
|
||||
url = http://www.docbook.org/xml/ebnf/1.2b1/dbebnf.dtd;
|
||||
md5 = "e50f7d38caf4285965c7a247e026fa7c";
|
||||
};
|
||||
catalog = ./docbook-ebnf.cat;
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
PUBLIC "-//OASIS//DTD DocBook EBNF Module V1.0//EN"
|
||||
"dbebnf.dtd"
|
||||
8
pkgs/data/sgml+xml/stylesheets/xslt/docbook/builder.sh
Normal file
8
pkgs/data/sgml+xml/stylesheets/xslt/docbook/builder.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
. $stdenv/setup
|
||||
|
||||
mkdir $out
|
||||
cd $out
|
||||
unpackFile $src
|
||||
mkdir xml
|
||||
mkdir xml/xsl
|
||||
mv docbook-xsl-* xml/xsl/docbook
|
||||
10
pkgs/data/sgml+xml/stylesheets/xslt/docbook/default.nix
Normal file
10
pkgs/data/sgml+xml/stylesheets/xslt/docbook/default.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "docbook-xsl-1.65.1";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://heanet.dl.sourceforge.net/sourceforge/docbook/docbook-xsl-1.65.1.tar.gz;
|
||||
md5 = "2f7d446de5523ec34a19ccbe8caf387f";
|
||||
};
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd db-*/build_unix || exit 1
|
||||
../dist/configure --prefix=$out --enable-cxx --enable-compat185 || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
rm -rf $out/doc || exit 1
|
||||
@@ -1,12 +0,0 @@
|
||||
Package(
|
||||
[ ("name", "db4-4.0.14")
|
||||
, ("build", Relative("db4/db4-build.sh"))
|
||||
|
||||
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
|
||||
[ ("url", "http://www.sleepycat.com/update/snapshot/db-4.0.14.tar.gz")
|
||||
, ("md5", "12262c64fcd64b772e7cffad8e4d0ebc")
|
||||
]))
|
||||
|
||||
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
|
||||
]
|
||||
)
|
||||
93
pkgs/development/compilers/gcc/builder.sh
Normal file
93
pkgs/development/compilers/gcc/builder.sh
Normal file
@@ -0,0 +1,93 @@
|
||||
. $stdenv/setup
|
||||
|
||||
|
||||
FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
|
||||
mkdir $FIXINC_DUMMY
|
||||
|
||||
|
||||
preConfigure() {
|
||||
|
||||
if test "$noSysDirs" = "1"; then
|
||||
# Disable the standard include directories.
|
||||
cat >> ./gcc/cppdefault.h <<EOF
|
||||
#undef LOCAL_INCLUDE_DIR
|
||||
#undef SYSTEM_INCLUDE_DIR
|
||||
#undef STANDARD_INCLUDE_DIR
|
||||
EOF
|
||||
fi
|
||||
|
||||
# Determine the frontends to build.
|
||||
langs="c"
|
||||
if test -n "$langCC"; then
|
||||
langs="$langs,c++"
|
||||
fi
|
||||
if test -n "$langF77"; then
|
||||
langs="$langs,f77"
|
||||
fi
|
||||
|
||||
# Perform the build in a different directory.
|
||||
mkdir ../build
|
||||
cd ../build
|
||||
|
||||
configureScript=../$sourceRoot/configure
|
||||
configureFlags="--enable-languages=$langs"
|
||||
}
|
||||
|
||||
preConfigure=preConfigure
|
||||
|
||||
|
||||
postConfigure() {
|
||||
if test "$noSysDirs" = "1"; then
|
||||
# Patch some of the makefiles to force linking against our own
|
||||
# glibc.
|
||||
if test -e $NIX_GCC/nix-support/orig-glibc; then
|
||||
glibc=$(cat $NIX_GCC/nix-support/orig-glibc)
|
||||
# Ugh. Copied from gcc-wrapper/builder.sh. We can't just
|
||||
# source in $NIX_GCC/nix-support/add-flags, since that
|
||||
# would cause *this* GCC to be linked against the
|
||||
# *previous* GCC. Need some more modularity there.
|
||||
extraFlags="-Wl,-s -B$glibc/lib -isystem $glibc/include \
|
||||
-L$glibc/lib -Wl,-dynamic-linker -Wl,$glibc/lib/ld-linux.so.2"
|
||||
|
||||
# Oh, what a hack. I should be shot for this.
|
||||
# In stage 1, we should link against the previous GCC, but
|
||||
# not afterwards. Otherwise we retain a dependency.
|
||||
# However, ld-wrapper, which adds the linker flags for the
|
||||
# previous GCC, is also used in stage 2/3. We can prevent
|
||||
# it from adding them by NIX_GLIBC_FLAGS_SET, but then
|
||||
# gcc-wrapper will also not add them, thereby causing
|
||||
# stage 1 to fail. So we use a trick to only set the
|
||||
# flags in gcc-wrapper.
|
||||
hook=$(pwd)/ld-wrapper-hook
|
||||
echo "NIX_GLIBC_FLAGS_SET=1" > $hook
|
||||
export NIX_LD_WRAPPER_START_HOOK=$hook
|
||||
fi
|
||||
|
||||
mf=Makefile
|
||||
sed \
|
||||
-e "s^FLAGS_FOR_TARGET =\(.*\)^FLAGS_FOR_TARGET = \1 $extraFlags^" \
|
||||
< $mf > $mf.tmp
|
||||
mv $mf.tmp $mf
|
||||
|
||||
mf=gcc/Makefile
|
||||
sed \
|
||||
-e "s^X_CFLAGS =\(.*\)^X_CFLAGS = \1 $extraFlags^" \
|
||||
< $mf > $mf.tmp
|
||||
mv $mf.tmp $mf
|
||||
|
||||
# Patch gcc/Makefile to prevent fixinc.sh from "fixing" system
|
||||
# header files from /usr/include.
|
||||
mf=gcc/Makefile
|
||||
sed \
|
||||
-e "s^NATIVE_SYSTEM_HEADER_DIR =\(.*\)^NATIVE_SYSTEM_HEADER_DIR = $FIXINC_DUMMY^" \
|
||||
< $mf > $mf.tmp
|
||||
mv $mf.tmp $mf
|
||||
fi
|
||||
}
|
||||
|
||||
postConfigure=postConfigure
|
||||
|
||||
|
||||
makeFlags="bootstrap"
|
||||
|
||||
genericBuild
|
||||
15
pkgs/development/compilers/gcc/default.nix
Normal file
15
pkgs/development/compilers/gcc/default.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ stdenv, fetchurl, noSysDirs
|
||||
, langC ? true, langCC ? true, langF77 ? false
|
||||
}:
|
||||
|
||||
assert langC;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gcc-3.3.3";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.nluug.nl/mirror/languages/gcc/releases/gcc-3.3.3/gcc-3.3.3.tar.bz2;
|
||||
md5 = "3c6cfd9fcd180481063b4058cf6faff2";
|
||||
};
|
||||
inherit noSysDirs langC langCC langF77;
|
||||
}
|
||||
14
pkgs/development/compilers/ghc/boot.nix
Normal file
14
pkgs/development/compilers/ghc/boot.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{stdenv, fetchurl, perl}:
|
||||
|
||||
assert perl != null;
|
||||
|
||||
assert stdenv.system == "i686-linux";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ghc-6.2.1";
|
||||
src = fetchurl {
|
||||
url = http://www.haskell.org/ghc/dist/6.2.1/ghc-6.2.1-i386-unknown-linux.tar.bz2;
|
||||
md5 = "48d9d6b9f7bf1f15d69e8bd732ee254c";
|
||||
};
|
||||
buildInputs = [perl];
|
||||
}
|
||||
12
pkgs/development/compilers/ghc/default.nix
Normal file
12
pkgs/development/compilers/ghc/default.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{stdenv, fetchurl, perl, ghc, m4}:
|
||||
|
||||
assert perl != null && ghc != null && m4 != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ghc-6.2.1";
|
||||
src = fetchurl {
|
||||
url = http://www.haskell.org/ghc/dist/6.2.1/ghc-6.2.1-src.tar.bz2;
|
||||
md5 = "fa9f90fd6b8852679c5fc16509e94d7a";
|
||||
};
|
||||
buildInputs = [perl ghc m4];
|
||||
}
|
||||
13
pkgs/development/compilers/helium/builder.sh
Normal file
13
pkgs/development/compilers/helium/builder.sh
Normal file
@@ -0,0 +1,13 @@
|
||||
buildinputs="$ghc"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfz $src || exit 1
|
||||
cd helium-* || exit 1
|
||||
cd lvm/src || exit 1
|
||||
./configure --prefix $out || exit 1
|
||||
cd ../../heliumNT || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
cd src || exit 1
|
||||
make depend || exit 1
|
||||
make EXTRA_HC_OPTS=-O2 || exit 1
|
||||
make install
|
||||
13
pkgs/development/compilers/helium/default.nix
Normal file
13
pkgs/development/compilers/helium/default.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{stdenv, fetchurl, ghc}:
|
||||
|
||||
assert ghc != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "helium-1.2";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://www.cs.uu.nl/helium/distr/helium-1.2-src.tar.gz;
|
||||
md5 = "6ea1d6e4436e137d75f5354b4758f299";
|
||||
};
|
||||
inherit ghc;
|
||||
}
|
||||
21
pkgs/development/compilers/j2sdk/builder.sh
Normal file
21
pkgs/development/compilers/j2sdk/builder.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
version=j2sdk1.4.2_03
|
||||
src=$version.bin
|
||||
|
||||
cp $pathname $src || exit 1
|
||||
|
||||
actual=$(md5sum -b $src | cut -c1-32)
|
||||
if test "$actual" != "$md5"; then
|
||||
echo "hash is $actual, expected $md5"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
chmod u+x $src || exit 1
|
||||
|
||||
alias more=cat
|
||||
|
||||
yes yes | ./$src || exit 1
|
||||
|
||||
mkdir $out || exit 1
|
||||
mv $version/* $out/ || exit 1
|
||||
9
pkgs/development/compilers/j2sdk/default.nix
Normal file
9
pkgs/development/compilers/j2sdk/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
if stdenv.system == "i686-linux"
|
||||
then
|
||||
(import ./j2sdk-sun-linux.nix) {
|
||||
inherit stdenv fetchurl;
|
||||
}
|
||||
else
|
||||
false
|
||||
22
pkgs/development/compilers/j2sdk/j2sdk-sun-linux.nix
Normal file
22
pkgs/development/compilers/j2sdk/j2sdk-sun-linux.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
/**
|
||||
* This Nix expression requires the user to download the j2sdk
|
||||
* distribution to /tmp. Please obtain j2sdk-1_4_2_03-linux-i586.bin
|
||||
* from java.sun.com by hand and place it in /tmp. Blame Sun, not me.
|
||||
*
|
||||
* Note that this is not necessary if someone has already pushed a
|
||||
* binary.
|
||||
*
|
||||
* @author Martin Bravenboer <martin@cs.uu.nl>
|
||||
*/
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
assert stdenv.system == "i686-linux";
|
||||
|
||||
derivation {
|
||||
name = "j2sdk-1.4.2";
|
||||
system = stdenv.system;
|
||||
builder = ./builder.sh;
|
||||
pathname = "/tmp/j2sdk-1_4_2_03-linux-i586.bin";
|
||||
md5 = "859aa6750161477acec83b7bb5d9998d";
|
||||
stdenv = stdenv;
|
||||
}
|
||||
5
pkgs/gnumake/gnumake-build.sh → pkgs/development/compilers/jikes/builder.sh
Executable file → Normal file
5
pkgs/gnumake/gnumake-build.sh → pkgs/development/compilers/jikes/builder.sh
Executable file → Normal file
@@ -1,9 +1,8 @@
|
||||
#! /bin/sh
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar xvfj $src || exit 1
|
||||
cd make-* || exit 1
|
||||
cd jikes-* || exit 1
|
||||
./configure --prefix=$out || exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
|
||||
8
pkgs/development/compilers/jikes/default.nix
Normal file
8
pkgs/development/compilers/jikes/default.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{stdenv, fetchurl}: stdenv.mkDerivation {
|
||||
name = "jikes-1.18";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = ftp://www-126.ibm.com/pub/jikes/1.18/jikes-1.18.tar.bz2;
|
||||
md5 = "74bbcfd31aa2d7df4b86c5fe2db315cc";
|
||||
};
|
||||
}
|
||||
5
pkgs/development/compilers/strategoxt/builder.sh
Normal file
5
pkgs/development/compilers/strategoxt/builder.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
buildInputs="$aterm $sdf"
|
||||
. $stdenv/setup
|
||||
|
||||
configureFlags="--with-aterm=$aterm --with-sdf=$sdf"
|
||||
genericBuild
|
||||
11
pkgs/development/compilers/strategoxt/default.nix
Normal file
11
pkgs/development/compilers/strategoxt/default.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{stdenv, fetchurl, aterm, sdf}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "strategoxt-0.9.5";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.stratego-language.org/pub/stratego/StrategoXT/strategoxt-0.9.5.tar.gz;
|
||||
md5 = "c3caea5c05f8d8439450866b6d5664df";
|
||||
};
|
||||
inherit aterm sdf;
|
||||
}
|
||||
19
pkgs/development/compilers/strategoxt/dist.nix
Normal file
19
pkgs/development/compilers/strategoxt/dist.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{stdenv, fetchsvn, autotools, which, aterm, sdf}: derivation {
|
||||
name = "strategoxt-0.9.4-4792";
|
||||
system = stdenv.system;
|
||||
builder = ./svnbuilder.sh;
|
||||
src = fetchsvn {
|
||||
url = https://svn.cs.uu.nl:12443/repos/StrategoXT/trunk/StrategoXT;
|
||||
rev = "4792";
|
||||
};
|
||||
stdenv = stdenv;
|
||||
|
||||
make = autotools.make;
|
||||
automake = autotools.automake;
|
||||
autoconf = autotools.autoconf;
|
||||
libtool = autotools.libtool;
|
||||
which = which;
|
||||
|
||||
aterm = aterm;
|
||||
sdf = sdf;
|
||||
}
|
||||
13
pkgs/development/compilers/strategoxt/svnbuilder.sh
Executable file
13
pkgs/development/compilers/strategoxt/svnbuilder.sh
Executable file
@@ -0,0 +1,13 @@
|
||||
. $stdenv/setup
|
||||
|
||||
echo "pwd = `pwd`"
|
||||
echo "PATH = $PATH"
|
||||
|
||||
echo "ACLOCAL_PATH = $ACLOCAL_PATH"
|
||||
|
||||
cp -r $src strategoxt
|
||||
chmod -R +w strategoxt
|
||||
cd strategoxt
|
||||
./bootstrap
|
||||
./configure --prefix=$out --with-aterm=$aterm --with-sdf=$sdf
|
||||
make install
|
||||
15
pkgs/development/compilers/strategoxt/trunk.nix
Normal file
15
pkgs/development/compilers/strategoxt/trunk.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{stdenv, fetchsvn, autoconf, automake, libtool, which, aterm, sdf}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "strategoxt-0.9.4-4792";
|
||||
|
||||
builder = ./svnbuilder.sh;
|
||||
src = fetchsvn {
|
||||
url = https://svn.cs.uu.nl:12443/repos/StrategoXT/trunk/StrategoXT;
|
||||
rev = "4792";
|
||||
md5 = "0a7bba2cabfc7a9e2b9b5b43ddb3b7ad";
|
||||
};
|
||||
|
||||
buildInputs = [autoconf automake libtool which aterm sdf];
|
||||
inherit aterm sdf libtool;
|
||||
}
|
||||
15
pkgs/development/compilers/tiger/builder.sh
Normal file
15
pkgs/development/compilers/tiger/builder.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
buildinputs="$aterm $sdf $strategoxt"
|
||||
. $stdenv/setup || exit 1
|
||||
|
||||
tar zxf $src || exit 1
|
||||
cd tiger-* || exit 1
|
||||
./configure --prefix=$out \
|
||||
--with-aterm=$aterm \
|
||||
--with-sdf=$sdf \
|
||||
--with-stratego-xt=$strategoxt \
|
||||
--enable-tiger \
|
||||
--enable-ir \
|
||||
--enable-asm \
|
||||
|| exit 1
|
||||
make || exit 1
|
||||
make install || exit 1
|
||||
11
pkgs/development/compilers/tiger/default.nix
Normal file
11
pkgs/development/compilers/tiger/default.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{stdenv, fetchurl, aterm, sdf, strategoxt}: stdenv.mkDerivation {
|
||||
name = "tiger-1.3-4631";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://losser.st-lab.cs.uu.nl/~mbravenb/dailydist/tiger/src/tiger-1.3-4631.tar.gz;
|
||||
md5 = "1ea6070d84134eb6cff7fb32a75ef90a";
|
||||
};
|
||||
aterm = aterm;
|
||||
sdf = sdf;
|
||||
strategoxt = strategoxt;
|
||||
}
|
||||
13
pkgs/development/interpreters/j2re/builder.sh
Normal file
13
pkgs/development/interpreters/j2re/builder.sh
Normal file
@@ -0,0 +1,13 @@
|
||||
|
||||
. $stdenv/setup || exit 1
|
||||
version=j2re1.4.2_03
|
||||
|
||||
cp $src $version.bin || exit 1
|
||||
chmod u+x $version.bin || exit 1
|
||||
|
||||
alias more=cat
|
||||
|
||||
yes yes | ./$version.bin || exit 1
|
||||
|
||||
mkdir $out || exit 1
|
||||
mv $version/* $out/ || exit 1
|
||||
9
pkgs/development/interpreters/j2re/default.nix
Normal file
9
pkgs/development/interpreters/j2re/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
if stdenv.system == "i686-linux"
|
||||
then
|
||||
(import ./j2re-sun-linux.nix) {
|
||||
inherit stdenv fetchurl;
|
||||
}
|
||||
else
|
||||
false
|
||||
15
pkgs/development/interpreters/j2re/j2re-sun-linux.nix
Normal file
15
pkgs/development/interpreters/j2re/j2re-sun-linux.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
assert stdenv.system == "i686-linux";
|
||||
|
||||
|
||||
derivation {
|
||||
name = "j2re-1.4.2";
|
||||
system = stdenv.system;
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://java.sun.com/webapps/download/AutoDL?BundleId=9500;
|
||||
md5 = "b4aae3fcda73d976bd6ae6349b36a90c";
|
||||
};
|
||||
stdenv = stdenv;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user