equal
deleted
inserted
replaced
25 # |
25 # |
26 |
26 |
27 ## |
27 ## |
28 ## @test Test7107135.sh |
28 ## @test Test7107135.sh |
29 ## @bug 7107135 |
29 ## @bug 7107135 |
|
30 ## @bug 8021296 |
30 ## @summary Stack guard pages lost after loading library with executable stack. |
31 ## @summary Stack guard pages lost after loading library with executable stack. |
31 ## @run shell Test7107135.sh |
32 ## @run shell Test7107135.sh |
32 ## |
33 ## |
33 |
34 |
34 if [ "${TESTSRC}" = "" ] |
35 if [ "${TESTSRC}" = "" ] |
43 # set platform-dependent variables |
44 # set platform-dependent variables |
44 OS=`uname -s` |
45 OS=`uname -s` |
45 case "$OS" in |
46 case "$OS" in |
46 Linux) |
47 Linux) |
47 echo "Testing on Linux" |
48 echo "Testing on Linux" |
|
49 gcc_cmd=`which gcc` |
|
50 if [ "x$gcc_cmd" == "x" ]; then |
|
51 echo "WARNING: gcc not found. Cannot execute test." 2>&1 |
|
52 exit 0; |
|
53 fi |
48 ;; |
54 ;; |
49 *) |
55 *) |
50 NULL=NUL |
56 NULL=NUL |
51 PS=";" |
57 PS=";" |
52 FS="\\" |
58 FS="\\" |
60 THIS_DIR=. |
66 THIS_DIR=. |
61 |
67 |
62 cp ${TESTSRC}${FS}*.java ${THIS_DIR} |
68 cp ${TESTSRC}${FS}*.java ${THIS_DIR} |
63 ${TESTJAVA}${FS}bin${FS}javac *.java |
69 ${TESTJAVA}${FS}bin${FS}javac *.java |
64 |
70 |
65 gcc -fPIC -shared -c -o test.o -I${TESTJAVA}${FS}include -I${TESTJAVA}${FS}include${FS}linux ${TESTSRC}${FS}test.c |
71 $gcc_cmd -fPIC -shared -c -o test.o \ |
|
72 -I${TESTJAVA}${FS}include -I${TESTJAVA}${FS}include${FS}linux \ |
|
73 ${TESTSRC}${FS}test.c |
|
74 |
66 ld -shared -z execstack -o libtest-rwx.so test.o |
75 ld -shared -z execstack -o libtest-rwx.so test.o |
67 ld -shared -z noexecstack -o libtest-rw.so test.o |
76 ld -shared -z noexecstack -o libtest-rw.so test.o |
68 |
77 |
69 |
78 |
70 LD_LIBRARY_PATH=${THIS_DIR} |
79 LD_LIBRARY_PATH=${THIS_DIR} |