Improve internal linking
Unified · Split
| @@ -123,7 +123,7 @@ $(LIBDIR)/%.so: $(LIBDIR)/%.shared.a · 122 unmodified lines | ||
| 123 | 123 | @ rm -rf shared_os && mkdir shared_os |
| 124 | 124 | @ rm -f $@ $@.${PROJECT_VERSION} $@.${PROJECT_SHLIB_VERSION} |
| 125 | 125 | @ (cd shared_os && ar x ../$<) |
| 126 | − @ (cd shared_os && $(CC) -shared -Wl,-soname,`basename $@`.${PROJECT_SHLIB_VERSION} -o ../$@.${PROJECT_VERSION} *.os) | |
| 126 | + @ (cd shared_os && $(CC) -shared -Wl,-soname,`basename $@`.${PROJECT_SHLIB_VERSION} -o ../$@.${PROJECT_VERSION} *.os $(LDFLAGS)) | |
| 127 | 127 | @ (cd $(LIBDIR) && ln -s `basename $@.${PROJECT_VERSION}` `basename $@.${PROJECT_SHLIB_VERSION}` ) |
| 128 | 128 | @ (cd $(LIBDIR) && ln -s `basename $@.${PROJECT_SHLIB_VERSION}` `basename $@` ) |
| 129 | 129 | @ rm -rf shared_os |
| @@ -54,7 +54,8 @@ ALL = shared_libs \ · 53 unmodified lines | ||
| 54 | 54 | VOICES=$(VOXES) |
| 55 | 55 | VOICELIBS=$(VOICES:%=flite_%) |
| 56 | 56 | |
| 57 | −flite_LIBS = $(VOICELIBS) $(LANGS:%=flite_%) $(LEXES:%=flite_%) flite | |
| 57 | +flite_MODS = $(VOICELIBS) $(LANGS:%=flite_%) $(LEXES:%=flite_%) | |
| 58 | +flite_LIBS = flite $(flite_MODS) | |
| 58 | 59 | |
| 59 | 60 | flite_LIBS_flags = -L$(LIBDIR) $(flite_LIBS:%=-l%) |
| 60 | 61 | flite_LIBS_deps = $(flite_LIBS:%=$(LIBDIR)/lib%.a) |
| @@ -65,6 +66,10 @@ include $(TOP)/config/common_make_rules · 4 unmodified lines | ||
| 65 | 66 | # so make clean can remove them |
| 66 | 67 | SHAREDARLIBS= $(flite_LIBS:%=$(LIBDIR)/lib%.shared.a) |
| 67 | 68 | SHAREDLIBS = $(SHAREDARLIBS:%.shared.a=%.so) |
| 69 | +SHAREDMODS = $(flite_MODS:%=$(LIBDIR)/lib%.so) | |
| 70 | +SHAREDusenMODS = $(LIBDIR)/libflite_cmu_time_awb.so $(LIBDIR)/libflite_cmu_us_awb.so $(LIBDIR)/libflite_cmu_us_kal16.so $(LIBDIR)/libflite_cmu_us_kal.so $(LIBDIR)/libflite_cmu_us_rms.so $(LIBDIR)/libflite_cmu_us_slt.so $(LIBDIR)/libflite_cmu_indic_lang.so | |
| 71 | +SHAREDcmulexMODS = $(LIBDIR)/libflite_cmu_time_awb.so $(LIBDIR)/libflite_cmu_us_awb.so $(LIBDIR)/libflite_cmu_us_kal16.so $(LIBDIR)/libflite_cmu_us_kal.so $(LIBDIR)/libflite_cmu_us_rms.so $(LIBDIR)/libflite_cmu_us_slt.so $(LIBDIR)/libflite_cmu_indic_lex.so | |
| 72 | +SHAREDindicMODS = $(LIBDIR)/libflite_cmu_indic_lex.so | |
| 68 | 73 | VERSIONSHAREDLIBS = $(SHAREDLIBS:%=%.${PROJECT_VERSION}) \ |
| 69 | 74 | $(SHAREDLIBS:%=%.${PROJECT_SHLIB_VERSION}) |
| 70 | 75 | |
| @@ -79,7 +84,14 @@ LOCAL_CLEAN = $(BINDIR)/flite$(EXEEXT) $(BINDIR)/flite_time$(EXEEXT) \ · 8 unmodified lines | ||
| 79 | 84 | flite_voice_list.c |
| 80 | 85 | |
| 81 | 86 | ifdef SHFLAGS |
| 82 | −flite_LIBS_flags += -Wl,-rpath $(LIBDIR) | |
| 87 | +$(SHAREDMODS): $(LIBDIR)/libflite.so | |
| 88 | +$(SHAREDMODS): LDFLAGS+=-L../$(LIBDIR) -lflite | |
| 89 | +$(SHAREDusenMODS): $(LIBDIR)/libflite_usenglish.so | |
| 90 | +$(SHAREDusenMODS): LDFLAGS+=-L../$(LIBDIR) -lflite_usenglish | |
| 91 | +$(SHAREDcmulexMODS): $(LIBDIR)/libflite_cmulex.so | |
| 92 | +$(SHAREDcmulexMODS): LDFLAGS+=-L../$(LIBDIR) -lflite_cmulex | |
| 93 | +$(SHAREDindicMODS): $(LIBDIR)/libflite_cmu_indic_lang.so | |
| 94 | +$(SHAREDindicMODS): LDFLAGS+=-L../$(LIBDIR) -lflite_cmu_indic_lang | |
| 83 | 95 | shared_libs: $(SHAREDLIBS) |
| 84 | 96 | else |
| 85 | 97 | shared_libs: nothing |