START libexec/ld.so 2024-11-04T03:36:51Z ===> elf ===> elf/libbar cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/elf/libbar/.. -MD -MP -c /usr/src/regress/libexec/ld.so/elf/libbar/bar.c -o bar.o building standard bar library ranlib libbar.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/elf/libbar/.. -MD -MP -c -p /usr/src/regress/libexec/ld.so/elf/libbar/bar.c -o bar.po building profiled bar library ranlib libbar_p.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/elf/libbar/.. -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/elf/libbar/bar.c -o bar.so building shared bar library (version 1.0) cc -shared -Wl,-soname,libbar.so.1.0 -fpic -o libbar.so.1.0 `echo bar.so | tr ' ' '\n' | sort -R` ===> elf/foo ==== run-regress-elfbug ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/elf/foo/.. -c /usr/src/regress/libexec/ld.so/elf/foo/main.c cc -o elfbug main.o -Wl,-rpath,/usr/src/regress/libexec/ld.so/elf/foo/../libbar/obj -L/usr/src/regress/libexec/ld.so/elf/foo/../libbar/obj -lbar ./elfbug bar ===> hidden ===> hidden/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/hidden/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/hidden/libaa/aa.c -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> hidden/libab cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/hidden/libab/ab.c -o ab.o building standard ab library ranlib libab.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/hidden/libab/ab.c -o ab.so building shared ab library (version 0.0) cc -shared -Wl,-soname,libab.so.0.0 -fpic -o libab.so.0.0 `echo ab.so | tr ' ' '\n' | sort -R` ===> hidden/test1 ==== run-regress-test1 ==== cc -O2 -pipe -DLIBAA="\"/usr/src/regress/libexec/ld.so/hidden/test1/../libaa/obj/libaa.so\"" -DLIBAB="\"/usr/src/regress/libexec/ld.so/hidden/test1/../libab/obj/libab.so\"" -MD -MP -c /usr/src/regress/libexec/ld.so/hidden/test1/test1.c cc -Wl,-E -o test1 test1.o ./test1 ===> hidden/test2 ==== run-regress-test2 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/hidden/test2/test2.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/hidden/test2/../libaa/obj -L/usr/src/regress/libexec/ld.so/hidden/test2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/hidden/test2/../libab/obj -L/usr/src/regress/libexec/ld.so/hidden/test2/../libab/obj -o test2 test2.o -laa -lab ./test2 ===> weak ===> weak/libstrong cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libstrong/../prog -Wall -Werror -MD -MP -c /usr/src/regress/libexec/ld.so/weak/libstrong/strong.c -o strong.o building standard strong library ranlib libstrong.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libstrong/../prog -Wall -Werror -MD -MP -c -p /usr/src/regress/libexec/ld.so/weak/libstrong/strong.c -o strong.po building profiled strong library ranlib libstrong_p.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libstrong/../prog -Wall -Werror -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/weak/libstrong/strong.c -o strong.so building shared strong library (version 2.0) cc -shared -Wl,-soname,libstrong.so.2.0 -fpic -o libstrong.so.2.0 `echo strong.so | tr ' ' '\n' | sort -R` ===> weak/libweak cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libweak/../prog -Wall -Werror -MD -MP -c /usr/src/regress/libexec/ld.so/weak/libweak/weak.c -o weak.o building standard weak library ranlib libweak.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libweak/../prog -Wall -Werror -MD -MP -c -p /usr/src/regress/libexec/ld.so/weak/libweak/weak.c -o weak.po building profiled weak library ranlib libweak_p.a cc -O2 -pipe -g -I/usr/src/regress/libexec/ld.so/weak/libweak/../prog -Wall -Werror -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/weak/libweak/weak.c -o weak.so building shared weak library (version 2.0) cc -shared -Wl,-soname,libweak.so.2.0 -fpic -o libweak.so.2.0 `echo weak.so | tr ' ' '\n' | sort -R` ===> weak/prog ==== run-regress-prog ==== cc -O2 -pipe -I/usr/src/regress/libexec/ld.so/weak/prog/../prog -Wall -Werror -MD -MP -c /usr/src/regress/libexec/ld.so/weak/prog/main.c cc -o prog main.o -Wl,-rpath,/usr/src/regress/libexec/ld.so/weak/prog/../libweak/obj -L/usr/src/regress/libexec/ld.so/weak/prog/../libweak/obj -lweak -Wl,-rpath,/usr/src/regress/libexec/ld.so/weak/prog/../libstrong/obj -L/usr/src/regress/libexec/ld.so/weak/prog/../libstrong/obj -lstrong ./prog ===> weak/prog2 ==== run-regress-prog2 ==== cc -O2 -pipe -I/usr/src/regress/libexec/ld.so/weak/prog2/../prog -Wall -Werror -MD -MP -c /usr/src/regress/libexec/ld.so/weak/prog2/main.c cc -o prog2 main.o -Wl,-rpath,/usr/src/regress/libexec/ld.so/weak/prog2/../libweak/obj -L/usr/src/regress/libexec/ld.so/weak/prog2/../libweak/obj -lweak ./prog2 ===> dlsym ===> dlsym/test1 ===> dlsym/test1/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test1/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test1/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test1/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> dlsym/test1/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/dlsym/test1/prog1/../libaa -c /usr/src/regress/libexec/ld.so/dlsym/test1/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test1/prog1/../libaa/obj -L/usr/src/regress/libexec/ld.so/dlsym/test1/prog1/../libaa/obj -o prog1 main.o -laa ./prog1 ===> dlsym/test1/prog2 ==== run-regress-prog2 ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/dlsym/test1/prog2/../libaa -c /usr/src/regress/libexec/ld.so/dlsym/test1/prog2/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test1/prog2/../libaa/obj -L/usr/src/regress/libexec/ld.so/dlsym/test1/prog2/../libaa/obj -o prog2 main.o -laa ./prog2 ===> dlsym/test2 ===> dlsym/test2/libcc cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/libcc/cc.c -o cc.o building standard cc library ranlib libcc.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test2/libcc/cc.c -o cc.po building profiled cc library ranlib libcc_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test2/libcc/cc.c -o cc.so building shared cc library (version 1.0 ) cc -shared -Wl,-soname,libcc.so.1.0 -fpic -o libcc.so.1.0 `echo cc.so | tr ' ' '\n' | sort -R` ===> dlsym/test2/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/libbb/bb.c -o bb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test2/libbb/bb.c -o bb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test2/libbb/bb.c -o bb.so building shared bb library (version 1.0 ) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/libbb/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/libbb/../libcc/obj -lcc ===> dlsym/test2/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test2/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test2/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> dlsym/test2/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog1/../libbb/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/prog1/../libaa/obj -o prog1 main.o -laa ./prog1 ===> dlsym/test2/prog2 ==== run-regress-prog2 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/prog2/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog2/../libbb/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/prog2/../libaa/obj -o prog2 main.o -laa ./prog2 ===> dlsym/test2/prog3 ==== run-regress-prog3 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/prog3/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog3/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog3/../libbb/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/prog3/../libaa/obj -o prog3 main.o -laa ./prog3 ===> dlsym/test2/prog4 ==== run-regress-prog4 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/prog4/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog4/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog4/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog4/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/prog4/../libaa/obj -o prog4 main.o -laa ./prog4 ===> dlsym/test2/prog5 ==== run-regress-prog5 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test2/prog5/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog5/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog5/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test2/prog5/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlsym/test2/prog5/../libaa/obj -o prog5 main.o -laa ./prog5 ===> dlsym/test3 ===> dlsym/test3/libee cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/libee/ee.c -o ee.o building standard ee library ranlib libee.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test3/libee/ee.c -o ee.po building profiled ee library ranlib libee_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test3/libee/ee.c -o ee.so building shared ee library (version 1.0 ) cc -shared -Wl,-soname,libee.so.1.0 -fpic -o libee.so.1.0 `echo ee.so | tr ' ' '\n' | sort -R` ===> dlsym/test3/libdd cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/libdd/dd.c -o dd.o building standard dd library ranlib libdd.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test3/libdd/dd.c -o dd.po building profiled dd library ranlib libdd_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test3/libdd/dd.c -o dd.so building shared dd library (version 1.0 ) cc -shared -Wl,-soname,libdd.so.1.0 -fpic -o libdd.so.1.0 `echo dd.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/libdd/../libee/obj -L/usr/src/regress/libexec/ld.so/dlsym/test3/libdd/../libee/obj -lee ===> dlsym/test3/libcc cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/libcc/cc.c -o cc.o building standard cc library ranlib libcc.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test3/libcc/cc.c -o cc.po building profiled cc library ranlib libcc_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test3/libcc/cc.c -o cc.so building shared cc library (version 1.0 ) cc -shared -Wl,-soname,libcc.so.1.0 -fpic -o libcc.so.1.0 `echo cc.so | tr ' ' '\n' | sort -R` ===> dlsym/test3/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/libbb/bb.c -o bb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test3/libbb/bb.c -o bb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test3/libbb/bb.c -o bb.so building shared bb library (version 1.0 ) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/libbb/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlsym/test3/libbb/../libcc/obj -lcc ===> dlsym/test3/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlsym/test3/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlsym/test3/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> dlsym/test3/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog1/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog1/../libdd/obj -L/usr/src/regress/libexec/ld.so/dlsym/test3/prog1/../libaa/obj -o prog1 main.o -laa ./prog1 ===> dlsym/test3/prog2 ==== run-regress-prog2 ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/dlsym/test3/prog2/../libaa -c /usr/src/regress/libexec/ld.so/dlsym/test3/prog2/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog2/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog2/../libdd/obj -L/usr/src/regress/libexec/ld.so/dlsym/test3/prog2/../libaa/obj -o prog2 main.o -laa ./prog2 ===> dlsym/test3/prog3 ==== run-regress-prog3 ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/dlsym/test3/prog3/../libaa -c /usr/src/regress/libexec/ld.so/dlsym/test3/prog3/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog3/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog3/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog3/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlsym/test3/prog3/../libaa/obj -o prog3 main.o -laa ./prog3 ===> dlsym/test3/prog4 ==== run-regress-prog4 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlsym/test3/prog4/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog4/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlsym/test3/prog4/../libcc/obj -o prog4 main.o ./prog4 ===> dlopen ===> dlopen/libaa c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/libaa/aa.C -o aa.o building standard aa library ranlib libaa.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlopen/libaa/aa.C -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> dlopen/libab c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/libab/ab.C -o ab.o building standard ab library ranlib libab.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlopen/libab/ab.C -o ab.po building profiled ab library ranlib libab_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlopen/libab/ab.C -o ab.so building shared ab library (version 0.0) cc -shared -Wl,-soname,libab.so.0.0 -fpic -o libab.so.0.0 `echo ab.so | tr ' ' '\n' | sort -R` ===> dlopen/libac c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/libac/ac.C -o ac.o building standard ac library ranlib libac.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlopen/libac/ac.C -o ac.po building profiled ac library ranlib libac_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlopen/libac/ac.C -o ac.so building shared ac library (version 0.0) cc -shared -Wl,-soname,libac.so.0.0 -fpic -o libac.so.0.0 `echo ac.so | tr ' ' '\n' | sort -R` -L/usr/src/regress/libexec/ld.so/dlopen/libac/../libaa/obj -laa ===> dlopen/prog1 ==== run-regress-prog1 ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/prog1/prog1.C c++ -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog1/../libab/obj -o prog1 prog1.o ./prog1 main ===> dlopen/prog2 ==== run-regress-prog2 ==== c++ -I/usr/src/regress/libexec/ld.so/dlopen/prog2/../libab -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/prog2/prog2.C c++ -L/usr/src/regress/libexec/ld.so/dlopen/prog2/../libaa/obj -L/usr/src/regress/libexec/ld.so/dlopen/prog2/../libab/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog2/../libab/obj -o prog2 prog2.o -laa -lab ./prog2 main ===> dlopen/prog3 ==== run-regress-prog3 ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/prog3/main.c c++: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated] c++ -L/usr/src/regress/libexec/ld.so/dlopen/prog3/../libaa/obj -L/usr/src/regress/libexec/ld.so/dlopen/prog3/../libac/obj -Wl,-disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog3/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog3/../libac/obj -o prog3 main.o ./prog3 ===> dlopen/prog4 ==== run-regress-prog4 ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlopen/prog4/main.c c++: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated] c++ -L/usr/src/regress/libexec/ld.so/dlopen/prog4/../libaa/obj -L/usr/src/regress/libexec/ld.so/dlopen/prog4/../libac/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlopen/prog4/../libac/obj -o prog4 main.o ./prog4 ===> dlclose ===> dlclose/test1 ===> dlclose/test1/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bb.c -o bb.o cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bbb.c -o bbb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bb.c -o bb.po cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bbb.c -o bbb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bb.c -o bb.so cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test1/libbb/bbb.c -o bbb.so building shared bb library (version 1.0 ) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so bbb.so | tr ' ' '\n' | sort -R` ===> dlclose/test1/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test1/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test1/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/libaa/../libbb/obj -L/usr/src/regress/libexec/ld.so/dlclose/test1/libaa/../libbb/obj -lbb ===> dlclose/test1/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/prog1/../libaa/obj -o prog1 main.o ./prog1 ===> dlclose/test1/prog2 ==== run-regress-prog2 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/prog2/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/prog2/../libbb/obj -o prog2 main.o ./prog2 ===> dlclose/test1/prog3 ==== run-regress-prog3 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test1/prog3/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/prog3/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test1/prog3/../libbb/obj -o prog3 main.o ./prog3 ===> dlclose/test2 ===> dlclose/test2/libzz cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test2/libzz/zz.c -o zz.o building standard zz library ranlib libzz.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test2/libzz/zz.c -o zz.po building profiled zz library ranlib libzz_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test2/libzz/zz.c -o zz.so building shared zz library (version 1.0 ) cc -shared -Wl,-soname,libzz.so.1.0 -fpic -o libzz.so.1.0 `echo zz.so | tr ' ' '\n' | sort -R` ===> dlclose/test2/libcc cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test2/libcc/cc.c -o cc.o building standard cc library ranlib libcc.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test2/libcc/cc.c -o cc.po building profiled cc library ranlib libcc_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test2/libcc/cc.c -o cc.so building shared cc library (version 1.0 ) cc -shared -Wl,-soname,libcc.so.1.0 -fpic -o libcc.so.1.0 `echo cc.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test2/libcc/../libzz/obj -L/usr/src/regress/libexec/ld.so/dlclose/test2/libcc/../libzz/obj -lzz ===> dlclose/test2/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test2/libbb/bb.c -o bb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test2/libbb/bb.c -o bb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test2/libbb/bb.c -o bb.so building shared bb library (version 1.0 ) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test2/libbb/../libzz/obj -L/usr/src/regress/libexec/ld.so/dlclose/test2/libbb/../libzz/obj -lzz ===> dlclose/test2/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test2/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dlclose/test2/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dlclose/test2/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test2/libaa/../libbb/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test2/libaa/../libcc/obj -L/usr/src/regress/libexec/ld.so/dlclose/test2/libaa/../libbb/obj -lbb -L/usr/src/regress/libexec/ld.so/dlclose/test2/libaa/../libcc/obj -lcc ===> dlclose/test2/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dlclose/test2/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dlclose/test2/prog1/../libaa/obj -o prog1 main.o ./prog1 ===> lazy ===> lazy/libfoo cc -O2 -pipe -g -MD -MP -DBAR="/usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/obj/libbar.so" -c /usr/src/regress/libexec/ld.so/lazy/libfoo/foo.c -o foo.o building standard foo library ranlib libfoo.a cc -O2 -pipe -g -MD -MP -DBAR="/usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/obj/libbar.so" -c -p /usr/src/regress/libexec/ld.so/lazy/libfoo/foo.c -o foo.po building profiled foo library ranlib libfoo_p.a cc -O2 -pipe -g -MD -MP -DBAR="/usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/obj/libbar.so" -c -fpic -DPIC /usr/src/regress/libexec/ld.so/lazy/libfoo/foo.c -o foo.so building shared foo library (version 0.0) cc -shared -Wl,-soname,libfoo.so.0.0 -fpic -o libfoo.so.0.0 `echo foo.so | tr ' ' '\n' | sort -R` ===> lazy/libbar cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/lazy/libbar/bar.c -o bar.o building standard bar library ranlib libbar.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/lazy/libbar/bar.c -o bar.po building profiled bar library ranlib libbar_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/lazy/libbar/bar.c -o bar.so building shared bar library (version 0.0) cc -shared -Wl,-soname,libbar.so.0.0 -fpic -o libbar.so.0.0 `echo bar.so | tr ' ' '\n' | sort -R` ===> lazy/prog ==== run-regress-prog ==== cc -O2 -pipe -MD -MP -DFOO=\"/usr/src/regress/libexec/ld.so/lazy/prog/../libfoo/obj/libfoo.so\" -c /usr/src/regress/libexec/ld.so/lazy/prog/prog.c cc -o prog prog.o ./prog loading: /usr/src/regress/libexec/ld.so/lazy/prog/../libfoo/obj/libfoo.so loaded: /usr/src/regress/libexec/ld.so/lazy/prog/../libfoo/obj/libfoo.so looking up foo found 0xd683790 - calling it loading /usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/obj/libbar.so loaded: /usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/obj/libbar.so bar done. ===> constructor ===> constructor/libaa c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/constructor/libaa/aa.C -o aa.o building standard aa library ranlib libaa.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/constructor/libaa/aa.C -o aa.so building shared aa library (version 2.0) cc -shared -Wl,-soname,libaa.so.2.0 -fpic -o libaa.so.2.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> constructor/libab c++ -O2 -pipe -g -MD -MP -I/usr/src/regress/libexec/ld.so/constructor/libab/../libaa -c /usr/src/regress/libexec/ld.so/constructor/libab/ab.C -o ab.o building standard ab library ranlib libab.a c++ -O2 -pipe -g -MD -MP -I/usr/src/regress/libexec/ld.so/constructor/libab/../libaa -c -fpic -DPIC /usr/src/regress/libexec/ld.so/constructor/libab/ab.C -o ab.so building shared ab library (version 2.0) c++ -shared -Wl,-soname,libab.so.2.0 -fpic -o libab.so.2.0 `echo ab.so | tr ' ' '\n' | sort -R` -L../libaa -laa ===> constructor/prog1 ==== run-regress-prog1 ==== c++ -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/constructor/prog1/../libab -c /usr/src/regress/libexec/ld.so/constructor/prog1/prog1.C c++ -L/usr/src/regress/libexec/ld.so/constructor/prog1/../libaa/obj -L/usr/src/regress/libexec/ld.so/constructor/prog1/../libab/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/constructor/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/constructor/prog1/../libab/obj -o prog1 prog1.o -lab -laa ./prog1 main ===> constructor/prog2 ==== run-regress-prog2 ==== c++ -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/constructor/prog2/../libab -c /usr/src/regress/libexec/ld.so/constructor/prog2/prog2.C c++ -L/usr/src/regress/libexec/ld.so/constructor/prog2/../libaa/obj -L/usr/src/regress/libexec/ld.so/constructor/prog2/../libab/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/constructor/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/constructor/prog2/../libab/obj -o prog2 prog2.o -laa -lab ./prog2 main ===> link-order ===> link-order/libnover cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/link-order/libnover/nover.c -o nover.o building standard test library ranlib libtest.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/link-order/libnover/nover.c -o nover.po building profiled test library ranlib libtest_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/link-order/libnover/nover.c -o nover.so building shared test library cc -shared -fpic -o libtest.so `lorder nover.so|tsort -q` ===> link-order/lib10 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/link-order/lib10/10.c -o 10.o building standard test library ranlib libtest.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/link-order/lib10/10.c -o 10.po building profiled test library ranlib libtest_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/link-order/lib10/10.c -o 10.so building shared test library (version 1.0) cc -shared -Wl,-soname,libtest.so.1.0 -fpic -o libtest.so.1.0 `echo 10.so | tr ' ' '\n' | sort -R` ===> link-order/lib11 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/link-order/lib11/11.c -o 11.o building standard test library ranlib libtest.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/link-order/lib11/11.c -o 11.po building profiled test library ranlib libtest_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/link-order/lib11/11.c -o 11.so building shared test library (version 1.1) cc -shared -Wl,-soname,libtest.so.1.1 -fpic -o libtest.so.1.1 `echo 11.so | tr ' ' '\n' | sort -R` ===> link-order/lib20 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/link-order/lib20/20.c -o 20.o building standard test library ranlib libtest.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/link-order/lib20/20.c -o 20.po building profiled test library ranlib libtest_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/link-order/lib20/20.c -o 20.so building shared test library (version 2.0) cc -shared -Wl,-soname,libtest.so.2.0 -fpic -o libtest.so.2.0 `echo 20.so | tr ' ' '\n' | sort -R` ===> link-order/prog ===> link-order/test ==== test-none ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/link-order/prog/prog.c cc -o prog prog.o sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog '%ERROR%' prog: could not dynamically link libtest ==== test-single ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/obj/libtest.so.1.0 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog 1.0 ==== test-minor-1 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/obj/libtest.so.1.0 /usr/src/regress/libexec/ld.so/link-order/test/../lib11/obj/libtest.so.1.1 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog 1.1 ==== test-minor-2 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/obj/libtest.so.1.0 /usr/src/regress/libexec/ld.so/link-order/test/../lib11/obj/libtest.so.1.1 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog 1.1 ==== test-major-1 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib11/obj/libtest.so.1.1 /usr/src/regress/libexec/ld.so/link-order/test/../lib20/obj/libtest.so.2.0 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog 2.0 ==== test-major-2 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib11/obj/libtest.so.1.1 /usr/src/regress/libexec/ld.so/link-order/test/../lib20/obj/libtest.so.2.0 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog 2.0 ==== test-nover ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../libnover/obj/libtest.so lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog none ==== test-nover-single-1 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../libnover/obj/libtest.so /usr/src/regress/libexec/ld.so/link-order/test/../lib10/obj/libtest.so.1.0 lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog none ==== test-nover-single-2 ==== cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/obj/libtest.so.1.0 /usr/src/regress/libexec/ld.so/link-order/test/../libnover/obj/libtest.so lib/ sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh /usr/src/regress/libexec/ld.so/link-order/test/../prog/obj/prog none ===> edgecases ===> edgecases/test1 ===> edgecases/test1/libaa_g cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_g/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_g/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_g/aa.c -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> edgecases/test1/libaa_b cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_b/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_b/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/edgecases/test1/libaa_b/aa.c -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> edgecases/test1/prog1 ==== run-regress-prog1 ==== cc -I/usr/src/regress/libexec/ld.so/edgecases/test1/prog1/../libac -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test1/prog1/main.c cc -L/usr/src/regress/libexec/ld.so/edgecases/test1/prog1/../libaa_g/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/edgecases/test1/prog1/../libaa_b/obj -o prog1 main.o -laa ./prog1 2>&1 | grep "undefined symbol 'libglobal'" prog1:./prog1: undefined symbol 'libglobal' Killed ./prog1 >/dev/null 2>&1 || echo "ld.so killed program, good"; ld.so killed program, good ===> edgecases/test2 ===> edgecases/test2/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test2/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/edgecases/test2/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/edgecases/test2/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> edgecases/test2/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test2/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/edgecases/test2/prog1/../libaa/obj -o prog1 main.o ./prog1 ! ./prog1 2>&1 | grep unresolvedWeakSymbol ===> edgecases/test3 ===> edgecases/test3/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test3/libbb/bb.c -o bb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/edgecases/test3/libbb/bb.c -o bb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/edgecases/test3/libbb/bb.c -o bb.so building shared bb library (version 1.0 ) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so | tr ' ' '\n' | sort -R` ===> edgecases/test3/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test3/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/edgecases/test3/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/edgecases/test3/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> edgecases/test3/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/edgecases/test3/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/edgecases/test3/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/edgecases/test3/prog1/../libbb/obj -o prog1 main.o ./prog1 ===> initfirst ===> initfirst/test1 ===> initfirst/test1/libif1 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test1/libif1/lib.c -o lib.o building standard if1 library ranlib libif1.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test1/libif1/lib.c -o lib.po building profiled if1 library ranlib libif1_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test1/libif1/lib.c -o lib.so building shared if1 library (version 1.0 ) cc -shared -Wl,-soname,libif1.so.1.0 -fpic -o libif1.so.1.0 `echo lib.so | tr ' ' '\n' | sort -R` -Wl,-zinitfirst ===> initfirst/test1/libif2 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test1/libif2/lib.c -o lib.o building standard if2 library ranlib libif2.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test1/libif2/lib.c -o lib.po building profiled if2 library ranlib libif2_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test1/libif2/lib.c -o lib.so building shared if2 library (version 1.0 ) cc -shared -Wl,-soname,libif2.so.1.0 -fpic -o libif2.so.1.0 `echo lib.so | tr ' ' '\n' | sort -R` -Wl,-zinitfirst ===> initfirst/test1/libif3 cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test1/libif3/lib.c -o lib.o building standard if3 library ranlib libif3.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test1/libif3/lib.c -o lib.po building profiled if3 library ranlib libif3_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test1/libif3/lib.c -o lib.so building shared if3 library (version 1.0 ) cc -shared -Wl,-soname,libif3.so.1.0 -fpic -o libif3.so.1.0 `echo lib.so | tr ' ' '\n' | sort -R` -Wl,-zinitfirst ===> initfirst/test1/libnormal cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test1/libnormal/lib.c -o lib.o building standard normal library ranlib libnormal.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test1/libnormal/lib.c -o lib.po building profiled normal library ranlib libnormal_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test1/libnormal/lib.c -o lib.so building shared normal library (version 1.0 ) cc -shared -Wl,-soname,libnormal.so.1.0 -fpic -o libnormal.so.1.0 `echo lib.so | tr ' ' '\n' | sort -R` ===> initfirst/test1/prog1 ==== do-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/main.c cc -Wl,-E -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -o prog1 main.o -lnormal -lif1 -lif2 ./prog1 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected1 - ==== do-prog2 ==== cc -Wl,-E -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -o prog2 main.o -lif1 -lnormal -lif2 ./prog2 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected2 - ==== do-prog3 ==== cc -Wl,-E -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -o prog3 main.o -lif1 -lif2 -lnormal ./prog3 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected3 - ==== do-prog4 ==== cc -Wl,-E -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif1/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif2/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libif3/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -L/usr/src/regress/libexec/ld.so/initfirst/test1/prog1/../libnormal/obj -o prog4 main.o -lif1 -lif2 -lif3 ./prog4 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected4 - ===> initfirst/test2 ===> initfirst/test2/libae c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/libae/ae.C -o ae.o building standard ae library ranlib libae.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test2/libae/ae.C -o ae.po building profiled ae library ranlib libae_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test2/libae/ae.C -o ae.so building shared ae library (version 0.0) cc -shared -Wl,-soname,libae.so.0.0 -fpic -o libae.so.0.0 `echo ae.so | tr ' ' '\n' | sort -R` ===> initfirst/test2/libad c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/libad/ad.C -o ad.o building standard ad library ranlib libad.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test2/libad/ad.C -o ad.po building profiled ad library ranlib libad_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test2/libad/ad.C -o ad.so building shared ad library (version 0.0) cc -shared -Wl,-soname,libad.so.0.0 -fpic -o libad.so.0.0 `echo ad.so | tr ' ' '\n' | sort -R` -Wl,-z,initfirst -L../libae -lae ===> initfirst/test2/libac c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/libac/ac.C -o ac.o building standard ac library ranlib libac.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test2/libac/ac.C -o ac.po building profiled ac library ranlib libac_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test2/libac/ac.C -o ac.so building shared ac library (version 0.0) cc -shared -Wl,-soname,libac.so.0.0 -fpic -o libac.so.0.0 `echo ac.so | tr ' ' '\n' | sort -R` -L../libad -lad ===> initfirst/test2/libab c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/libab/ab.C -o ab.o building standard ab library ranlib libab.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test2/libab/ab.C -o ab.po building profiled ab library ranlib libab_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test2/libab/ab.C -o ab.so building shared ab library (version 0.0) cc -shared -Wl,-soname,libab.so.0.0 -fpic -o libab.so.0.0 `echo ab.so | tr ' ' '\n' | sort -R` -Wl,-z,initfirst -L../libac -lac ===> initfirst/test2/libaa c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/libaa/aa.C -o aa.o building standard aa library ranlib libaa.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/initfirst/test2/libaa/aa.C -o aa.po building profiled aa library ranlib libaa_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/initfirst/test2/libaa/aa.C -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` -L../libab -lab ===> initfirst/test2/prog1 ==== run-regress-prog1 ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/prog1/prog1.C c++ -L/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libaa/obj -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libab/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libac/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libad/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog1/../libae/obj -o prog1 prog1.o -laa [ "`./prog1`" = "DBECAPpacebd" ] ===> initfirst/test2/prog2 ==== run-regress-prog2 ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/initfirst/test2/prog2/prog2.C c++ -L/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libaa/obj -Wl,--disable-new-dtags -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libab/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libac/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libad/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/initfirst/test2/prog2/../libae/obj -o prog2 prog2.o -laa [ "`./prog2`" = "DBECAacebd" ] ===> df_1_noopen ==== test ==== printf "\n\n\n\n" > emptyfile cc -o lib1.so emptyfile -fPIC -shared -Wl,-znodlopen cc -o lib2.so emptyfile -fPIC -shared -L. -l1 cc -o lib3.so emptyfile -fPIC -shared -L. -l2 cc -o dlopen /usr/src/regress/libexec/ld.so/df_1_noopen/dlopen.c cc -o dlopen1 /usr/src/regress/libexec/ld.so/df_1_noopen/dlopen.c -L. -l1 cc -o dlopen2 /usr/src/regress/libexec/ld.so/df_1_noopen/dlopen.c -L. -l2 cc -o dlopen3 /usr/src/regress/libexec/ld.so/df_1_noopen/dlopen.c -L. -l3 /bin/sh /usr/src/regress/libexec/ld.so/df_1_noopen/test.sh lib1.so: lib1.so passed passed passed passed passed passed passed passed lib2.so: lib2.so lib1.so passed passed passed passed passed passed passed passed lib3.so: lib3.so lib2.so lib1.so passed passed passed passed passed passed passed passed ===> randomdata ===> randomdata/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/randomdata/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/randomdata/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/randomdata/libaa/aa.c -o aa.so building shared aa library (version 0.0) cc -shared -Wl,-soname,libaa.so.0.0 -fpic -o libaa.so.0.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> randomdata/prog-dynamic ==== run-regress-prog ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/randomdata/prog-dynamic/../prog/prog.c cc -o prog prog.o -Wl,-rpath,/usr/src/regress/libexec/ld.so/randomdata/prog-dynamic/../libaa/obj -L/usr/src/regress/libexec/ld.so/randomdata/prog-dynamic/../libaa/obj -laa ./prog ===> randomdata/prog-static ==== run-regress-prog ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/randomdata/prog-static/../prog/prog.c cc -static -pie -o prog prog.o -L/usr/src/regress/libexec/ld.so/randomdata/prog-static/../libaa/obj -laa ./prog ===> randomdata/prog-pie ==== run-regress-prog ==== cc -O2 -pipe -fPIE -MD -MP -c /usr/src/regress/libexec/ld.so/randomdata/prog-pie/../prog/prog.c cc -pie -o prog prog.o -Wl,-rpath,/usr/src/regress/libexec/ld.so/randomdata/prog-pie/../libaa/obj -L/usr/src/regress/libexec/ld.so/randomdata/prog-pie/../libaa/obj -laa ./prog ===> randomdata/ld.so-cookie ==== run-regress-test ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/randomdata/ld.so-cookie/test.c cc -o test test.o ./test ===> subst ===> subst/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/subst/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/subst/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/subst/libaa/aa.c -o aa.so building shared aa library (version 1.0 ) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> subst/prog1 ==== test ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/subst/prog1/../libaa -c /usr/src/regress/libexec/ld.so/subst/prog1/main.c cc -Wl,-z,origin,-rpath,'$ORIGIN/${OSNAME}/$OSREL/${PLATFORM}' -L/usr/src/regress/libexec/ld.so/subst/prog1/../libaa/obj -o prog1 main.o -laa mkdir -p "OpenBSD/`uname -r`/`uname -m`" cp /usr/src/regress/libexec/ld.so/subst/prog1/../libaa/obj/libaa.so* "OpenBSD/`uname -r`/`uname -m`/" ./prog1 ===> subst/prog2 ==== test ==== cc -O2 -pipe -MD -MP -I/usr/src/regress/libexec/ld.so/subst/prog2/../libaa -c /usr/src/regress/libexec/ld.so/subst/prog2/main.c cc -Wl,-z,origin,-rpath,'$ORIGIN/../lib' -L/usr/src/regress/libexec/ld.so/subst/prog2/../libaa/obj -o prog2 main.o -laa mkdir -p lib bin bin2 bin3/bin cp /usr/src/regress/libexec/ld.so/subst/prog2/../libaa/obj/libaa.so* lib cp ./prog2 bin bin/prog2 ln -sf ../bin bin2/bin bin2/bin/prog2 ln -sf $(realpath bin/prog2) bin3/bin/prog2 bin3/bin/prog2 ===> dependencies ===> dependencies/order1 ===> dependencies/order1/libbb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dependencies/order1/libbb/bb.c -o bb.o building standard bb library ranlib libbb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dependencies/order1/libbb/bb.c -o bb.po building profiled bb library ranlib libbb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dependencies/order1/libbb/bb.c -o bb.so building shared bb library (version 1.0) cc -shared -Wl,-soname,libbb.so.1.0 -fpic -o libbb.so.1.0 `echo bb.so | tr ' ' '\n' | sort -R` ===> dependencies/order1/libaa cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/dependencies/order1/libaa/aa.c -o aa.o building standard aa library ranlib libaa.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/dependencies/order1/libaa/aa.c -o aa.po building profiled aa library ranlib libaa_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/dependencies/order1/libaa/aa.c -o aa.so building shared aa library (version 1.0) cc -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dependencies/order1/libaa/../libbb/obj -L/usr/src/regress/libexec/ld.so/dependencies/order1/libaa/../libbb/obj -lbb ===> dependencies/order1/prog1 ==== run-regress-prog1 ==== cc -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/dependencies/order1/prog1/main.c cc -Wl,-E -Wl,-rpath,/usr/src/regress/libexec/ld.so/dependencies/order1/prog1/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/dependencies/order1/prog1/../libbb/obj -o prog1 main.o ./prog1 ===> init-env ===> init-env/libaa c++ -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/init-env/libaa/aa.C -o aa.o building standard aa library ranlib libaa.a c++ -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/init-env/libaa/aa.C -o aa.po building profiled aa library ranlib libaa_p.a c++ -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/init-env/libaa/aa.C -o aa.so building shared aa library (version 1.0) c++ -shared -Wl,-soname,libaa.so.1.0 -fpic -o libaa.so.1.0 `echo aa.so | tr ' ' '\n' | sort -R` ===> init-env/prog ==== run-regress-prog ==== c++ -O2 -pipe -MD -MP -c /usr/src/regress/libexec/ld.so/init-env/prog/prog.c c++: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated] c++ -L/usr/src/regress/libexec/ld.so/init-env/prog/../libaa/obj -Wl,-rpath,/usr/src/regress/libexec/ld.so/init-env/prog/../libaa/obj -o prog prog.o -laa ./prog OK: PATH is set OK: __progname is set OK: main's 3rd arg == environ OK: env var set by .so init function set ===> nodelete ===> nodelete/liba cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/nodelete/liba/liba.c -o liba.o building standard a library ranlib liba.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/nodelete/liba/liba.c -o liba.po building profiled a library ranlib liba_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/nodelete/liba/liba.c -o liba.so building shared a library (version 0.0) cc -shared -Wl,-soname,liba.so.0.0 -fpic -o liba.so.0.0 `echo liba.so | tr ' ' '\n' | sort -R` ===> nodelete/test1 ==== run-regress-test1 ==== cc -O2 -pipe -DLIBNAME=\"/usr/src/regress/libexec/ld.so/nodelete/test1/../liba/obj/liba.so.0.0\" -MD -MP -c /usr/src/regress/libexec/ld.so/nodelete/test1/test1.c cc -o test1 test1.o ./test1 symbol absent: function opening symbol present: function closing symbol present: function ===> noload ===> noload/liba cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/noload/liba/liba.c -o liba.o building standard a library ranlib liba.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/noload/liba/liba.c -o liba.po building profiled a library ranlib liba_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/noload/liba/liba.c -o liba.so building shared a library (version 0.0) cc -shared -Wl,-soname,liba.so.0.0 -fpic -o liba.so.0.0 `echo liba.so | tr ' ' '\n' | sort -R` ===> noload/libb cc -O2 -pipe -g -MD -MP -c /usr/src/regress/libexec/ld.so/noload/libb/libb.c -o libb.o building standard b library ranlib libb.a cc -O2 -pipe -g -MD -MP -c -p /usr/src/regress/libexec/ld.so/noload/libb/libb.c -o libb.po building profiled b library ranlib libb_p.a cc -O2 -pipe -g -MD -MP -c -fpic -DPIC /usr/src/regress/libexec/ld.so/noload/libb/libb.c -o libb.so building shared b library (version 0.0) cc -shared -Wl,-soname,libb.so.0.0 -fpic -o libb.so.0.0 `echo libb.so | tr ' ' '\n' | sort -R` ===> noload/test1 ==== run-regress ==== cc -O2 -pipe -DLIBANAME=\"/usr/src/regress/libexec/ld.so/noload/test1/../liba/obj/liba.so.0.0\" -DLIBBNAME=\"/usr/src/regress/libexec/ld.so/noload/test1/../libb/obj/libb.so.0.0\" -MD -MP -c /usr/src/regress/libexec/ld.so/noload/test1/test1.c cc -o test1 test1.o if ./test1 | grep found; then echo failed; exit 1; fi LD_PRELOAD=/usr/src/regress/libexec/ld.so/noload/test1/../liba/obj/liba.so.0.0 ./test1 | grep /usr/src/regress/libexec/ld.so/noload/test1/../liba/obj/liba.so.0.0.found /usr/src/regress/libexec/ld.so/noload/test1/../liba/obj/liba.so.0.0 found LD_PRELOAD=/usr/src/regress/libexec/ld.so/noload/test1/../libb/obj/libb.so.0.0 ./test1 | grep /usr/src/regress/libexec/ld.so/noload/test1/../libb/obj/libb.so.0.0.found /usr/src/regress/libexec/ld.so/noload/test1/../libb/obj/libb.so.0.0 found ===> ldd ==== empty ==== : >empty.in ldd empty.in 2>&1 | tee empty.out | grep -q 'incomplete ELF header' ==== short ==== dd if=/usr/bin/ldd of=short.in count=128 bs=1 status=none ldd short.in 2>&1 | tee short.out | grep -q 'incomplete program header' PASS libexec/ld.so Duration 1m16.44s