pkg-config files, some changes
This commit is contained in:
@@ -1,16 +1,20 @@
|
||||
{ stdenv
|
||||
{ builtins
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, lsb-release
|
||||
, pkg-config
|
||||
, gtk3
|
||||
, im
|
||||
, libGL
|
||||
, libGLU
|
||||
, lua
|
||||
, ftgl-tecgraf
|
||||
, lib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
makePc = import ./make-pc.nix { inherit lib builtins; };
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "cd";
|
||||
version = "5.14";
|
||||
|
||||
@@ -26,6 +30,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
libGL
|
||||
libGLU
|
||||
lua
|
||||
ftgl-tecgraf
|
||||
@@ -55,19 +60,10 @@ stdenv.mkDerivation rec {
|
||||
-Wno-incompatible-pointer-types
|
||||
'';
|
||||
|
||||
pc = ''
|
||||
prefix=${placeholder "out"}
|
||||
exec_prefix=${placeholder "out"}
|
||||
libdir=${placeholder "out"}/lib
|
||||
includedir=${placeholder "out"}/include
|
||||
|
||||
Name: CD
|
||||
Description: A vector graphics toolkit with device independent output
|
||||
Version: ${version}
|
||||
Libs: -L${placeholder "out"}/lib -lcd -lcdcontextplus -lcdgl -lcdim
|
||||
Cflags: -I${placeholder "out"}/include
|
||||
Requires: im gtk+-3.0 glu
|
||||
'';
|
||||
cdPc = builtins.toFile "cd.pc" (makePc "cd" version "gdk-3.0 pango");
|
||||
cdContextPlusPc = builtins.toFile "cdcontextplus.pc" (makePc "cdcontextplus" version "pangocairo cairo");
|
||||
cdGlPc = builtins.toFile "cdgl.pc" (makePc "cdcontextplus" version "gl");
|
||||
cdImPc = builtins.toFile "cdim.pc" (makePc "cdim" version "im");
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
@@ -86,9 +82,10 @@ Requires: im gtk+-3.0 glu
|
||||
ln -fs $out/lib/libcdluagl52.so $out/share/lua/5.2/cdluagl.so
|
||||
ln -fs $out/lib/libcdluaim52.so $out/share/lua/5.2/cdluaim.so
|
||||
|
||||
cat > $out/lib/pkgconfig/cd.pc <<EOF
|
||||
${pc}
|
||||
EOF
|
||||
cp -v ${cdPc} $out/lib/pkgconfig/cd.pc
|
||||
cp -v ${cdContextPlusPc} $out/lib/pkgconfig/cdcontextplus.pc
|
||||
cp -v ${cdGlPc} $out/lib/pkgconfig/cdgl.pc
|
||||
cp -v ${cdImPc} $out/lib/pkgconfig/cdim.pc
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{ lib
|
||||
{ builtins
|
||||
, lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, lsb-release
|
||||
@@ -9,7 +10,9 @@
|
||||
, zlib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
makePc = import ./make-pc.nix { inherit lib builtins; };
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "im";
|
||||
version = "3.15";
|
||||
|
||||
@@ -30,7 +33,6 @@ stdenv.mkDerivation rec {
|
||||
zlib
|
||||
];
|
||||
|
||||
|
||||
postPatch = ''
|
||||
sed -i '1i#include <unistd.h>' src/libjasper2/base/jas_stream.c
|
||||
'';
|
||||
@@ -40,19 +42,11 @@ stdenv.mkDerivation rec {
|
||||
"USE_LUA_VERSION=52"
|
||||
];
|
||||
|
||||
pc = ''
|
||||
prefix=${placeholder "out"}
|
||||
exec_prefix=${placeholder "out"}
|
||||
libdir=${placeholder "out"}/lib
|
||||
includedir=${placeholder "out"}/include
|
||||
|
||||
Name: IM
|
||||
Description: A toolkit for image representation, storage, capture and processing
|
||||
Version: ${version}
|
||||
Libs: -L${placeholder "out"} -lim -lim_jp2 -lim_process -lim_process_omp -lim_fftw3
|
||||
Cflags: -I${placeholder "out"}/include
|
||||
Requires: fftw3 libpng zlib
|
||||
'';
|
||||
imPc = builtins.toFile "im.pc" (makePc "im" version "libpng zlib");
|
||||
imJp2Pc = builtins.toFile "im_jp2.pc" (makePc "im_jp2" version "im");
|
||||
imProcessPc = builtins.toFile "im_process.pc" (makePc "im_process" version "im");
|
||||
imProcessOmpPc = builtins.toFile "im_process_omp.pc" (makePc "im_process_omp" version "im");
|
||||
imFftw3Pc = builtins.toFile "im_fftw3.pc" (makePc "im_fftw3" version "im_process fftw3");
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
@@ -72,10 +66,11 @@ Requires: fftw3 libpng zlib
|
||||
ln -fs $out/lib/libimlua_process_omp52.so $out/share/lua/5.2/imlua_process_omp.so
|
||||
ln -fs $out/lib/libimlua_fftw352.so $out/share/lua/5.2/imlua_fftw3.so
|
||||
|
||||
# Since IM doesn't supply it, provide pkg-config file.
|
||||
cat > $out/lib/pkgconfig/im.pc <<EOF
|
||||
${pc}
|
||||
EOF
|
||||
cp ${imPc} $out/lib/pkgconfig/im.pc
|
||||
cp ${imJp2Pc} $out/lib/pkgconfig/im_jp2.pc
|
||||
cp ${imProcessPc} $out/lib/pkgconfig/im_process.pc
|
||||
cp ${imProcessOmpPc} $out/lib/pkgconfig/im_process_omp.pc
|
||||
cp ${imFftw3Pc} $out/lib/pkgconfig/im_fftw3.pc
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{ stdenv
|
||||
{ builtins
|
||||
, stdenv
|
||||
, cd
|
||||
, fetchurl
|
||||
, lsb-release
|
||||
@@ -7,13 +8,16 @@
|
||||
, webkitgtk_4_1
|
||||
, libsoup_3
|
||||
, im
|
||||
, libGL
|
||||
, libGLU
|
||||
, lua
|
||||
, lib
|
||||
, ftgl-tecgraf
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
makePc = import ./make-pc.nix { inherit lib builtins; };
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "iup";
|
||||
version = "3.32";
|
||||
|
||||
@@ -31,6 +35,7 @@ stdenv.mkDerivation rec {
|
||||
gtk3
|
||||
webkitgtk_4_1
|
||||
libsoup_3
|
||||
libGL
|
||||
libGLU
|
||||
lua
|
||||
ftgl-tecgraf
|
||||
@@ -47,8 +52,7 @@ stdenv.mkDerivation rec {
|
||||
substituteInPlace srcweb/config.mak \
|
||||
--replace-fail "\$(GTK)/include/webkitgtk-4.1" "${webkitgtk_4_1.dev}/include/webkitgtk-4.1" \
|
||||
--replace-fail "\$(GTK)/include/libsoup-3.0" "${libsoup_3.dev}/include/libsoup-3.0"
|
||||
''
|
||||
;
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"NO_DEPEND=Yes"
|
||||
@@ -70,20 +74,16 @@ stdenv.mkDerivation rec {
|
||||
-Wno-implicit-function-declaration
|
||||
-Wno-incompatible-pointer-types
|
||||
'';
|
||||
|
||||
|
||||
pc = ''
|
||||
prefix=${placeholder "out"}
|
||||
exec_prefix=${placeholder "out"}
|
||||
libdir=${placeholder "out"}/lib
|
||||
includedir=${placeholder "out"}/include
|
||||
|
||||
Name: IUP
|
||||
Description: A portable toolkit for building graphical user interfaces
|
||||
Version: ${version}
|
||||
Libs: -L${placeholder "out"}/lib -liup -liupgl -liupglcontrols -liupcontrols -liup_plot -liup_mglplot -liupcd -liupim -liupimglib -liup_scintilla -liuptuio -liupweb
|
||||
Cflags: -I${placeholder "out"}/include
|
||||
Requires: cd im gtk+-3.0 glu
|
||||
'';
|
||||
iupPc = builtins.toFile "iup.pc" (makePc "iup" version "gtk+-3.0");
|
||||
iupglPc = builtins.toFile "iupgl.pc" (makePc "iupgl" version "gl glu");
|
||||
iupcdPc = builtins.toFile "iupcd.pc" (makePc "iupcd" version "iup cd");
|
||||
iupcontrolsPc = builtins.toFile "iupcontrols.pc" (makePc "iupcontrols" version "iupcd");
|
||||
iupPlotPc = builtins.toFile "iup_plot.pc" (makePc "iup_plot" version "iupcd");
|
||||
iupimPc = builtins.toFile "iupim.pc" (makePc "iupim" version "iup im");
|
||||
iupimglibPc = builtins.toFile "iupimglib.pc" (makePc "iupimglib" version "iup");
|
||||
iupwebPc = builtins.toFile "iupweb.pc" (makePc "iupweb" version "webkit2gtk-4.1");
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
@@ -118,14 +118,19 @@ Requires: cd im gtk+-3.0 glu
|
||||
ln -fs $out/lib/libiupluaweb52.so $out/share/lua/5.2/iupluaweb.so
|
||||
ln -fs $out/lib/libiupluaimglib52.so $out/share/lua/5.2/iupluaimglib.so
|
||||
|
||||
cp -v ${iupPc} $out/lib/pkgconfig/iup.pc
|
||||
cp -v ${iupglPc} $out/lib/pkgconfig/iupgl.pc
|
||||
cp -v ${iupcdPc} $out/lib/pkgconfig/iupcd.pc
|
||||
cp -v ${iupcontrolsPc} $out/lib/pkgconfig/iupcontrols.pc
|
||||
cp -v ${iupPlotPc} $out/lib/pkgconfig/iup_plot.pc
|
||||
cp -v ${iupimPc} $out/lib/pkgconfig/iupim.pc
|
||||
cp -v ${iupimglibPc} $out/lib/pkgconfig/iupimglib.pc
|
||||
cp -v ${iupwebPc} $out/lib/pkgconfig/iupweb.pc
|
||||
|
||||
cp -vr bin/Linux*/* $out/bin/
|
||||
chmod +x $out/bin/*
|
||||
cp -r etc/* $out/etc
|
||||
|
||||
cat > $out/lib/pkgconfig/iup.pc <<EOF
|
||||
${pc}
|
||||
EOF
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
{ lib, builtins }:
|
||||
|
||||
pkg: version: requires:
|
||||
let
|
||||
pcTemplate = ''
|
||||
prefix=${placeholder "out"}
|
||||
exec_prefix=${placeholder "out"}
|
||||
libdir=${placeholder "out"}/lib
|
||||
includedir=${placeholder "out"}/include
|
||||
|
||||
Name: @PKG@
|
||||
Version: @VERSION@
|
||||
Libs: -L${placeholder "out"}/lib -l@PKG@
|
||||
Cflags: -I${placeholder "out"}/include
|
||||
Requires: @REQUIRES@
|
||||
'';
|
||||
|
||||
from = [ "@PKG@" "@VERSION@" "@REQUIRES@" ];
|
||||
to = [ pkg version requires ];
|
||||
in builtins.replaceStrings from to pcTemplate
|
||||
Reference in New Issue
Block a user