osprey/driver/objects.c File Reference

#include <alloca.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include "basic.h"
#include "string_utils.h"
#include "objects.h"
#include "option_names.h"
#include "options.h"
#include "option_seen.h"
#include "opt_actions.h"
#include "get_options.h"
#include "errors.h"
#include "lang_defs.h"
#include "phases.h"
#include "file_names.h"
#include "file_utils.h"
#include "pathscale_defs.h"
#include "run.h"
#include <elf.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <stdint.h>

Include dependency graph for objects.c:

Go to the source code of this file.

Data Types

type  prof_lib

Defines

#define ET_SGI_IR   (ET_LOPROC + 0)

Functions/Subroutines

static int check_for_whirl (char *name)
void init_objects (void)
void find_full_path_of_gcc_file (char *const gcc_name, char *const comp_name, char *full_path, int full_path_len)
char * find_obj_path (char *objname)
char * find_crt_path (char *crtname)
static void init_given_crt_path (char *crtname, char *prog_name, char *tmp_name)
void init_stdc_plus_plus_path (void)
void init_crt_paths (void)
boolean is_object_option (int flag)
int prof_lib_exists (const char *lib)
void add_library (string_list_t *list, const char *lib)
void add_object (int flag, char *arg)
void add_ar_objects (char *arg)
void append_objects_to_list (string_list_t *list)
void append_cxx_prelinker_objects_to_list (string_list_t *list)
void append_ar_objects_to_list (string_list_t *list)
void append_libraries_to_list (string_list_t *list)
void dump_objects (void)
void add_library_dir (char *path)
string_list_tget_library_dirs (void)
void add_library_options (void)
boolean is_maybe_linker_option (int flag)
void add_maybe_linker_option (int flag)
void finalize_maybe_linker_options (boolean is_linker)

Variables

string_list_tobjects
string_list_tlib_objects
static string_list_tcxx_prelinker_objects
static string_list_tar_objects
static string_list_tlibrary_dirs
static struct prof_lib prof_libs []


Define Documentation

#define ET_SGI_IR   (ET_LOPROC + 0)

Definition at line 703 of file objects.c.


Function Documentation

void add_ar_objects ( char *  arg  ) 

Definition at line 483 of file objects.c.

References add_string().

Referenced by main().

void add_library ( string_list_t list,
const char *  lib 
)

void add_library_dir ( char *  path  ) 

Definition at line 542 of file objects.c.

References add_string().

Referenced by add_file_args(), init_crt_paths(), init_given_crt_path(), and init_stdc_plus_plus_path().

void add_library_options ( void   ) 

void add_maybe_linker_option ( int  flag  ) 

Definition at line 620 of file objects.c.

Referenced by main().

void add_object ( int  flag,
char *  arg 
)

void append_ar_objects_to_list ( string_list_t list  ) 

Definition at line 520 of file objects.c.

References append_string_lists().

Referenced by run_ar().

void append_cxx_prelinker_objects_to_list ( string_list_t list  ) 

Definition at line 514 of file objects.c.

References append_string_lists().

void append_libraries_to_list ( string_list_t list  ) 

void append_objects_to_list ( string_list_t list  ) 

static int check_for_whirl ( char *  name  )  [static]

void dump_objects ( void   ) 

Definition at line 535 of file objects.c.

References print_string_list(), and printf().

void finalize_maybe_linker_options ( boolean  is_linker  ) 

char* find_crt_path ( char *  crtname  ) 

void find_full_path_of_gcc_file ( char *const   gcc_name,
char *const   comp_name,
char *  full_path,
int  full_path_len 
)

char* find_obj_path ( char *  objname  ) 

Definition at line 138 of file objects.c.

References buf, file_exists(), get_phase_dir(), P_alt_library, P_be, P_library, P_startup, sprintf(), and string_copy().

Referenced by add_file_args().

string_list_t* get_library_dirs ( void   ) 

Definition at line 548 of file objects.c.

Referenced by add_libgcc_s().

void init_crt_paths ( void   ) 

static void init_given_crt_path ( char *  crtname,
char *  prog_name,
char *  tmp_name 
) [static]

Definition at line 220 of file objects.c.

References add_library_dir(), buf, debug, drop_path(), find_crt_path(), fprintf(), p, and strncpy().

Referenced by init_crt_paths(), and init_stdc_plus_plus_path().

void init_objects ( void   ) 

Definition at line 77 of file objects.c.

References init_string_list().

Referenced by main().

void init_stdc_plus_plus_path ( void   ) 

boolean is_maybe_linker_option ( int  flag  ) 

Definition at line 604 of file objects.c.

References FALSE.

Referenced by main().

boolean is_object_option ( int  flag  ) 

Definition at line 304 of file objects.c.

References FALSE, and TRUE.

Referenced by copy_phase_options(), main(), and mark_used().

int prof_lib_exists ( const char *  lib  ) 

Definition at line 348 of file objects.c.

References ABI_N32, access, asprintf(), free(), path, and R_OK.

Referenced by add_library(), and postprocess_ld_args().


Variable Documentation

Definition at line 71 of file objects.c.

Definition at line 70 of file objects.c.

Definition at line 69 of file objects.c.

Definition at line 72 of file objects.c.

Definition at line 68 of file objects.c.

Initial value:

 {
    
    { "BrokenLocale", 0 },
    { "anl", 0 },
    { "c", 0 },
    { "crypt", 0 },
    { "dl", 0 },
    { "m", 0 },
    { "nsl", 0 },
    { "pthread", 0 },
    { "resolv", 0 },
    { "rpcsvc", 0 },
    { "rt", 0 },
    { "util", 0 },
    
    { "instr", 1 },
    { "msgi", 1 },
    { "mv", 1 },
    { "fortran", 1 },
    
    { NULL, 0 },
}

Definition at line 325 of file objects.c.


Generated on Wed Apr 8 15:07:18 2009 for Open64 by  doxygen 1.5.6