Annotation of OpenXM_contrib2/asir2000/gc/doc/README.DGUX386, Revision 1.1
1.1 ! noro 1: Garbage Collector (parallel iversion) for ix86 DG/UX Release R4.20MU07
! 2:
! 3:
! 4: *READ* the file README.QUICK.
! 5:
! 6: You need the GCC-3.0.3 rev (DG/UX) compiler to build this tree.
! 7: This compiler has the new "dgux386" threads package implemented.
! 8: It also supports the switch "-pthread" needed to link correctly
! 9: the DG/UX's -lrte -lthread with -lgcc and the system's -lc.
! 10: Finally we support parralleli-mark for the SMP DG/UX machines.
! 11: To build the garbage collector do:
! 12:
! 13: ./configure --enable-parallel-mark
! 14: make
! 15: make gctest
! 16:
! 17: Before you run "gctest" you need to set your LD_LIBRARY_PATH
! 18: correctly so that "gctest" can find the shared library libgc.
! 19: Alternatively you can do a configuration
! 20:
! 21: ./configure --enable-parallel-mark --disable-shared
! 22:
! 23: to build only the static version of libgc.
! 24:
! 25: To enable debugging messages please do:
! 26: 1) Add the "--enable-full-debug" flag during configuration.
! 27: 2) Edit the file linux-threads.c and uncommnect the line:
! 28:
! 29: /* #define DEBUG_THREADS 1 */ to --->
! 30:
! 31: #define DEBUG_THREADS 1
! 32:
! 33: Then give "make" as usual.
! 34:
! 35: In a machine with 4 CPUs (my own machine) the option parallel
! 36: mark (aka --enable-parallel-mark) makes a BIG difference.
! 37:
! 38: Takis Psarogiannakopoulos
! 39: University of Cambridge
! 40: Centre for Mathematical Sciences
! 41: Department of Pure Mathematics
! 42: Wilberforce Road
! 43: Cambridge CB3 0WB ,UK , <takis@XFree86.Org>
! 44: January 2002
! 45:
! 46:
! 47: Note (HB):
! 48: The integration of this patch is currently not complete.
! 49: The following patches against 6.1alpha3 where hard to move
! 50: to alpha4, and are not integrated. There may also be minor
! 51: problems with stylistic corrections made by me.
! 52:
! 53:
! 54: --- ltconfig.ORIG Mon Jan 28 20:22:18 2002
! 55: +++ ltconfig Mon Jan 28 20:44:00 2002
! 56: @@ -689,6 +689,11 @@
! 57: pic_flag=-Kconform_pic
! 58: fi
! 59: ;;
! 60: + dgux*)
! 61: + pic_flag='-fPIC'
! 62: + link_static='-Bstatic'
! 63: + wl='-Wl,'
! 64: + ;;
! 65: *)
! 66: pic_flag='-fPIC'
! 67: ;;
! 68: @@ -718,6 +723,12 @@
! 69: # We can build DLLs from non-PIC.
! 70: ;;
! 71:
! 72: + dgux*)
! 73: + pic_flag='-KPIC'
! 74: + link_static='-Bstatic'
! 75: + wl='-Wl,'
! 76: + ;;
! 77: +
! 78: osf3* | osf4* | osf5*)
! 79: # All OSF/1 code is PIC.
! 80: wl='-Wl,'
! 81: @@ -1154,6 +1165,22 @@
! 82: fi
! 83: ;;
! 84:
! 85: + dgux*)
! 86: + ld_shlibs=yes
! 87: + # For both C/C++ ommit the deplibs. This is because we relying on the fact
! 88: + # that compilation of execitables will put them in correct order
! 89: + # in any case and sometimes are wrong when listed as deplibs (or missing some deplibs)
! 90: + # However when GNU ld and --whole-archive needs to be used we have the problem
! 91: + # that if the -fPIC *_s.a archive is linked through deplibs list we ommiting crucial
! 92: + # .lo/.o files from the created shared lib. This I think is not the case here.
! 93: + archive_cmds='$CC -shared -h $soname -o $lib $libobjs $linkopts'
! 94: + thread_safe_flag_spec='-pthread'
! 95: + wlarc=
! 96: + hardcode_libdir_flag_spec='-L$libdir'
! 97: + hardcode_shlibpath_var=no
! 98: + ac_cv_archive_cmds_needs_lc=no
! 99: + ;;
! 100: +
! 101: cygwin* | mingw*)
! 102: # hardcode_libdir_flag_spec is actually meaningless, as there is
! 103: # no search path for DLLs.
! 104: @@ -1497,7 +1524,7 @@
! 105: ;;
! 106:
! 107: dgux*)
! 108: - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
! 109: + archive_cmds='$CC -shared -h $soname -o $lib $libobjs $linkopts'
! 110: hardcode_libdir_flag_spec='-L$libdir'
! 111: hardcode_shlibpath_var=no
! 112: ;;
! 113: @@ -2092,12 +2119,17 @@
! 114: ;;
! 115:
! 116: dgux*)
! 117: - version_type=linux
! 118: + version_type=dgux
! 119: need_lib_prefix=no
! 120: need_version=no
! 121: - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
! 122: - soname_spec='${libname}${release}.so$major'
! 123: + library_names_spec='$libname.so$versuffix'
! 124: + soname_spec='$libname.so$versuffix'
! 125: shlibpath_var=LD_LIBRARY_PATH
! 126: + thread_safe_flag_spec='-pthread'
! 127: + wlarc=
! 128: + hardcode_libdir_flag_spec='-L$libdir'
! 129: + hardcode_shlibpath_var=no
! 130: + ac_cv_archive_cmds_needs_lc=no
! 131: ;;
! 132:
! 133: sysv4*MP*)
! 134:
! 135:
! 136: --- ltmain.sh.ORIG Mon Jan 28 20:31:18 2002
! 137: +++ ltmain.sh Tue Jan 29 00:11:29 2002
! 138: @@ -1072,11 +1072,38 @@
! 139: esac
! 140: ;;
! 141:
! 142: + -thread*)
! 143: + # DG/UX GCC 2.95.x, 3.x.x rev (DG/UX) links -lthread
! 144: + # with the switch -threads
! 145: + if test "$arg" = "-threads"; then
! 146: + case "$host" in
! 147: + i[3456]86-*-dgux*)
! 148: + deplibs="$deplibs $arg"
! 149: + continue
! 150: + ;;
! 151: + esac
! 152: + fi
! 153: + ;;
! 154: +
! 155: + -pthread*)
! 156: + # DG/UX GCC 2.95.x, 3.x.x rev (DG/UX) links -lthread
! 157: + # with the switch -pthread
! 158: + if test "$arg" = "-pthread"; then
! 159: + case "$host" in
! 160: + i[3456]86-*-dgux*)
! 161: + deplibs="$deplibs $arg"
! 162: + continue
! 163: + ;;
! 164: + esac
! 165: + fi
! 166: + ;;
! 167: +
! 168: -l*)
! 169: if test "$arg" = "-lc"; then
! 170: case "$host" in
! 171: - *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
! 172: + *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos* | i[3456]86-*-dgux*)
! 173: # These systems don't actually have c library (as such)
! 174: + # It is wrong in DG/UX to add -lc when creating shared/dynamic objs/libs
! 175: continue
! 176: ;;
! 177: esac
! 178: @@ -1248,6 +1275,12 @@
! 179: temp_deplibs=
! 180: for deplib in $dependency_libs; do
! 181: case "$deplib" in
! 182: + -thread*)
! 183: + temp_deplibs="$temp_deplibs $deplib"
! 184: + ;;
! 185: + -pthread)
! 186: + temp_deplibs="$temp_deplibs $deplib"
! 187: + ;;
! 188: -R*) temp_xrpath=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
! 189: case " $rpath $xrpath " in
! 190: *" $temp_xrpath "*) ;;
! 191: @@ -1709,6 +1742,13 @@
! 192: done
! 193: ;;
! 194:
! 195: + dgux)
! 196: + # Leave mostly blank for DG/UX
! 197: + major=
! 198: + versuffix=".$current.$revision";
! 199: + verstring=
! 200: + ;;
! 201: +
! 202: linux)
! 203: major=.`expr $current - $age`
! 204: versuffix="$major.$age.$revision"
! 205: @@ -1792,8 +1832,9 @@
! 206:
! 207: dependency_libs="$deplibs"
! 208: case "$host" in
! 209: - *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
! 210: + *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos* | i[3456]86-*-dgux*)
! 211: # these systems don't actually have a c library (as such)!
! 212: + # It is wrong in DG/UX to add -lc when creating shared/dynamic objs/libs
! 213: ;;
! 214: *)
! 215: # Add libc to deplibs on all other systems.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>