summaryrefslogtreecommitdiff
path: root/ninja/misc/inherited-fds.ninja
blob: 671155eb0b35d9cf888687ab0c342ab7e39c5923 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# This build file prints out a list of open file descriptors in
# Ninja subprocesses, to help verify we don't accidentally leak
# any.

# Because one fd leak was in the code managing multiple subprocesses,
# this test brings up multiple subprocesses and then dumps the fd
# table of the last one.

# Use like: ./ninja -f misc/inherited-fds.ninja

rule sleep
  command = sleep 10000

rule dump
  command = sleep 1; ls -l /proc/self/fd; exit 1

build all: phony a b c d e

build a: sleep
build b: sleep
build c: sleep
build d: sleep
build e: dump