logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git

gen.lua (1469B)


  1. set('ninja_required_version', '1.8')
  2. set('basedir', basedir)
  3. set('builddir', config.builddir)
  4. set('dir', '$basedir')
  5. set('outdir', '$builddir')
  6. set('repo', config.repo.path)
  7. set('repo_flags', config.repo.flags)
  8. set('repo_tag', config.repo.tag)
  9. set('repo_branch', config.repo.branch)
  10. include '$basedir/rules.ninja'
  11. toolchain(config.target)
  12. subgen 'probe'
  13. subgen 'pkg'
  14. build('awk', '$outdir/root.perms', {'$outdir/tree.fspec', '|', '$basedir/scripts/perms.awk'}, {
  15. expr='-f $basedir/scripts/perms.awk',
  16. })
  17. gitfile('.perms', '644', '$outdir/root.perms')
  18. build('git-init', '$outdir/root.stamp')
  19. build('git-tree', '$outdir/root.tree', {'$outdir/root.index', '|', '$basedir/scripts/tree.sh', '||', '$outdir/root.stamp'})
  20. build('git-commit', '$outdir/root.commit', {'|', '$outdir/root.tree'})
  21. build('phony', 'commit', '$builddir/root.commit')
  22. build('fspec-sort', '$outdir/root.fspec', {'$outdir/tree.fspec', '|', '$builddir/pkg/fspec-sync/host/fspec-sort'})
  23. build('fspec-tar', '$outdir/root.tar.zst', {'$outdir/root.fspec', '|', '$builddir/pkg/fspec-sync/host/fspec-tar'})
  24. --build('awk', '$outdir/root.sqfslist', {'$outdir/root.fspec', '|', '$basedir/scripts/squashfs.awk'}, {
  25. -- expr='-f $basedir/scripts/squashfs.awk',
  26. --})
  27. --rule('gensquashfs', 'gensquashfs -F $in -D . -f -c gzip $out')
  28. --build('gensquashfs', '$outdir/root.squashfs', {'$outdir/root.sqfslist'})
  29. build('phony', 'build.ninja', 'ninja', {generator='1'})
  30. io.write('default $builddir/root.tree\n')