X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=assembler%2Finitvals.c;h=b40356380e1d7e1ade274ed630937d0f4f112a03;hb=81e43677e8666f7a00ab0ef38050324cc206f248;hp=eb2634d20a213bd18efcb2f477b9712a6f95e137;hpb=b9e19faa25ad9e1b24f08dc77267760df1b98504;p=b43-tools.git diff --git a/assembler/initvals.c b/assembler/initvals.c index eb2634d..b403563 100644 --- a/assembler/initvals.c +++ b/assembler/initvals.c @@ -276,15 +276,16 @@ static void emit_ival_section(struct ivals_context *ctx) struct initval_raw raw; struct fw_header hdr; unsigned int size; + unsigned int filesize = 0; memset(&hdr, 0, sizeof(hdr)); hdr.type = FW_TYPE_IV; hdr.ver = FW_HDR_VER; hdr.size = cpu_to_be32(ctx->ivals_count); - fn_len = strlen(outfile_name) + 512; + fn_len = strlen(ctx->sect->name) + strlen(initvals_fn_extension ? : "") + 1; fn = xmalloc(fn_len); - snprintf(fn, fn_len, "%s.%s.initval", outfile_name, ctx->sect->name); + snprintf(fn, fn_len, "%s%s", ctx->sect->name, initvals_fn_extension ? : ""); fd = fopen(fn, "w+"); if (!fd) { fprintf(stderr, "Could not open initval output file \"%s\"\n", fn); @@ -311,7 +312,14 @@ static void emit_ival_section(struct ivals_context *ctx) fprintf(stderr, "Could not write initvals outfile\n"); exit(1); } + filesize += size; } + + if (arg_print_sizes) { + printf("%s: %d values (%u bytes)\n", + fn, ctx->ivals_count, filesize); + } + fclose(fd); free(fn); }