| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- #! /bin/bash
- #echo "COMP_LIB = ${COMP_LIB}"
- #echo "STRIP = ${STRIP}"
- bash ${TOP_DIR}/extract.sh test
- cd ${DIST_DIR}/eng
- cp -rf wrappers/wrappers_defs.h infra/*.h ${FINAL_DIR}/include
- echo "Selected functions:"
- echo ""
- for iter in $(ls|grep -v 'wrappers\|infra'); do
- echo " . [${iter}]"
- cp -f ${iter}/*_api.h ${FINAL_DIR}/include 2>/dev/null
- cp -f ${iter}/*_wrapper.h ${FINAL_DIR}/include 2>/dev/null
- done
- cd ${OLDPWD}
- echo ""
- printf " | %-5s | %-35s | %14s | %26s |\n" "RATE" "OBJ NAME" "BYTES/TOTAL" "MODULE NAME"
- for iter in ${ALL_SUB_DIRS}; do
- [ ! -d ${LIBOBJ_TMPDIR}/${iter} ] && continue
- cd ${LIBOBJ_TMPDIR}/${iter}
- ITER_OBJS=$(find . -name "*.o")
- [ "${ITER_OBJS}" != "" ] || continue
- ${STRIP} ${ITER_OBJS} 2>/dev/null
- ITER_SIZE=$(size ${ITER_OBJS} | ${SED} '1d' | awk '{ sum += $1 } END { print sum }')
- [ "${ITER_SIZE}" != "0" ] && \
- printf " |-%-.5s-|-%-.35s-|-%.14s-|-%.26s-|\n" \
- "-----------------------------------------" \
- "-----------------------------------------" \
- "-----------------------------------------" \
- "-----------------------------------------"
- for j in ${ITER_OBJS}; do
- size $j | ${SED} '1d' \
- | awk -v sum="${ITER_SIZE}" \
- -v mod="${iter}" \
- -v obj="$(basename ${j})" \
- '{ if ($1 != 0) printf("%d %.4s%% %s %-d/%d %s\n", $1, ($1/sum)*100, obj, $1, sum, mod); }'
- done \
- | sort -nr \
- | cut -d' ' -f2- \
- | awk '{ printf(" | %-5s | %-35s | %14s | %26s |\n", $1, $2, $3, $4); }'
- cd ${OLDPWD}
- done
- echo ""
- echo ""
- echo ""
- printf " | %-5s | %-35s | %-9s | %-9s | %-10s | %-6s |\n" \
- "RATE" "MODULE NAME" "ROM" "RAM" "BSS" "DATA"
- printf " |-%-.5s-|-%-.35s-|-%-.9s-|-%-.9s-|-%-.10s-|-%-.6s-|\n" \
- "-------------" \
- "--------------------------------------------" \
- "-------------" \
- "-------------" \
- "-------------" \
- "-------------"
- cd ${LIBOBJ_TMPDIR}
- TOTAL_ROM=$(find $(for i in ${COMP_LIB_COMPONENTS}; do echo "${OUTPUT_DIR}/${i}"; done) -name "*.o" 2>/dev/null \
- | xargs size \
- | awk '{ sum += $1 } END { print sum }')
- cd ${OLDPWD}
- for iter in ${COMP_LIB_COMPONENTS}; do
- [ ! -d ${LIBOBJ_TMPDIR}/${iter} ] && continue
- cd ${LIBOBJ_TMPDIR}/${iter}
- ITER_OBJS=$(find . -name "*.o")
- [ "${ITER_OBJS}" != "" ] || continue
- ${STRIP} ${ITER_OBJS} 2>/dev/null
- size ${ITER_OBJS} | ${SED} '1d' \
- | awk -v name=${iter} -v total_rom=${TOTAL_ROM} '
- BEGIN { sum_rom = sum_ram = sum_bss = sum_data = 0 }
- {
- sum_rom += $1 + $2;
- sum_ram += $2 + $3;
- sum_bss += $3;
- sum_data += $2;
- }
- END {
- rate = sum_rom / total_rom * 100;
- printf("%d | %.4s%% | %-35s | %-9s | %-9s | %-10s | %-6s |\n",
- sum_rom,
- rate,
- name,
- sum_rom,
- sum_ram,
- sum_bss,
- sum_data);
- }
- '
- cd ${OLDPWD}
- done \
- | sort -nr \
- | cut -d' ' -f2- \
- | ${SED} 's!.*! &!g' \
- | awk -v total_rom=${TOTAL_ROM} '
- BEGIN { sum_rom = sum_ram = sum_bss = sum_data = 0 }
- {
- sum_rom += $6;
- sum_ram += $8;
- sum_bss += $10;
- sum_data += $12;
- print;
- }
- END {
- rate = sum_rom / total_rom * 100;
- printf(" |-------|-------------------------------------|-----------|-----------|------------|--------|\n");
- if (rate < 100)
- printf(" | %.4s%% | %-35s | %-9s | %-9s | %-10s | %-6s |\n", rate, "- IN TOTAL -", sum_rom, sum_ram, sum_bss, sum_data);
- else
- printf(" | %.3s%% | %-35s | %-9s | %-9s | %-10s | %-6s |\n", rate, "- IN TOTAL -", sum_rom, sum_ram, sum_bss, sum_data);
- }
- '
- echo ""
|