Move dep_sort from nix to a submodule.

main
Ben Niemann 2022-01-01 02:30:58 +01:00
parent 1d5ebaa58e
commit c1954a4032
8 changed files with 13 additions and 37 deletions

3
.gitmodules vendored
View File

@ -4,3 +4,6 @@
[submodule "3rdparty/qnanopainter"]
path = 3rdparty/qnanopainter
url = https://github.com/QUItCoding/qnanopainter
[submodule "3rdparty/dep_sort"]
path = 3rdparty/dep_sort
url = https://github.com/graphitemaster/dep_sort

6
3rdparty/README.md vendored
View File

@ -1,5 +1,9 @@
Some of the more obscure packages, which are not available generally available in distributions.
Some of the more obscure packages, which are not generally available in distributions.
* qlnanopainter: Library for implementing OpenGL accelerated Qt5 C++ UI components.
- Source: https://github.com/QUItCoding/qnanopainter
- License: zlib
* dep_sort: Generic topological sorting for sorting a list of dependencies in C++17.
- Source: https://github.com/graphitemaster/dep_sort
- License: MIT

1
3rdparty/dep_sort vendored 160000

@ -0,0 +1 @@
Subproject commit 9e96e9426e74e6dc24ba26fdd9c2bee5bab72b0b

2
3rdparty/wscript vendored
View File

@ -37,6 +37,8 @@ def configure(ctx):
#'QNANO_USE_RENDERNODE=1',
]
ctx.env['INCLUDES_DEP_SORT'] = os.path.join(ctx.srcnode.abspath(), '3rdparty/dep_sort')
def build(ctx):
ctx.shlib(
target='qnanopainter',

View File

@ -96,7 +96,7 @@ if [ ! -x /usr/local/bin/appimagetool ]; then
# AppImages, then that (might) leak into the docker container, preventing us from starting the
# binary. An ugly workaround is to remove the magic bytes from the file.
# See https://github.com/TheAssassin/AppImageLauncher/issues/407
dd if=/dev/zero of=image bs=1 seek=8 count=3 conv=notrunc status=none
dd if=/dev/zero of=appimagetool-x86_64.AppImage bs=1 seek=8 count=3 conv=notrunc status=none
./appimagetool-x86_64.AppImage --appimage-extract
rm -fr /opt/appimagetool
mv squashfs-root /opt/appimagetool
@ -122,17 +122,6 @@ if [ ! -x /usr/local/bin/flatpy ]; then
python3 -m pip install /src/flatpy/
fi
### dep_sort
if [ ! -e /usr/local/include/dep_sort.h ]; then
cd /build
curl -L -o dep_sort.tar.gz https://github.com/graphitemaster/dep_sort/archive/9e96e9426e74e6dc24ba26fdd9c2bee5bab72b0b.tar.gz
mkdir dep_sort
cd dep_sort
tar -x --gzip -f ../dep_sort.tar.gz --strip-components=1
cp dep_sort.h dep_sort.inl dep_sort_stl.h /usr/local/include/
fi
### python build dependencies
cd /src

View File

@ -98,27 +98,6 @@ let
'';
};
# dep_sort: Generic topological sorting for sorting a list of dependencies in C++17.
# https://github.com/graphitemaster/dep_sort
dep_sort = stdenv.mkDerivation rec {
pname = "dep_sort";
version = "2018-10-18";
src = fetchFromGitHub {
owner = "graphitemaster";
repo = "dep_sort";
rev = "9e96e9426e74e6dc24ba26fdd9c2bee5bab72b0b";
sha256 = "sha256:15dqhqdy74l38065rkn73s083gysgnwn2rvkx6id85yh57l8np6f";
};
installPhase = ''
mkdir -p $out/include
cp $src/dep_sort.h $out/include/
cp $src/dep_sort.inl $out/include/
cp $src/dep_sort_stl.h $out/include/
'';
};
# FlatBuffers: Memory Efficient Serialization Library
# https://github.com/google/flatbuffers
flatbuffers = stdenv.mkDerivation rec {
@ -157,7 +136,6 @@ in stdenv.mkDerivation {
nixpkgs.libjack2
subprocess
nixpkgs.ffmpeg.dev
dep_sort
nixpkgs.fmt
qt5.qmake
qt5.qtbase

View File

@ -48,6 +48,7 @@ def build(ctx):
'SWRESAMPLE',
'AVUTIL',
'FLATBUFFERS',
'DEP_SORT',
'noisicaa-core',
'noisicaa-node_lib'
],

View File

@ -119,8 +119,6 @@ def configure(ctx):
ctx.pkg_config('FMT', 'fmt', '7.1.3')
ctx.pkg_config('PYTHON', 'python3', '3.8')
ctx.check(header_name='dep_sort_stl.h', features='cxx cxxprogram')
ctx.check_python_module('flatbuffers', condition="ver >= num(2, 0)")
ctx.check_python_module('eventfd') # has no __version__