Mercurial > hg > aboriginal
view sources/toys/unique-port.sh @ 972:cfa6262528f3
Genericize native build.
Break out dropbear and strace packages from download.sh (and clean up what
remains, mirror list is now in include.sh).
New script setup-native.build.sh downloads, extracts, and creates
a system image with "here document" build script to build dropbear and strace.
New native-build.sh script works on arbitrary hdc image, providing FTP upload
to a directory. The setup/fork logic to build all architectures is now in
buildall.sh for this, just like everything else.
Update buildall.sh to take optional list of architectures to build on command
line.
Factor out unique-port.sh (in embeddable manner) so distcc (in run-emulator.sh)
and ftp server (in native-build.sh) can both use it.
Upgrade to new busybox version while we're there.
HGi removed sources/more/setup-native-static-build.sh
author | Rob Landley <rob@landley.net> |
---|---|
date | Fri, 05 Feb 2010 10:33:06 -0600 |
parents | |
children | 94b0b4ef1157 |
line wrap: on
line source
#!/bin/bash unique_port() { # Try to find a unique port number for each running instance of the program. # To reduce the chance of the port already being in use by another program, # we use a range either before or after that used by normal programs, but # beyond that allocated to most persistent demons. There's a small chance # even these ports are already in use, but this at least prevents # simultaneous run-emulator instances for different targets from # trivially interfering with each other. START=8192 RANGE=$[$(awk '{print $1}' /proc/sys/net/ipv4/ip_local_port_range)-$START] if [ $RANGE -lt 1 ] then START=$[$(awk '{print $2}' /proc/sys/net/ipv4/ip_local_port_range)] RANGE=$[65535-$START] fi echo $[($$%$RANGE)+$START] }