1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Compilation tools and libraries for ELF
8 HOMEPAGE= https://sourceforge.net/p/elftoolchain/wiki/Home/
12 SITES[main]= SF/elftoolchain/Sources/elftoolchain-0.7.1
13 DISTFILE[1]= elftoolchain-0.7.1.tar.bz2:main
15 SPKGS[standard]= complete
19 OPTIONS_AVAILABLE= none
20 OPTIONS_STANDARD= none
22 EXRUN[tools]= elftoolchain:libraries:standard
26 LICENSE= BSD2CLAUSE:libraries
27 LICENSE_FILE= BSD2CLAUSE:{{WRKDIR}}/LICENSE
28 LICENSE_AWK= BSD2CLAUSE:"^$$"
29 LICENSE_SOURCE= BSD2CLAUSE:{{WRKSRC}}/libelf/libelf.h
32 SUB_FILES= elftc_version.c
33 SUB_LIST= VERSION=0.7.1
35 CFLAGS= -Wno-error=sign-conversion
37 -Wno-error=unused-but-set-variable
38 -Wno-error=old-style-definition
39 -Wno-error=shift-negative-value
40 CMAKE_ARGS= -DRAVDEST:STRING="{{STAGEDIR}}"
43 ${MV} ${WRKDIR}/elftc_version.c ${WRKSRC}/libelftc/
46 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/*
47 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so
50 ${CP} ${FILESDIR}/top_CMakeLists.txt ${WRKSRC}/CMakeLists.txt
51 ${CP} ${FILESDIR}/libelf_CMakeLists.txt ${WRKSRC}/libelf/CMakeLists.txt
52 ${CP} ${FILESDIR}/libdwarf_CMakeLists.txt ${WRKSRC}/libdwarf/CMakeLists.txt
53 ${CP} ${FILESDIR}/libpe_CMakeLists.txt ${WRKSRC}/libpe/CMakeLists.txt
54 ${CP} ${FILESDIR}/libelftc_CMakeLists.txt ${WRKSRC}/libelftc/CMakeLists.txt
55 .for prog in addr2line readelf brandelf cxxfilt elfdump findtextrel \
57 # todo elfcopy/strip/mac ar/ranlib ld
58 ${CP} ${FILESDIR}/${prog}_CMakeLists.txt ${WRKSRC}/${prog}/CMakeLists.txt
62 ${CP} ${FILESDIR}/sun_err.h ${WRKSRC}/common/
63 .for prog in nm brandelf cxxfilt elfdump size addr2line \
64 findtextrel readelf strings
65 ${REINPLACE_CMD} -e '/<err.h>/d' \
66 -e 's|^ELFTC_VCSID.*|#include <sun_err.h>|' \
67 ${WRKSRC}/${prog}/${prog}.c
70 [FILE:369:descriptions/desc.libraries]
71 A BSD-licensed implementation of compilation tools (nm, ar, as, ld,
72 etc.) for the ELF object format.
74 This release contains BSD-licensed implementations of the "libdwarf"
75 and "libelf" libraries.
77 The release also contains API and utility reference documentation
78 (300+ manual entries in all), and contains test suites for some of
79 these released utilities and libraries.
82 [FILE:334:descriptions/desc.tools]
83 A BSD-licensed implementation of compilation tools (nm, ar, as, ld,
84 etc.) for the ELF object format.
86 This release contains BSD-licensed implementations of the "addr2line",
87 "ar", "brandelf", "c++filt", "elfcopy", "elfdump", "findtextrel", "mcs",
88 "nm", "ranlib", "readelf", "size", "strings" and "strip" program
89 development utilities.
93 44f14591fcf21294387215dd7562f3fb4bec2f42f476cf32420a6bbabb2bd2b5 5361427 elftoolchain-0.7.1.tar.bz2
96 [FILE:8716:manifests/plist.libraries]
129 dwarf_add_AT_comp_dir.3.gz
130 dwarf_add_AT_const_value_signedint.3.gz
131 dwarf_add_AT_const_value_string.3.gz
132 dwarf_add_AT_const_value_unsignedint.3.gz
133 dwarf_add_AT_dataref.3.gz
134 dwarf_add_AT_flag.3.gz
135 dwarf_add_AT_location_expr.3.gz
136 dwarf_add_AT_name.3.gz
137 dwarf_add_AT_producer.3.gz
138 dwarf_add_AT_ref_address.3.gz
139 dwarf_add_AT_reference.3.gz
140 dwarf_add_AT_signed_const.3.gz
141 dwarf_add_AT_string.3.gz
142 dwarf_add_AT_targ_address.3.gz
143 dwarf_add_AT_targ_address_b.3.gz
144 dwarf_add_AT_unsigned_const.3.gz
145 dwarf_add_arange.3.gz
146 dwarf_add_arange_b.3.gz
147 dwarf_add_die_to_debug.3.gz
148 dwarf_add_directory_decl.3.gz
149 dwarf_add_expr_addr.3.gz
150 dwarf_add_expr_addr_b.3.gz
151 dwarf_add_expr_gen.3.gz
152 dwarf_add_fde_inst.3.gz
153 dwarf_add_file_decl.3.gz
154 dwarf_add_frame_cie.3.gz
155 dwarf_add_frame_fde.3.gz
156 dwarf_add_frame_fde_b.3.gz
157 dwarf_add_funcname.3.gz
158 dwarf_add_line_entry.3.gz
159 dwarf_add_pubname.3.gz
160 dwarf_add_typename.3.gz
161 dwarf_add_varname.3.gz
162 dwarf_add_weakname.3.gz
163 dwarf_arrayorder.3.gz
166 dwarf_attroffset.3.gz
167 dwarf_attrval_flag.3.gz
168 dwarf_attrval_signed.3.gz
169 dwarf_attrval_string.3.gz
170 dwarf_attrval_unsigned.3.gz
177 dwarf_die_CU_offset.3.gz
178 dwarf_die_CU_offset_range.3.gz
179 dwarf_die_abbrev_code.3.gz
184 dwarf_end_macro_file.3.gz
187 dwarf_expand_frame_instructions.3.gz
188 dwarf_expr_current_offset.3.gz
189 dwarf_expr_into_block.3.gz
190 dwarf_fde_cfa_offset.3.gz
191 dwarf_fde_cie_list_dealloc.3.gz
192 dwarf_find_macro_value_start.3.gz
196 dwarf_formexprloc.3.gz
201 dwarf_formstring.3.gz
203 dwarf_func_cu_offset.3.gz
204 dwarf_func_die_offset.3.gz
205 dwarf_func_name_offsets.3.gz
207 dwarf_funcs_dealloc.3.gz
208 dwarf_get_ACCESS_name.3.gz
209 dwarf_get_ATE_name.3.gz
210 dwarf_get_AT_name.3.gz
211 dwarf_get_CC_name.3.gz
212 dwarf_get_CFA_name.3.gz
213 dwarf_get_CHILDREN_name.3.gz
214 dwarf_get_DSC_name.3.gz
215 dwarf_get_DS_name.3.gz
216 dwarf_get_EH_name.3.gz
217 dwarf_get_END_name.3.gz
218 dwarf_get_FORM_name.3.gz
219 dwarf_get_ID_name.3.gz
220 dwarf_get_INL_name.3.gz
221 dwarf_get_LANG_name.3.gz
222 dwarf_get_LNE_name.3.gz
223 dwarf_get_LNS_name.3.gz
224 dwarf_get_MACINFO_name.3.gz
225 dwarf_get_OP_name.3.gz
226 dwarf_get_ORD_name.3.gz
227 dwarf_get_TAG_name.3.gz
228 dwarf_get_VIRTUALITY_name.3.gz
229 dwarf_get_VIS_name.3.gz
230 dwarf_get_abbrev.3.gz
231 dwarf_get_abbrev_children_flag.3.gz
232 dwarf_get_abbrev_code.3.gz
233 dwarf_get_abbrev_entry.3.gz
234 dwarf_get_abbrev_tag.3.gz
235 dwarf_get_address_size.3.gz
236 dwarf_get_arange.3.gz
237 dwarf_get_arange_cu_header_offset.3.gz
238 dwarf_get_arange_info.3.gz
239 dwarf_get_aranges.3.gz
240 dwarf_get_cie_index.3.gz
241 dwarf_get_cie_info.3.gz
242 dwarf_get_cie_of_fde.3.gz
243 dwarf_get_cu_die_offset.3.gz
244 dwarf_get_cu_die_offset_given_cu_header_offset.3.gz
245 dwarf_get_cu_die_offset_given_cu_header_offset_b.3.gz
246 dwarf_get_die_infotypes_flag.3.gz
248 dwarf_get_fde_at_pc.3.gz
249 dwarf_get_fde_info_for_all_regs.3.gz
250 dwarf_get_fde_info_for_all_regs3.3.gz
251 dwarf_get_fde_info_for_cfa_reg3.3.gz
252 dwarf_get_fde_info_for_reg.3.gz
253 dwarf_get_fde_info_for_reg3.3.gz
254 dwarf_get_fde_instr_bytes.3.gz
255 dwarf_get_fde_list.3.gz
256 dwarf_get_fde_list_eh.3.gz
258 dwarf_get_fde_range.3.gz
259 dwarf_get_form_class.3.gz
261 dwarf_get_globals.3.gz
262 dwarf_get_loclist_entry.3.gz
263 dwarf_get_macro_details.3.gz
264 dwarf_get_pubtypes.3.gz
265 dwarf_get_ranges.3.gz
266 dwarf_get_ranges_a.3.gz
267 dwarf_get_relocation_info.3.gz
268 dwarf_get_relocation_info_count.3.gz
269 dwarf_get_section_bytes.3.gz
270 dwarf_get_section_max_offsets.3.gz
271 dwarf_get_section_max_offsets_b.3.gz
276 dwarf_global_cu_offset.3.gz
277 dwarf_global_die_offset.3.gz
278 dwarf_global_formref.3.gz
279 dwarf_global_name_offsets.3.gz
280 dwarf_globals_dealloc.3.gz
287 dwarf_line_srcfileno.3.gz
289 dwarf_linebeginstatement.3.gz
291 dwarf_lineendsequence.3.gz
295 dwarf_lne_end_sequence.3.gz
296 dwarf_lne_set_address.3.gz
298 dwarf_loclist_from_expr.3.gz
299 dwarf_loclist_from_expr_b.3.gz
305 dwarf_next_cu_header.3.gz
306 dwarf_next_cu_header_b.3.gz
307 dwarf_next_cu_header_c.3.gz
308 dwarf_next_types_section.3.gz
309 dwarf_object_finish.3.gz
310 dwarf_object_init.3.gz
313 dwarf_producer_init.3.gz
314 dwarf_producer_init_b.3.gz
315 dwarf_producer_set_isa.3.gz
316 dwarf_pubtype_cu_offset.3.gz
317 dwarf_pubtype_die_offset.3.gz
318 dwarf_pubtype_name_offsets.3.gz
319 dwarf_pubtypename.3.gz
320 dwarf_pubtypes_dealloc.3.gz
321 dwarf_ranges_dealloc.3.gz
322 dwarf_reset_section_bytes.3.gz
323 dwarf_set_frame_cfa_value.3.gz
324 dwarf_set_frame_rule_initial_value.3.gz
325 dwarf_set_frame_rule_table_size.3.gz
326 dwarf_set_frame_same_value.3.gz
327 dwarf_set_frame_undefined_value.3.gz
328 dwarf_set_reloc_application.3.gz
330 dwarf_seterrhand.3.gz
332 dwarf_siblingof_b.3.gz
336 dwarf_srclines_dealloc.3.gz
337 dwarf_start_macro_file.3.gz
339 dwarf_transform_to_disk_form.3.gz
340 dwarf_type_cu_offset.3.gz
341 dwarf_type_die_offset.3.gz
342 dwarf_type_name_offsets.3.gz
344 dwarf_types_dealloc.3.gz
345 dwarf_undef_macro.3.gz
346 dwarf_var_cu_offset.3.gz
347 dwarf_var_die_offset.3.gz
348 dwarf_var_name_offsets.3.gz
350 dwarf_vars_dealloc.3.gz
351 dwarf_vendor_ext.3.gz
352 dwarf_weak_cu_offset.3.gz
353 dwarf_weak_die_offset.3.gz
354 dwarf_weak_name_offsets.3.gz
356 dwarf_weaks_dealloc.3.gz
359 dwarf_whatform_direct.3.gz
401 elf_getshdrstrndx.3.gz
422 elftc_bfd_find_target.3.gz
423 elftc_bfd_target_byteorder.3.gz
424 elftc_bfd_target_class.3.gz
425 elftc_bfd_target_flavor.3.gz
428 elftc_set_timestamps.3.gz
429 elftc_string_table_create.3.gz
430 elftc_string_table_destroy.3.gz
431 elftc_string_table_from_section.3.gz
432 elftc_string_table_image.3.gz
433 elftc_string_table_insert.3.gz
434 elftc_string_table_lookup.3.gz
450 gelf_getsymshndx.3.gz
455 gelf_update_ehdr.3.gz
456 gelf_update_move.3.gz
457 gelf_update_phdr.3.gz
459 gelf_update_rela.3.gz
460 gelf_update_shdr.3.gz
462 gelf_update_syminfo.3.gz
463 gelf_update_symshndx.3.gz
468 [FILE:572:manifests/plist.tools]
475 @comment share/man/man1/ar.1.gz
476 @comment share/man/man1/elfcopy.1.gz
477 @comment share/man/man1/ld.1.gz
478 @comment share/man/man1/mcs.1.gz
479 @comment share/man/man1/ranlib.1.gz
480 @comment share/man/man1/strip.1.gz
481 @comment share/man/man5/ar.5.gz
504 [FILE:1086:patches/patch-common___elftc.h]
505 --- common/_elftc.h.orig 2015-08-31 19:53:08 UTC
507 @@ -295,7 +295,7 @@ struct name { \
510 #if defined(__APPLE__) || defined(__GLIBC__) || defined(__GNU__) || \
512 + defined(__linux__) || defined(__sun__)
513 #if defined(__GNUC__)
514 #define ELFTC_VCSID(ID) __asm__(".ident\t\"" ID "\"")
516 @@ -365,6 +365,9 @@ extern const char *__progname;
518 #endif /* ELFTC_GETPROGNAME */
521 +#define ELFTC_GETPROGNAME() getexecname
525 ** Per-OS configuration.
526 @@ -481,4 +484,20 @@ extern const char *__progname;
528 #endif /* __OpenBSD__ */
532 +#define roundup(x, y) ((((x)+((y)-1))/(y))*(y)) /* to any y */
533 +#define roundup2(x, y) (((x)+((y)-1))&(~((y)-1))) /* if y is powers of two */
537 +#define ELFTC_BYTE_ORDER __BYTE_ORDER
538 +#define ELFTC_BYTE_ORDER_LITTLE_ENDIAN __LITTLE_ENDIAN
539 +#define ELFTC_BYTE_ORDER_BIG_ENDIAN __BIG_ENDIAN
540 +#define ELFTC_HAVE_MMAP 1
541 +#define ELFTC_HAVE_STRMODE 0
542 +#define ELFTC_NEED_BYTEORDER_EXTENSIONS 1
544 +#endif /* __sun__ */
546 #endif /* _ELFTC_H */
549 [FILE:349:patches/patch-libelf___libelf__config.h]
550 --- libelf/_libelf_config.h.orig 2015-02-24 19:17:47 UTC
551 +++ libelf/_libelf_config.h
553 * $Id: _libelf_config.h 3168 2015-02-24 19:17:47Z emaste $
556 -#if defined(__APPLE__) || defined(__DragonFly__)
557 +#if defined(__APPLE__) || defined(__DragonFly__) || defined(__sun__)
559 #if defined(__amd64__)
560 #define LIBELF_ARCH EM_X86_64
563 [FILE:1488:patches/patch-libelftc_libelftc__dem__gnu3.c]
564 --- libelftc/libelftc_dem_gnu3.c.orig 2016-01-04 02:36:38 UTC
565 +++ libelftc/libelftc_dem_gnu3.c
572 #include "_libelftc.h"
574 @@ -165,6 +166,48 @@ static int vector_type_qualifier_init(st
575 static int vector_type_qualifier_push(struct vector_type_qualifier *,
576 enum type_qualifier);
579 + * Compatibility funcs
583 +port_vasprintf(char **strp, const char *fmt, va_list args)
586 + int status, needed;
588 + va_copy(args_copy, args);
589 + needed = vsnprintf(NULL, 0, fmt, args_copy);
595 + *strp = malloc(needed + 1);
598 + status = vsnprintf(*strp, needed + 1, fmt, args);
609 +port_asprintf(char **strp, const char *fmt, ...)
614 + va_start(args, fmt);
615 + status = port_vasprintf(strp, fmt, args);
621 * @brief Decode the input string by IA-64 C++ ABI style.
623 @@ -1704,7 +1747,7 @@ cpp_demangle_read_number_as_string(struc
627 - if (asprintf(str, "%ld", n) < 0) {
628 + if (port_asprintf(str, "%ld", n) < 0) {
634 [FILE:1679:patches/patch-readelf_readelf.c]
635 --- readelf/readelf.c.orig 2019-07-18 03:57:34 UTC
636 +++ readelf/readelf.c
637 @@ -210,6 +210,47 @@ struct mips_option {
642 + * compatibility functions
646 +port_strnlen(const char *s, size_t maxlen)
649 + for (len = 0; len < maxlen; len++, s++) {
656 +port_strsep(char **stringp, const char *delim)
663 + if ((s = *stringp) == NULL)
669 + if ((sc = *spanp++) == c) {
682 static void add_dumpop(struct readelf *re, size_t si, const char *sn, int op,
684 static const char *aeabi_adv_simd_arch(uint64_t simd);
685 @@ -3857,7 +3898,7 @@ dump_notes_content(struct readelf *re, c
687 else if (note->n_namesz == 4 && strncmp(name, "CORE", 4) == 0)
689 - else if (strnlen(name, note->n_namesz) >= note->n_namesz)
690 + else if (port_strnlen(name, note->n_namesz) >= note->n_namesz)
692 printf(" %-13s %#010jx", name, (uintmax_t) note->n_descsz);
693 printf(" %s\n", note_type(name, re->ehdr.e_type,
694 @@ -7340,7 +7381,7 @@ parse_dwarf_op_long(struct readelf *re,
695 err(EXIT_FAILURE, "strdup failed");
698 - while ((token = strsep(&p, ",")) != NULL) {
699 + while ((token = port_strsep(&p, ",")) != NULL) {
700 for (i = 0; dwarf_op[i].ln != NULL; i++) {
701 if (!strcmp(token, dwarf_op[i].ln)) {
702 re->dop |= dwarf_op[i].value;
705 [FILE:410:files/addr2line_CMakeLists.txt]
709 ${CMAKE_CURRENT_SOURCE_DIR}
710 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
711 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
712 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
713 ${CMAKE_CURRENT_SOURCE_DIR}/../common
716 add_executable(${prog} ${prog}.c)
718 target_link_libraries(${prog} elf elftc dwarf)
720 install(TARGETS ${prog} DESTINATION bin)
721 install(FILES ${prog}.1 DESTINATION share/man/man1)
724 [FILE:403:files/brandelf_CMakeLists.txt]
728 ${CMAKE_CURRENT_SOURCE_DIR}
729 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
730 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
731 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
732 ${CMAKE_CURRENT_SOURCE_DIR}/../common
735 add_executable(${prog} ${prog}.c)
737 target_link_libraries(${prog} elf elftc)
739 install(TARGETS ${prog} DESTINATION bin)
740 install(FILES ${prog}.1 DESTINATION share/man/man1)
743 [FILE:402:files/cxxfilt_CMakeLists.txt]
747 ${CMAKE_CURRENT_SOURCE_DIR}
748 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
749 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
750 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
751 ${CMAKE_CURRENT_SOURCE_DIR}/../common
754 add_executable(${prog} cxxfilt.c)
756 target_link_libraries(${prog} elf elftc)
758 install(TARGETS ${prog} DESTINATION bin)
759 install(FILES c++filt.1 DESTINATION share/man/man1)
762 [FILE:402:files/elfdump_CMakeLists.txt]
766 ${CMAKE_CURRENT_SOURCE_DIR}
767 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
768 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
769 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
770 ${CMAKE_CURRENT_SOURCE_DIR}/../common
773 add_executable(${prog} ${prog}.c)
775 target_link_libraries(${prog} elf elftc)
777 install(TARGETS ${prog} DESTINATION bin)
778 install(FILES ${prog}.1 DESTINATION share/man/man1)
781 [FILE:131:files/elftc_version.c.in]
782 #include <sys/types.h>
783 #include <libelftc.h>
788 return "elftcname %%VERSION%% release";
792 [FILE:412:files/findtextrel_CMakeLists.txt]
793 set(prog findtextrel)
796 ${CMAKE_CURRENT_SOURCE_DIR}
797 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
798 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
799 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
800 ${CMAKE_CURRENT_SOURCE_DIR}/../common
803 add_executable(${prog} ${prog}.c)
805 target_link_libraries(${prog} elf elftc dwarf)
807 install(TARGETS ${prog} DESTINATION bin)
808 install(FILES ${prog}.1 DESTINATION share/man/man1)
811 [FILE:13989:files/libdwarf_CMakeLists.txt]
813 ${CMAKE_CURRENT_SOURCE_DIR}
814 ${CMAKE_CURRENT_SOURCE_DIR}/../common
815 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
819 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pubnames.c
820 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pubtypes.c
821 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_weaks.c
822 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_funcs.c
823 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_vars.c
824 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_types.c
825 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pro_pubnames.c
826 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pro_weaks.c
827 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pro_funcs.c
828 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pro_types.c
829 ${CMAKE_SOURCE_DIR}/libdwarf/dwarf_pro_vars.c
882 libdwarf_elf_access.c
904 dwarf_add_AT_comp_dir.3
905 dwarf_add_AT_const_value_string.3
906 dwarf_add_AT_dataref.3
908 dwarf_add_AT_location_expr.3
910 dwarf_add_AT_producer.3
911 dwarf_add_AT_ref_address.3
912 dwarf_add_AT_reference.3
913 dwarf_add_AT_signed_const.3
914 dwarf_add_AT_string.3
915 dwarf_add_AT_targ_address.3
916 dwarf_add_die_to_debug.3
917 dwarf_add_directory_decl.3
918 dwarf_add_expr_addr.3
921 dwarf_add_file_decl.3
922 dwarf_add_frame_cie.3
923 dwarf_add_frame_fde.3
925 dwarf_add_line_entry.3
933 dwarf_attrval_signed.3
937 dwarf_die_abbrev_code.3
941 dwarf_end_macro_file.3
944 dwarf_expand_frame_instructions.3
945 dwarf_expr_current_offset.3
946 dwarf_expr_into_block.3
947 dwarf_fde_cfa_offset.3
948 dwarf_find_macro_value_start.3
959 dwarf_get_abbrev_children_flag.3
960 dwarf_get_abbrev_code.3
961 dwarf_get_abbrev_entry.3
962 dwarf_get_abbrev_tag.3
963 dwarf_get_address_size.3
965 dwarf_get_arange_info.3
968 dwarf_get_cie_index.3
970 dwarf_get_cie_of_fde.3
971 dwarf_get_cu_die_offset.3
972 dwarf_get_die_infotypes_flag.3
974 dwarf_get_fde_at_pc.3
975 dwarf_get_fde_info_for_all_regs.3
976 dwarf_get_fde_info_for_all_regs3.3
977 dwarf_get_fde_info_for_cfa_reg3.3
978 dwarf_get_fde_info_for_reg.3
979 dwarf_get_fde_info_for_reg3.3
980 dwarf_get_fde_instr_bytes.3
983 dwarf_get_fde_range.3
984 dwarf_get_form_class.3
987 dwarf_get_loclist_entry.3
988 dwarf_get_macro_details.3
991 dwarf_get_relocation_info.3
992 dwarf_get_relocation_info_count.3
993 dwarf_get_section_bytes.3
994 dwarf_get_section_max_offsets.3
1004 dwarf_lne_end_sequence.3
1005 dwarf_lne_set_address.3
1007 dwarf_loclist_from_expr.3
1011 dwarf_next_cu_header.3
1012 dwarf_next_types_section.3
1014 dwarf_producer_init.3
1015 dwarf_producer_set_isa.3
1016 dwarf_reset_section_bytes.3
1018 dwarf_set_frame_cfa_value.3
1019 dwarf_set_reloc_application.3
1022 dwarf_start_macro_file.3
1024 dwarf_transform_to_disk_form.3
1030 add_library(dwarfobj OBJECT ${libsrcs})
1031 set_property(TARGET dwarfobj PROPERTY POSITION_INDEPENDENT_CODE 1)
1033 add_library(dwarf SHARED $<TARGET_OBJECTS:dwarfobj>)
1034 add_library(dwarf_pic STATIC $<TARGET_OBJECTS:dwarfobj>)
1035 add_library(dwarf_static ${libsrcs})
1037 set_target_properties(dwarf PROPERTIES VERSION 3.0)
1038 set_target_properties(dwarf PROPERTIES SOVERSION 3)
1039 set_target_properties(dwarf PROPERTIES PUBLIC_HEADER libdwarf.h)
1040 target_link_libraries(dwarf elf)
1042 macro(m4toc outfilename)
1044 OUTPUT ${CMAKE_SOURCE_DIR}/libdwarf/${outfilename}.c
1045 COMMAND m4 -DSRCDIR=${CMAKE_SOURCE_DIR}/libdwarf ${CMAKE_SOURCE_DIR}/libdwarf/${outfilename}.m4 > ${CMAKE_SOURCE_DIR}/libdwarf/${outfilename}.c
1046 DEPENDS ${CMAKE_SOURCE_DIR}/libdwarf/${outfilename}.m4
1047 COMMENT "Generated ${outfilename}.c"
1049 set_source_files_properties(${CMAKE_SOURCE_DIR}/libdwarf/${outfilename}.c PROPERTIES GENERATED true)
1052 macro(install_symlink filepath sympath)
1053 install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${filepath} ${sympath})")
1054 install(CODE "message(\"-- Created symlink: ${sympath} -> ${filepath}\")")
1055 endmacro(install_symlink)
1057 m4toc(dwarf_pubnames)
1058 m4toc(dwarf_pubtypes)
1063 m4toc(dwarf_pro_pubnames)
1064 m4toc(dwarf_pro_weaks)
1065 m4toc(dwarf_pro_funcs)
1066 m4toc(dwarf_pro_types)
1067 m4toc(dwarf_pro_vars)
1069 install(TARGETS dwarf
1070 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1071 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1073 install(TARGETS dwarf_pic
1074 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1075 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1077 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libdwarf_static.a
1081 install(FILES dwarf.h DESTINATION include)
1082 install(FILES ${man3} DESTINATION share/man/man3)
1085 set(m3dir ${RAVDEST}${CMAKE_INSTALL_MANDIR}/man3)
1086 install_symlink(dwarf_add_AT_const_value_string.3 ${m3dir}/dwarf_add_AT_const_value_signedint.3)
1087 install_symlink(dwarf_add_AT_const_value_string.3 ${m3dir}/dwarf_add_AT_const_value_unsignedint.3)
1088 install_symlink(dwarf_add_AT_signed_const.3 ${m3dir}/dwarf_add_AT_unsigned_const.3)
1089 install_symlink(dwarf_add_AT_targ_address.3 ${m3dir}/dwarf_add_AT_targ_address_b.3)
1090 install_symlink(dwarf_add_arange.3 ${m3dir}/dwarf_add_arange_b.3)
1091 install_symlink(dwarf_add_expr_addr.3 ${m3dir}/dwarf_add_expr_addr_b.3)
1092 install_symlink(dwarf_add_frame_fde.3 ${m3dir}/dwarf_add_frame_fde_b.3)
1093 install_symlink(dwarf_attrval_signed.3 ${m3dir}/dwarf_attrval_flag.3)
1094 install_symlink(dwarf_attrval_signed.3 ${m3dir}/dwarf_attrval_string.3)
1095 install_symlink(dwarf_attrval_signed.3 ${m3dir}/dwarf_attrval_unsigned.3)
1096 install_symlink(dwarf_child.3 ${m3dir}/dwarf_offdie.3)
1097 install_symlink(dwarf_child.3 ${m3dir}/dwarf_offdie_b.3)
1098 install_symlink(dwarf_child.3 ${m3dir}/dwarf_siblingof.3)
1099 install_symlink(dwarf_child.3 ${m3dir}/dwarf_siblingof_b.3)
1100 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_fde_cie_list_dealloc.3)
1101 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_funcs_dealloc.3)
1102 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_globals_dealloc.3)
1103 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_pubtypes_dealloc.3)
1104 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_types_dealloc.3)
1105 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_vars_dealloc.3)
1106 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_weaks_dealloc.3)
1107 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_ranges_dealloc.3)
1108 install_symlink(dwarf_dealloc.3 ${m3dir}/dwarf_srclines_dealloc.3)
1109 install_symlink(dwarf_init.3 ${m3dir}/dwarf_elf_init.3)
1110 install_symlink(dwarf_dieoffset.3 ${m3dir}/dwarf_die_CU_offset.3)
1111 install_symlink(dwarf_dieoffset.3 ${m3dir}/dwarf_die_CU_offset_range.3)
1112 install_symlink(dwarf_dieoffset.3 ${m3dir}/dwarf_get_cu_die_offset_given_cu_header_offset.3)
1113 install_symlink(dwarf_dieoffset.3 ${m3dir}/dwarf_get_cu_die_offset_given_cu_header_offset_b.3)
1114 install_symlink(dwarf_finish.3 ${m3dir}/dwarf_object_finish.3)
1115 install_symlink(dwarf_formref.3 ${m3dir}/dwarf_global_formref.3)
1116 install_symlink(dwarf_formudata.3 ${m3dir}/dwarf_formsdata.3)
1117 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_ACCESS_name.3)
1118 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_ATE_name.3)
1119 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_CC_name.3)
1120 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_CFA_name.3)
1121 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_CHILDREN_name.3)
1122 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_DS_name.3)
1123 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_DSC_name.3)
1124 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_EH_name.3)
1125 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_END_name.3)
1126 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_FORM_name.3)
1127 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_ID_name.3)
1128 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_INL_name.3)
1129 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_LANG_name.3)
1130 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_LNE_name.3)
1131 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_LNS_name.3)
1132 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_MACINFO_name.3)
1133 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_OP_name.3)
1134 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_ORD_name.3)
1135 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_TAG_name.3)
1136 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_VIRTUALITY_name.3)
1137 install_symlink(dwarf_get_AT_name.3 ${m3dir}/dwarf_get_VIS_name.3)
1138 install_symlink(dwarf_get_cu_die_offset.3 ${m3dir}/dwarf_get_arange_cu_header_offset.3)
1139 install_symlink(dwarf_get_fde_list.3 ${m3dir}/dwarf_get_fde_list_eh.3)
1140 install_symlink(dwarf_get_funcs.3 ${m3dir}/dwarf_func_die_offset.3)
1141 install_symlink(dwarf_get_funcs.3 ${m3dir}/dwarf_func_cu_offset.3)
1142 install_symlink(dwarf_get_funcs.3 ${m3dir}/dwarf_func_name_offsets.3)
1143 install_symlink(dwarf_get_funcs.3 ${m3dir}/dwarf_funcname.3)
1144 install_symlink(dwarf_get_globals.3 ${m3dir}/dwarf_global_die_offset.3)
1145 install_symlink(dwarf_get_globals.3 ${m3dir}/dwarf_global_cu_offset.3)
1146 install_symlink(dwarf_get_globals.3 ${m3dir}/dwarf_global_name_offsets.3)
1147 install_symlink(dwarf_get_globals.3 ${m3dir}/dwarf_globname.3)
1148 install_symlink(dwarf_get_pubtypes.3 ${m3dir}/dwarf_pubtype_die_offset.3)
1149 install_symlink(dwarf_get_pubtypes.3 ${m3dir}/dwarf_pubtype_cu_offset.3)
1150 install_symlink(dwarf_get_pubtypes.3 ${m3dir}/dwarf_pubtype_name_offsets.3)
1151 install_symlink(dwarf_get_pubtypes.3 ${m3dir}/dwarf_pubtypename.3)
1152 install_symlink(dwarf_get_ranges.3 ${m3dir}/dwarf_get_ranges_a.3)
1153 install_symlink(dwarf_get_section_max_offsets.3 ${m3dir}/dwarf_get_section_max_offsets_b.3)
1154 install_symlink(dwarf_get_types.3 ${m3dir}/dwarf_type_die_offset.3)
1155 install_symlink(dwarf_get_types.3 ${m3dir}/dwarf_type_cu_offset.3)
1156 install_symlink(dwarf_get_types.3 ${m3dir}/dwarf_type_name_offsets.3)
1157 install_symlink(dwarf_get_types.3 ${m3dir}/dwarf_typename.3)
1158 install_symlink(dwarf_get_vars.3 ${m3dir}/dwarf_var_die_offset.3)
1159 install_symlink(dwarf_get_vars.3 ${m3dir}/dwarf_var_cu_offset.3)
1160 install_symlink(dwarf_get_vars.3 ${m3dir}/dwarf_var_name_offsets.3)
1161 install_symlink(dwarf_get_vars.3 ${m3dir}/dwarf_varname.3)
1162 install_symlink(dwarf_get_weaks.3 ${m3dir}/dwarf_weak_die_offset.3)
1163 install_symlink(dwarf_get_weaks.3 ${m3dir}/dwarf_weak_cu_offset.3)
1164 install_symlink(dwarf_get_weaks.3 ${m3dir}/dwarf_weak_name_offsets.3)
1165 install_symlink(dwarf_get_weaks.3 ${m3dir}/dwarf_weakname.3)
1166 install_symlink(dwarf_hasform.3 ${m3dir}/dwarf_whatform.3)
1167 install_symlink(dwarf_hasform.3 ${m3dir}/dwarf_whatform_direct.3)
1168 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_arrayorder.3)
1169 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_bitoffset.3)
1170 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_bitsize.3)
1171 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_bytesize.3)
1172 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_highpc_b.3)
1173 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_lowpc.3)
1174 install_symlink(dwarf_highpc.3 ${m3dir}/dwarf_srclang.3)
1175 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_lineaddr.3)
1176 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_linebeginstatement.3)
1177 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_lineblock.3)
1178 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_lineendsequence.3)
1179 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_lineoff.3)
1180 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_linesrc.3)
1181 install_symlink(dwarf_lineno.3 ${m3dir}/dwarf_line_srcfileno.3)
1182 install_symlink(dwarf_loclist.3 ${m3dir}/dwarf_loclist_n.3)
1183 install_symlink(dwarf_loclist_from_expr.3 ${md3dir}/dwarf_loclist_from_expr_a.3)
1184 install_symlink(dwarf_loclist_from_expr.3 ${m3dir}/dwarf_loclist_from_expr_b.3)
1185 install_symlink(dwarf_next_cu_header.3 ${m3dir}/dwarf_next_cu_header_b.3)
1186 install_symlink(dwarf_next_cu_header.3 ${m3dir}/dwarf_next_cu_header_c.3)
1187 install_symlink(dwarf_producer_init.3 ${m3dir}/dwarf_producer_init_b.3)
1188 install_symlink(dwarf_seterrarg.3 ${m3dir}/dwarf_seterrhand.3)
1189 install_symlink(dwarf_set_frame_cfa_value.3 ${m3dir}/dwarf_set_frame_rule_initial_value.3)
1190 install_symlink(dwarf_set_frame_cfa_value.3 ${m3dir}/dwarf_set_frame_rule_table_size.3)
1191 install_symlink(dwarf_set_frame_cfa_value.3 ${m3dir}/dwarf_set_frame_same_value.3)
1192 install_symlink(dwarf_set_frame_cfa_value.3 ${m3dir}/dwarf_set_frame_undefined_value.3)
1195 [FILE:6466:files/libelf_CMakeLists.txt]
1196 include_directories(
1197 ${CMAKE_CURRENT_SOURCE_DIR}
1198 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1201 if (CMAKE_SYSTEM_NAME MATCHES "Linux")
1202 set(NEF ${CMAKE_SOURCE_DIR}/libelf/native-elf-format.h)
1206 ${CMAKE_SOURCE_DIR}/libelf/libelf_fsize.c
1207 ${CMAKE_SOURCE_DIR}/libelf/libelf_msize.c
1208 ${CMAKE_SOURCE_DIR}/libelf/libelf_convert.c
1323 add_library(elfobj OBJECT ${libsrcs})
1324 set_property(TARGET elfobj PROPERTY POSITION_INDEPENDENT_CODE 1)
1326 add_library(elf SHARED $<TARGET_OBJECTS:elfobj>)
1327 add_library(elf_pic STATIC $<TARGET_OBJECTS:elfobj>)
1328 add_library(elf_static ${libsrcs})
1330 set_target_properties(elf PROPERTIES VERSION 1.0)
1331 set_target_properties(elf PROPERTIES SOVERSION 1)
1332 set_target_properties(elf PROPERTIES PUBLIC_HEADER libelf.h)
1334 macro(m4toc outfilename)
1336 OUTPUT ${CMAKE_SOURCE_DIR}/libelf/${outfilename}.c
1337 COMMAND m4 -DSRCDIR=${CMAKE_SOURCE_DIR}/libelf ${CMAKE_SOURCE_DIR}/libelf/${outfilename}.m4 > ${CMAKE_SOURCE_DIR}/libelf/${outfilename}.c
1338 DEPENDS ${CMAKE_SOURCE_DIR}/libelf/${outfilename}.m4
1339 COMMENT "Generated ${outfilename}.c"
1341 set_source_files_properties(${CMAKE_SOURCE_DIR}/lib/${outfilename}.c PROPERTIES GENERATED true)
1344 macro(install_symlink filepath sympath)
1345 install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${filepath} ${sympath})")
1346 install(CODE "message(\"-- Created symlink: ${sympath} -> ${filepath}\")")
1347 endmacro(install_symlink)
1350 OUTPUT ${CMAKE_SOURCE_DIR}/libelf/native-elf-format.h
1351 COMMAND ${CMAKE_SOURCE_DIR}/common/native-elf-format > ${CMAKE_SOURCE_DIR}/libelf/native-elf-format.h
1352 DEPENDS ${CMAKE_SOURCE_DIR}/common/native-elf-format
1353 COMMENT "Generated native-elf-format.h"
1355 set_source_files_properties(${CMAKE_SOURCE_DIR}/lib/native-elf-format.h PROPERTIES GENERATED true)
1359 m4toc(libelf_convert)
1362 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1363 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1365 install(TARGETS elf_pic
1366 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1367 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1369 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libelf_static.a
1373 install(FILES gelf.h ../common/elfdefinitions.h DESTINATION include)
1374 install(FILES ${man3} DESTINATION share/man/man3)
1377 set(m3dir ${RAVDEST}${CMAKE_INSTALL_MANDIR}/man3)
1378 install_symlink(gelf_checksum.3 ${m3dir}/elf32_checksum.3)
1379 install_symlink(gelf_checksum.3 ${m3dir}/elf64_checksum.3)
1380 install_symlink(gelf_fsize.3 ${m3dir}/elf32_fsize.3)
1381 install_symlink(gelf_fsize.3 ${m3dir}/elf64_fsize.3)
1382 install_symlink(gelf_getehdr.3 ${m3dir}/elf32_getehdr.3)
1383 install_symlink(gelf_getehdr.3 ${m3dir}/elf64_getehdr.3)
1384 install_symlink(gelf_getphdr.3 ${m3dir}/elf32_getphdr.3)
1385 install_symlink(gelf_getphdr.3 ${m3dir}/elf64_getphdr.3)
1386 install_symlink(gelf_getshdr.3 ${m3dir}/elf32_getshdr.3)
1387 install_symlink(gelf_getshdr.3 ${m3dir}/elf64_getshdr.3)
1388 install_symlink(gelf_newehdr.3 ${m3dir}/elf32_newehdr.3)
1389 install_symlink(gelf_newehdr.3 ${m3dir}/elf64_newehdr.3)
1390 install_symlink(gelf_newphdr.3 ${m3dir}/elf32_newphdr.3)
1391 install_symlink(gelf_newphdr.3 ${m3dir}/elf64_newphdr.3)
1392 install_symlink(gelf_xlatetof.3 ${m3dir}/elf32_xlatetof.3)
1393 install_symlink(gelf_xlatetof.3 ${m3dir}/elf64_xlatetof.3)
1394 install_symlink(gelf_xlatetof.3 ${m3dir}/elf32_xlatetom.3)
1395 install_symlink(gelf_xlatetof.3 ${m3dir}/elf64_xlatetom.3)
1396 install_symlink(elf_errmsg.3 ${m3dir}/elf_errno.3)
1397 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagarhdr.3)
1398 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagehdr.3)
1399 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagelf.3)
1400 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagphdr.3)
1401 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagscn.3)
1402 install_symlink(elf_flagdata.3 ${m3dir}/elf_flagshdr.3)
1403 install_symlink(elf_getdata.3 ${m3dir}/elf_newdata.3)
1404 install_symlink(elf_getdata.3 ${m3dir}/elf_rawdata.3)
1405 install_symlink(elf_getscn.3 ${m3dir}/elf_ndxscn.3)
1406 install_symlink(elf_getscn.3 ${m3dir}/elf_newscn.3)
1407 install_symlink(elf_getscn.3 ${m3dir}/elf_nextscn.3)
1408 install_symlink(elf_getshstrndx.3 ${m3dir}/elf_setshstrndx.3)
1409 install_symlink(elf_open.3 ${m3dir}/elf_openmemory.3)
1410 install_symlink(gelf_getcap.3 ${m3dir}/gelf_update_cap.3)
1411 install_symlink(gelf_getdyn.3 ${m3dir}/gelf_update_dyn.3)
1412 install_symlink(gelf_getmove.3 ${m3dir}/gelf_update_move.3)
1413 install_symlink(gelf_getrel.3 ${m3dir}/gelf_update_rel.3)
1414 install_symlink(gelf_getrela.3 ${m3dir}/gelf_update_rela.3)
1415 install_symlink(gelf_getsym.3 ${m3dir}/gelf_update_sym.3)
1416 install_symlink(gelf_getsyminfo.3 ${m3dir}/gelf_update_syminfo.3)
1417 install_symlink(gelf_getsymshndx.3 ${m3dir}/gelf_update_symshndx.3)
1418 install_symlink(gelf_update_ehdr.3 ${m3dir}/gelf_update_phdr.3)
1419 install_symlink(gelf_update_ehdr.3 ${m3dir}/gelf_update_shdr.3)
1420 install_symlink(gelf_xlatetof.3 ${m3dir}/gelf_xlatetom.3)
1423 [FILE:2440:files/libelftc_CMakeLists.txt]
1424 include_directories(
1425 ${CMAKE_CURRENT_SOURCE_DIR}
1426 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1427 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
1434 elftc_set_timestamps.c
1435 elftc_string_table.c
1437 libelftc_bfdtarget.c
1448 elftc_bfd_find_target.3
1451 elftc_set_timestamps.3
1452 elftc_string_table_create.3
1456 add_library(elftcobj OBJECT ${libsrcs})
1457 set_property(TARGET elftcobj PROPERTY POSITION_INDEPENDENT_CODE 1)
1459 add_library(elftc SHARED $<TARGET_OBJECTS:elftcobj>)
1460 add_library(elftc_pic STATIC $<TARGET_OBJECTS:elftcobj>)
1461 add_library(elftc_static ${libsrcs})
1463 set_target_properties(elftc PROPERTIES VERSION 1.0)
1464 set_target_properties(elftc PROPERTIES SOVERSION 1)
1465 set_target_properties(elftc PROPERTIES PUBLIC_HEADER libelftc.h)
1466 target_link_libraries(elftc elf)
1468 macro(install_symlink filepath sympath)
1469 install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${filepath} ${sympath})")
1470 install(CODE "message(\"-- Created symlink: ${sympath} -> ${filepath}\")")
1471 endmacro(install_symlink)
1473 install(TARGETS elftc
1474 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1475 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1477 install(TARGETS elftc_pic
1478 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1479 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1481 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libelftc_static.a
1485 # install(FILES gelf.h ../common/elfdefinitions.h DESTINATION include)
1486 install(FILES ${man3} DESTINATION share/man/man3)
1489 set(m3dir ${RAVDEST}${CMAKE_INSTALL_MANDIR}/man3)
1490 install_symlink(elftc_bfd_find_target.3 ${m3dir}/elftc_bfd_target_byteorder.3)
1491 install_symlink(elftc_bfd_find_target.3 ${m3dir}/elftc_bfd_target_class.3)
1492 install_symlink(elftc_bfd_find_target.3 ${m3dir}/elftc_bfd_target_flavor.3)
1493 install_symlink(elftc_string_table_create.3 ${m3dir}/elftc_string_table_from_section.3)
1494 install_symlink(elftc_string_table_create.3 ${m3dir}/elftc_string_table_destroy.3)
1495 install_symlink(elftc_string_table_create.3 ${m3dir}/elftc_string_table_image.3)
1496 install_symlink(elftc_string_table_create.3 ${m3dir}/elftc_string_table_insert.3)
1497 install_symlink(elftc_string_table_create.3 ${m3dir}/elftc_string_table_lookup.3)
1500 [FILE:1111:files/libpe_CMakeLists.txt]
1501 include_directories(
1502 ${CMAKE_CURRENT_SOURCE_DIR}
1503 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1526 add_library(peobj OBJECT ${libsrcs})
1527 set_property(TARGET peobj PROPERTY POSITION_INDEPENDENT_CODE 1)
1529 add_library(pe SHARED $<TARGET_OBJECTS:peobj>)
1530 add_library(pe_pic STATIC $<TARGET_OBJECTS:peobj>)
1531 add_library(pe_static ${libsrcs})
1533 set_target_properties(pe PROPERTIES VERSION 1.0)
1534 set_target_properties(pe PROPERTIES SOVERSION 1)
1535 set_target_properties(pe PROPERTIES PUBLIC_HEADER libpe.h)
1538 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1539 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1541 install(TARGETS pe_pic
1542 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
1543 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
1545 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libpe_static.a
1549 install(FILES pe.h DESTINATION include)
1552 [FILE:403:files/nm_CMakeLists.txt]
1555 include_directories(
1556 ${CMAKE_CURRENT_SOURCE_DIR}
1557 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
1558 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
1559 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
1560 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1563 add_executable(${prog} ${prog}.c)
1565 target_link_libraries(${prog} elf elftc dwarf)
1567 install(TARGETS ${prog} DESTINATION bin)
1568 install(FILES ${prog}.1 DESTINATION share/man/man1)
1571 [FILE:408:files/readelf_CMakeLists.txt]
1574 include_directories(
1575 ${CMAKE_CURRENT_SOURCE_DIR}
1576 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
1577 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
1578 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
1579 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1582 add_executable(${prog} ${prog}.c)
1584 target_link_libraries(${prog} elf elftc dwarf)
1586 install(TARGETS ${prog} DESTINATION bin)
1587 install(FILES ${prog}.1 DESTINATION share/man/man1)
1590 [FILE:399:files/size_CMakeLists.txt]
1593 include_directories(
1594 ${CMAKE_CURRENT_SOURCE_DIR}
1595 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
1596 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
1597 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
1598 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1601 add_executable(${prog} ${prog}.c)
1603 target_link_libraries(${prog} elf elftc)
1605 install(TARGETS ${prog} DESTINATION bin)
1606 install(FILES ${prog}.1 DESTINATION share/man/man1)
1609 [FILE:402:files/strings_CMakeLists.txt]
1612 include_directories(
1613 ${CMAKE_CURRENT_SOURCE_DIR}
1614 ${CMAKE_CURRENT_SOURCE_DIR}/../libdwarf
1615 ${CMAKE_CURRENT_SOURCE_DIR}/../libelf
1616 ${CMAKE_CURRENT_SOURCE_DIR}/../libelftc
1617 ${CMAKE_CURRENT_SOURCE_DIR}/../common
1620 add_executable(${prog} ${prog}.c)
1622 target_link_libraries(${prog} elf elftc)
1624 install(TARGETS ${prog} DESTINATION bin)
1625 install(FILES ${prog}.1 DESTINATION share/man/man1)
1628 [FILE:542:files/sun_err.h]
1629 #ifndef LIBBSD_ERR_H
1630 #define LIBBSD_ERR_H
1636 #define err(exitcode, format, args...) \
1637 errx(exitcode, format ": %s", ## args, strerror(errno))
1638 #define errx(exitcode, format, args...) \
1639 { warnx(format, ## args); exit(exitcode); }
1640 #define warn(format, args...) \
1641 warnx(format ": %s", ## args, strerror(errno))
1642 #define warnx(format, args...) \
1643 fprintf(stderr, format "\n", ## args)
1648 #define u_int64_t uint64_t
1653 [FILE:458:files/top_CMakeLists.txt]
1654 cmake_minimum_required(VERSION 3.14.1)
1655 project(elftoolchain)
1657 include(GNUInstallDirs)
1659 SET(CMAKE_SKIP_BUILD_RPATH TRUE)
1661 add_subdirectory(libelf)
1662 add_subdirectory(libdwarf)
1663 add_subdirectory(libpe)
1664 add_subdirectory(libelftc)
1665 add_subdirectory(addr2line)
1666 add_subdirectory(brandelf)
1667 add_subdirectory(cxxfilt)
1668 add_subdirectory(elfdump)
1669 add_subdirectory(findtextrel)
1670 add_subdirectory(nm)
1671 add_subdirectory(readelf)
1672 add_subdirectory(size)
1673 add_subdirectory(strings)