Merge pull request #71586 from Lassulus/writers

writers: fix writeC & tests
This commit is contained in:
Lassulus 2019-10-23 21:45:29 +02:00 committed by GitHub
commit f417dd9c89
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 3 deletions

View file

@ -92,13 +92,15 @@ rec {
PATH=${makeBinPath [
pkgs.binutils-unwrapped
pkgs.coreutils
pkgs.findutils
pkgs.gcc
pkgs.pkgconfig
]}
export PKG_CONFIG_PATH=${concatMapStringsSep ":" (pkg: "${pkg}/lib/pkgconfig") libraries}
gcc \
${optionalString (libraries != [])
"$(pkg-config --cflags --libs ${
concatMapStringsSep " " (pkg: "$(find ${escapeShellArg pkg}/lib/pkgsconfig -name \*.pc -exec basename {} \;)") libraries
concatMapStringsSep " " (pkg: "$(find ${escapeShellArg pkg}/lib/pkgconfig -name \\*.pc)") libraries
})"
} \
-O \

View file

@ -1,4 +1,16 @@
{ stdenv, lib, runCommand, haskellPackages, nodePackages, perlPackages, python2Packages, python3Packages, writers, writeText }:
{
glib,
haskellPackages,
lib,
nodePackages,
perlPackages,
python2Packages,
python3Packages,
runCommand,
stdenv,
writers,
writeText
}:
with writers;
let
@ -49,9 +61,11 @@ let
python2 = writePython2Bin "test_writers" { libraries = [ python2Packages.enum ]; } ''
from enum import Enum
class Test(Enum):
a = "success"
print Test.a
'';
@ -70,9 +84,19 @@ let
if [[ "test" == "test" ]]; then echo "success"; fi
'';
c = writeC "test_c" { libraries = [ ]; } ''
c = writeC "test_c" { libraries = [ glib.dev ]; } ''
#include <gio/gio.h>
#include <stdio.h>
int main() {
GApplication *application = g_application_new ("hello.world", G_APPLICATION_FLAGS_NONE);
g_application_register (application, NULL, NULL);
GNotification *notification = g_notification_new ("Hello world!");
g_notification_set_body (notification, "This is an example notification.");
GIcon *icon = g_themed_icon_new ("dialog-information");
g_notification_set_icon (notification, icon);
g_object_unref (icon);
g_object_unref (notification);
g_object_unref (application);
printf("success\n");
return 0;
}
@ -112,9 +136,11 @@ let
python2 = writePython2 "test_python2" { libraries = [ python2Packages.enum ]; } ''
from enum import Enum
class Test(Enum):
a = "success"
print Test.a
'';