389 Word ofl_dtflags; /* DT_FLAGS entries */
390 Os_desc *ofl_ossyminfo; /* .SUNW_syminfo output section */
391 Half ofl_parexpnndx; /* -z nopartial section index */
392 /* Ref. at perform_outreloc() in */
393 /* libld/{mach}/machrel.c */
394 Xword *ofl_checksum; /* DT_CHECKSUM value address */
395 char *ofl_depaudit; /* dependency auditing required (-P) */
396 char *ofl_audit; /* object auditing required (-p) */
397 Alist *ofl_symfltrs; /* per-symbol filtees and their */
398 Alist *ofl_dtsfltrs; /* associated .dynamic/.dynstrs */
399 Objcapset ofl_ocapset; /* object capabilities */
400 Lm_list *ofl_lml; /* runtime link-map list */
401 Gottable *ofl_gottable; /* debugging got information */
402 Rlxrel_cache ofl_sr_cache; /* Cache last result from */
403 /* sloppy_comdat_reloc() */
404 APlist *ofl_maptext; /* mapfile added text sections */
405 APlist *ofl_mapdata; /* mapfile added data sections */
406 avl_tree_t *ofl_wrap; /* -z wrap symbols */
407 ofl_guideflag_t ofl_guideflags; /* -z guide flags */
408 APlist *ofl_assdeflib; /* -z assert-deflib exceptions */
409 };
410
411 #define FLG_OF_DYNAMIC 0x00000001 /* generate dynamic output module */
412 #define FLG_OF_STATIC 0x00000002 /* generate static output module */
413 #define FLG_OF_EXEC 0x00000004 /* generate an executable */
414 #define FLG_OF_RELOBJ 0x00000008 /* generate a relocatable object */
415 #define FLG_OF_SHAROBJ 0x00000010 /* generate a shared object */
416 #define FLG_OF_BFLAG 0x00000020 /* do no special plt building: -b */
417 #define FLG_OF_IGNENV 0x00000040 /* ignore LD_LIBRARY_PATH: -i */
418 #define FLG_OF_STRIP 0x00000080 /* strip output: -s */
419 #define FLG_OF_NOWARN 0x00000100 /* disable symbol warnings: -t */
420 #define FLG_OF_NOUNDEF 0x00000200 /* allow no undefined symbols: -zdefs */
421 #define FLG_OF_PURETXT 0x00000400 /* allow no text relocations: -ztext */
422 #define FLG_OF_GENMAP 0x00000800 /* generate a memory map: -m */
423 #define FLG_OF_DYNLIBS 0x00001000 /* dynamic input allowed: -Bdynamic */
424 #define FLG_OF_SYMBOLIC 0x00002000 /* bind global symbols: -Bsymbolic */
425 #define FLG_OF_ADDVERS 0x00004000 /* add version stamp: -Qy */
426 #define FLG_OF_NOLDYNSYM 0x00008000 /* -znoldynsym set */
427 #define FLG_OF_IS_ORDER 0x00010000 /* input section ordering within a */
428 /* segment is required */
|
389 Word ofl_dtflags; /* DT_FLAGS entries */
390 Os_desc *ofl_ossyminfo; /* .SUNW_syminfo output section */
391 Half ofl_parexpnndx; /* -z nopartial section index */
392 /* Ref. at perform_outreloc() in */
393 /* libld/{mach}/machrel.c */
394 Xword *ofl_checksum; /* DT_CHECKSUM value address */
395 char *ofl_depaudit; /* dependency auditing required (-P) */
396 char *ofl_audit; /* object auditing required (-p) */
397 Alist *ofl_symfltrs; /* per-symbol filtees and their */
398 Alist *ofl_dtsfltrs; /* associated .dynamic/.dynstrs */
399 Objcapset ofl_ocapset; /* object capabilities */
400 Lm_list *ofl_lml; /* runtime link-map list */
401 Gottable *ofl_gottable; /* debugging got information */
402 Rlxrel_cache ofl_sr_cache; /* Cache last result from */
403 /* sloppy_comdat_reloc() */
404 APlist *ofl_maptext; /* mapfile added text sections */
405 APlist *ofl_mapdata; /* mapfile added data sections */
406 avl_tree_t *ofl_wrap; /* -z wrap symbols */
407 ofl_guideflag_t ofl_guideflags; /* -z guide flags */
408 APlist *ofl_assdeflib; /* -z assert-deflib exceptions */
409 int ofl_aslr; /* -z aslr, -1 is disable, 1 is enable */
410 /*
411 * XXX: I'd rather this be ofl_secflags, -z secflags, and
412 * DT_ILL_SECFLAGS, with ASLR and -z aslr for compat. I think? maybe?
413 */
414 };
415
416 #define FLG_OF_DYNAMIC 0x00000001 /* generate dynamic output module */
417 #define FLG_OF_STATIC 0x00000002 /* generate static output module */
418 #define FLG_OF_EXEC 0x00000004 /* generate an executable */
419 #define FLG_OF_RELOBJ 0x00000008 /* generate a relocatable object */
420 #define FLG_OF_SHAROBJ 0x00000010 /* generate a shared object */
421 #define FLG_OF_BFLAG 0x00000020 /* do no special plt building: -b */
422 #define FLG_OF_IGNENV 0x00000040 /* ignore LD_LIBRARY_PATH: -i */
423 #define FLG_OF_STRIP 0x00000080 /* strip output: -s */
424 #define FLG_OF_NOWARN 0x00000100 /* disable symbol warnings: -t */
425 #define FLG_OF_NOUNDEF 0x00000200 /* allow no undefined symbols: -zdefs */
426 #define FLG_OF_PURETXT 0x00000400 /* allow no text relocations: -ztext */
427 #define FLG_OF_GENMAP 0x00000800 /* generate a memory map: -m */
428 #define FLG_OF_DYNLIBS 0x00001000 /* dynamic input allowed: -Bdynamic */
429 #define FLG_OF_SYMBOLIC 0x00002000 /* bind global symbols: -Bsymbolic */
430 #define FLG_OF_ADDVERS 0x00004000 /* add version stamp: -Qy */
431 #define FLG_OF_NOLDYNSYM 0x00008000 /* -znoldynsym set */
432 #define FLG_OF_IS_ORDER 0x00010000 /* input section ordering within a */
433 /* segment is required */
|