summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2017-02-13 01:07:57 -0500
committermidipix <writeonce@midipix.org>2017-02-13 01:52:22 -0500
commit02e881466ff1700d4abf6d5a42b2f29e981c4be9 (patch)
tree10738600ce12c5830f0713121e088472172c64e9
parent080fdc41e30e41e46897375f19572cfdff796153 (diff)
downloadmdso-02e881466ff1700d4abf6d5a42b2f29e981c4be9.tar.bz2
mdso-02e881466ff1700d4abf6d5a42b2f29e981c4be9.tar.xz
mdso_create_implib_objects(): do not generate foo_symfn.o for data symbols.
-rw-r--r--src/util/mdso_create_implib_objects.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/util/mdso_create_implib_objects.c b/src/util/mdso_create_implib_objects.c
index fb7cfea..5740109 100644
--- a/src/util/mdso_create_implib_objects.c
+++ b/src/util/mdso_create_implib_objects.c
@@ -50,16 +50,18 @@ mdso_api int mdso_create_implib_objects(const struct mdso_driver_ctx * dctx)
if (ret < 0)
return MDSO_NESTED_ERROR(dctx);
- mdso_init_objname(objname,".%s_symfn.o",*sym);
+ if (uctx->stype[sym-uctx->syms] == MDSO_SYMBOL_TYPE_CODE) {
+ mdso_init_objname(objname,".%s_symfn.o",*sym);
- if (!(fout = mdso_create_object(dctx,objname)))
- return MDSO_NESTED_ERROR(dctx);
+ if (!(fout = mdso_create_object(dctx,objname)))
+ return MDSO_NESTED_ERROR(dctx);
- ret = mdso_objgen_symfn(dctx,*sym,fout,0);
- fclose(fout);
+ ret = mdso_objgen_symfn(dctx,*sym,fout,0);
+ fclose(fout);
- if (ret < 0)
- return MDSO_NESTED_ERROR(dctx);
+ if (ret < 0)
+ return MDSO_NESTED_ERROR(dctx);
+ }
}
mdso_free_unit_ctx(uctx);