1 # Build control file for Stratus VOS
2 # Contact: Paul.Green at stratus.com (paulg at samba.org)
6 export CPPFLAGS="-D_POSIX_C_SOURCE=200112L -D_SYSV -D_VOS_EXTENDED_NAMES"
8 export TIMELIMIT_FLAGS="-D_POSIX_C_SOURCE=200112L"
11 # avoid vos bug bin-340
12 export LDFLAGS="-specs=/s/pg/bf/posix/command_library/pg.specs"
15 export ac_cv_prog_cc_ccache_c_o=yes
17 # ensure vos pathnames do not contain % or # characters
18 # workaround until vos suggestion posix-1014 is implemented
21 ############################
23 # VOS: modified to print message and invoke bash explicitly
26 echo "NOTE: VOS has some restrictions that cause build or test"
27 echo " failures. I am working to resolve these."
28 echo " 1. VOS does not implement Unix-domain sockets."
29 echo " 2. VOS is missing some POSIX or Unix functions. I am"
30 echo " supplying private versions to avoid build errors."
31 echo " 3. VOS implements the POSIX-style shared memory API,"
32 echo " not the System V-style shared memory API."
33 echo " 4. VOS seems to have some bugs in POSIX file locking."
35 echo "The following differences from standard POSIX systems are"
36 echo "essentially unfixable:"
37 echo " 5. VOS has symbolic links not hard links. link() is a dummy."
38 echo " 6. VOS has a 256-character limit on pathnames."
39 echo " 7. VOS does not implement shared libraries (no gcc -shared)."
41 echo "Please contact Paul dot Green at stratus.com for further information."
43 if [ ! -x $srcdir/configure ]; then
44 ls -l $srcdir/configure
45 echo "$srcdir/configure is missing"
47 echo "CONFIGURE STATUS: $cstatus"
50 echo "CPPFLAGS=$CPPFLAGS"
52 echo configure options: $config_and_prefix
53 echo CC="$CCACHE $compiler" $srcdir/configure $config_and_prefix
54 CC="$CCACHE $compiler"
56 # VOS: explicitly invoke bash here.
57 ./timelimit $MAXTIME bash $srcdir/configure $config_and_prefix
59 if [ x"$cstatus" != x"0" ]; then
60 if [ -f config.log ]; then
61 echo "contents of config.log:"
65 echo "CONFIGURE STATUS: $cstatus"
69 ############################
70 # VOS: apply any pending patches.
73 if [ -f $tree.patch.txt ]; then
75 echo "Patching $tree with local changes."
76 ../patch -u -b -p 2 -i ../$tree.patch.txt
81 ############################
82 # VOS: fake up df command, since VOS doesn't have it.
87 ############################
88 # fetch the latest copy of the tree
89 # VOS: apply local patches to the tree, skip files w/long names.
91 if [ "$norsync" = "yes" ]; then
92 echo "skipping tree transfer"
95 if rsync --exclude=autom4te.cache/ --exclude=.svn/ --exclude=.git/ --delete-excluded -q --partial --timeout=200 -crlpz --delete --ignore-errors \
96 samba.org::ftp/unpacked/$fetchtree/ $test_root/$fetchtree; then
97 echo "transferred $fetchtree OK"
99 echo "transfer of $fetchtree failed code $?"
103 apply_patches "$fetchtree"
107 ############################
108 # VOS: fake up mount command, since VOS doesn't have it.
113 ############################
114 # VOS: fake up ulimit command, since VOS doesn't have it.
119 ############################
120 # VOS: fake up vmstat command, since VOS doesn't have it.
129 test_tree samba_3_X_test source gcc
130 test_tree samba_3_X_devel source gcc
131 #Skip Samba4 until we shorten file names
132 #test_tree samba_4_0_test source gcc