Skip to content

Commit

Permalink
[build] Allow safe concurrent builds of .iso, .liso and .sdsk targets
Browse files Browse the repository at this point in the history
The geniso, genliso and gensdsk scripts contain hard-coded temporary
directory names, and so could potentially collide with each other when
run as part of a concurrent build (e.g. "make -j 4").

Fix by using mktemp to generate suitable temporary directory names.
  • Loading branch information
Michael Brown committed Aug 2, 2009
1 parent b570c2e commit f42b293
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 8 deletions.
3 changes: 1 addition & 2 deletions src/util/geniso
Expand Up @@ -22,8 +22,7 @@ then
fi
out=$1
shift
dir=bin/iso.dir
mkdir -p $dir
dir=`mktemp -d bin/iso.dir.XXXXXX`
cfg=$dir/isolinux.cfg
cp -p $isolinux_bin $dir
cat > $cfg <<EOF
Expand Down
5 changes: 2 additions & 3 deletions src/util/genliso
Expand Up @@ -26,13 +26,12 @@ esac
out=$1
shift

dir=bin/liso.dir
mkdir -p $dir
dir=`mktemp -d bin/liso.dir.XXXXXX`

img=$dir/boot.img
mformat -f 1440 -C -i $img ::

cfg=bin/syslinux.cfg
cfg=$dir/syslinux.cfg
cat > $cfg <<EOF
# These default options can be changed in the genliso script
SAY gPXE ISO boot image generated by genliso
Expand Down
5 changes: 2 additions & 3 deletions src/util/gensdsk
Expand Up @@ -24,11 +24,10 @@ Mtools\ version\ 3.9.9*|Mtools\ version\ 3.9.1[0-9]*|Mtools\ version\ 4.*)
esac
img=$1
shift
dir=bin/sdsk.dir
mkdir -p $dir
dir=`mktemp -d bin/sdsk.dir.XXXXXX`

mformat -f 1440 -C -i $img ::
cfg=bin/syslinux.cfg
cfg=$dir/syslinux.cfg
cat > $cfg <<EOF
# These default options can be changed in the gensdsk script
Expand Down

0 comments on commit f42b293

Please sign in to comment.