# GCC Objective-C testsuite that uses the `dg.exp' driver. # Copyright (C) 1997-2017 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GCC; see the file COPYING3. If not see # . # Load support procs. load_lib objc-dg.exp load_lib target-libpath.exp # If a testcase doesn't have special options, use these. global DEFAULT_CFLAGS if ![info exists DEFAULT_CFLAGS] then { set DEFAULT_CFLAGS "-fgnu-runtime" } # Initialize `dg'. dg-init # # gnu-encoding tests # set tstobjdir "$tmpdir/objc.dg-struct-layout-encoding-1" set generator "$tmpdir/objc.dg-struct-layout-encoding-1_generate" set generator_src "$srcdir/$subdir/struct-layout-encoding-1_generate.c" set generator_src "$generator_src $srcdir/$subdir/generate-random.c" set generator_src "$generator_src $srcdir/$subdir/generate-random_r.c" set generator_cmd "-o $generator $generator_src" # Temporarily switch to the environment of the host compiler. restore_ld_library_path_env_vars set status [remote_exec build "$HOSTCC $HOSTCFLAGS $generator_cmd"] set status [lindex $status 0] set_ld_library_path_env_vars if { $status == 0 } then { file delete -force $tstobjdir file mkdir $tstobjdir set generator_args "-s $srcdir/$subdir -d $tstobjdir" # set generator_args "$generator_args -n 15000" set status [remote_exec host "$generator $generator_args"] set status [lindex $status 0] if { $status == 0 } then { foreach src [lsort [find $tstobjdir *_main.m]] { # If we're only testing specific files and this isn't one # of them, skip it. if ![runtest_file_p $runtests $src] then { continue } gcc_parallel_test_enable 0 dg-runtest $src "" $DEFAULT_CFLAGS gcc_parallel_test_enable 1 } } else { warning "Could not execute objc.dg/gnu-encoding/struct-layout-encoding-1 generator" } } else { warning "Could not compile objc.dg/gnu-encoding/struct-layout-encoding-1 generator" } # All done. dg-finish