fix flake, mark which packages work
This commit is contained in:
parent
75e2df41fe
commit
85d4ed5a3b
|
@ -129,7 +129,7 @@ bool log_command(struct Command command) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case COMMAND_TAG_GLOBAL_BRIGHTNESS: {
|
case COMMAND_TAG_GLOBAL_BRIGHTNESS: {
|
||||||
Brightness brightness = sp_cmd_brightness_global_get(command.data.global_brightness);
|
Brightness brightness = sp_cmd_brightness_global_get_brightness(command.data.global_brightness);
|
||||||
printf("-> GlobalBrightnessCommand with params: brightness=%hu\n", brightness);
|
printf("-> GlobalBrightnessCommand with params: brightness=%hu\n", brightness);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -191,7 +191,7 @@ int main(int argc, char **argv) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Header *header = sp_packet_get_header(packet);
|
struct Header *header = sp_packet_get_header_mut(packet);
|
||||||
|
|
||||||
ByteSlice payload = sp_packet_get_payload(packet);
|
ByteSlice payload = sp_packet_get_payload(packet);
|
||||||
printf("Received packet: cc=%d, a=%d, b=%d, c=%d, d=%d, payload=%p (len %zu)\n",
|
printf("Received packet: cc=%d, a=%d, b=%d, c=%d, d=%d, payload=%p (len %zu)\n",
|
||||||
|
|
|
@ -23,8 +23,6 @@ void sock_init() {
|
||||||
|
|
||||||
/// TODO: all of this for sleeping n ms? There should be a better way!
|
/// TODO: all of this for sleeping n ms? There should be a better way!
|
||||||
int msleep(long msec) {
|
int msleep(long msec) {
|
||||||
int res;
|
|
||||||
|
|
||||||
if (msec < 0) {
|
if (msec < 0) {
|
||||||
errno = EINVAL;
|
errno = EINVAL;
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -35,6 +33,7 @@ int msleep(long msec) {
|
||||||
.tv_nsec = (msec % 1000) * 1000000,
|
.tv_nsec = (msec % 1000) * 1000000,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
int res;
|
||||||
do {
|
do {
|
||||||
res = nanosleep(&ts, &ts);
|
res = nanosleep(&ts, &ts);
|
||||||
} while (res && errno == EINTR);
|
} while (res && errno == EINTR);
|
||||||
|
|
|
@ -15,7 +15,7 @@ int main(void) {
|
||||||
if (packet == NULL)
|
if (packet == NULL)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
Header *header = sp_packet_get_header(packet);
|
Header *header = sp_packet_get_header_mut(packet);
|
||||||
printf("[%d, %d, %d, %d, %d]\n", header->command_code, header->a, header->b, header->c, header->d);
|
printf("[%d, %d, %d, %d, %d]\n", header->command_code, header->a, header->b, header->c, header->d);
|
||||||
|
|
||||||
sp_udp_send_packet(sock, packet);
|
sp_udp_send_packet(sock, packet);
|
||||||
|
|
|
@ -3,24 +3,27 @@
|
||||||
set -e
|
set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
BUILD="nix build -L"
|
BUILD="nom build -L"
|
||||||
|
|
||||||
$BUILD .#servicepoint-binding-c -o result
|
$BUILD .#servicepoint-binding-c -o result
|
||||||
|
|
||||||
$BUILD .#servicepoint-binding-c-stable-release -o result-stable-release
|
$BUILD .#servicepoint-binding-c-stable-release -o result-stable-release
|
||||||
$BUILD .#servicepoint-binding-c-stable-size -o result-stable-size
|
$BUILD .#servicepoint-binding-c-stable-size -o result-stable-size
|
||||||
$BUILD .#servicepoint-binding-c-nightly-release -o result-nightly-release
|
$BUILD .#servicepoint-binding-c-nightly-release -o result-nightly-release
|
||||||
$BUILD .#servicepoint-binding-c-nightly-size -o result-nightly-size
|
|
||||||
$BUILD .#servicepoint-binding-c-musl-stable-release -o result-musl-release
|
|
||||||
$BUILD .#servicepoint-binding-c-musl-stable-size -o result-musl-size
|
|
||||||
|
|
||||||
# do not work yet:
|
|
||||||
# $BUILD .#servicepoint-binding-c-musl-nightly-release
|
|
||||||
# $BUILD .#servicepoint-binding-c-musl-nightly-size
|
|
||||||
|
|
||||||
$BUILD .#all-examples -o result-examples
|
$BUILD .#all-examples -o result-examples
|
||||||
$BUILD .#all-examples-size -o result-examples-size
|
$BUILD .#all-examples-size -o result-examples-size
|
||||||
$BUILD .#all-examples-nightly-size -o result-nightly-size
|
|
||||||
$BUILD .#all-examples-musl -o result-examples-musl
|
# works, but needs to bootstrap a C and Rust compiler
|
||||||
$BUILD .#all-examples-musl-static -o result-examples-musl-static
|
# $BUILD .#servicepoint-binding-c-musl-stable-release -o result-musl-release
|
||||||
$BUILD .#all-examples-musl-static-size -o result-examples-musl-static-size
|
# $BUILD .#servicepoint-binding-c-musl-stable-size -o result-musl-size
|
||||||
|
# $BUILD .#all-examples-musl-static -o result-examples-musl-static
|
||||||
|
# $BUILD .#all-examples-musl-static-size -o result-examples-musl-static-size
|
||||||
|
# $BUILD .#all-examples-musl -o result-examples-musl
|
||||||
|
|
||||||
|
# do not work yet:
|
||||||
|
# $BUILD .#servicepoint-binding-c-nightly-size -o result-nightly-size
|
||||||
|
# $BUILD .#servicepoint-binding-c-musl-nightly-release
|
||||||
|
# $BUILD .#servicepoint-binding-c-musl-nightly-size
|
||||||
|
# $BUILD .#all-examples-nightly-size -o result-examples-nightly-size
|
||||||
|
|
||||||
|
|
19
packages.nix
19
packages.nix
|
@ -14,10 +14,12 @@ let
|
||||||
buildType ? "release",
|
buildType ? "release",
|
||||||
buildNoDefaultFeatures ? false,
|
buildNoDefaultFeatures ? false,
|
||||||
cargoBuildFlags ? [ ],
|
cargoBuildFlags ? [ ],
|
||||||
nativeBuildInputs ? []
|
nativeBuildInputs ? [],
|
||||||
|
stdlib ? false,
|
||||||
|
|
||||||
}:
|
}:
|
||||||
rustPlatform.buildRustPackage (finalAttrs: {
|
rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
inherit version buildType cargoBuildFlags;
|
inherit version buildType cargoBuildFlags stdlib;
|
||||||
|
|
||||||
pname = "servicepoint-binding-c";
|
pname = "servicepoint-binding-c";
|
||||||
src = lib.filter {
|
src = lib.filter {
|
||||||
|
@ -26,7 +28,7 @@ let
|
||||||
./Cargo.lock
|
./Cargo.lock
|
||||||
./Cargo.toml
|
./Cargo.toml
|
||||||
./src
|
./src
|
||||||
./build.rs
|
./include
|
||||||
./LICENSE
|
./LICENSE
|
||||||
./cbindgen.toml
|
./cbindgen.toml
|
||||||
];
|
];
|
||||||
|
@ -41,16 +43,8 @@ let
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [ pkgs.pkg-config ] ++ nativeBuildInputs;
|
nativeBuildInputs = [ pkgs.pkg-config ] ++ nativeBuildInputs;
|
||||||
buildInputs = [ pkgs.xz ];
|
buildInputs = [ pkgs.xz ];
|
||||||
|
|
||||||
preBuild = ''
|
|
||||||
mkdir -p include
|
|
||||||
export SERVICEPOINT_HEADER_OUT=$(realpath "include")
|
|
||||||
|
|
||||||
echo "Rust version: $(rustc --version)"
|
|
||||||
echo "preBuild hook: set SERVICEPOINT_HEADER_OUT to $SERVICEPOINT_HEADER_OUT"
|
|
||||||
'';
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
cp -r include $out
|
cp -r $src/include $out
|
||||||
|
|
||||||
mkdir -p $out/lib/pkgconfig
|
mkdir -p $out/lib/pkgconfig
|
||||||
sed "s:\$out:$out:g" ${./servicepoint.pc.in} | sed "s:\$version:$version:g" > $out/lib/pkgconfig/servicepoint.pc
|
sed "s:\$out:$out:g" ${./servicepoint.pc.in} | sed "s:\$version:$version:g" > $out/lib/pkgconfig/servicepoint.pc
|
||||||
|
@ -149,6 +143,7 @@ let
|
||||||
"-Zbuild-std=core,std,alloc,proc_macro,panic_abort"
|
"-Zbuild-std=core,std,alloc,proc_macro,panic_abort"
|
||||||
"-Zbuild-std-features=panic_immediate_abort"
|
"-Zbuild-std-features=panic_immediate_abort"
|
||||||
];
|
];
|
||||||
|
stdlib = true;
|
||||||
# TODO: remove hard-coded target
|
# TODO: remove hard-coded target
|
||||||
nativeBuildInputs = [fenix.targets."x86_64-unknown-linux-gnu".latest.rust-std];
|
nativeBuildInputs = [fenix.targets."x86_64-unknown-linux-gnu".latest.rust-std];
|
||||||
# TODO: those override the nix flags
|
# TODO: those override the nix flags
|
||||||
|
|
Loading…
Reference in a new issue