- @ $(CALC_VERSIONS); \
- SHLIB=lib$(LIBNAME).so \
- SHLIB_SUFFIX= \
- LIBDEPS="$(LIBDEPS)" \
- ALLSYMSFLAGS='-Wl,--whole-archive' \
- NOALLSYMSFLAGS='-Wl,--no-whole-archive' \
- SHAREDFLAGS="-shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" \
- SHAREDCMD='$(CC)'; \
- $(LINK_SO_A)
+ @ $(DO_GNU_SO); $(LINK_SO_A)
+link_app.gnu:
+ @ $(DO_GNU_APP); $(LINK_APP)
+
+DO_BEOS_SO= SHLIB=lib$(LIBNAME).so; \
+ SHLIB_SUFFIX=; \
+ ALLSYMSFLAGS='-Wl,--whole-archive'; \
+ NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SUFFIX"
+
+link_o.beos:
+ @ $(DO_BEOS_SO); $(LINK_SO_O)
+link_a.beos:
+ @ $(DO_BEOS_SO); $(LINK_SO_A)
+
+link_o.bsd:
+ @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \
+ $(CALC_VERSIONS); \
+ SHLIB=lib$(LIBNAME).so; \
+ SHLIB_SUFFIX=; \
+ LIBDEPS=" "; \
+ ALLSYMSFLAGS="-Wl,-Bforcearchive"; \
+ NOALLSYMSFLAGS=; \
+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \
+ fi; $(LINK_SO_O)
+link_a.bsd:
+ @if ${DETECT_GNU_LD}; then $(DO_GNU_SO); else \
+ $(CALC_VERSIONS); \
+ SHLIB=lib$(LIBNAME).so; \
+ SHLIB_SUFFIX=; \
+ LIBDEPS=" "; \
+ ALLSYMSFLAGS="-Wl,-Bforcearchive"; \
+ NOALLSYMSFLAGS=; \
+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -nostdlib"; \
+ fi; $(LINK_SO_A)
+link_app.bsd:
+ @if ${DETECT_GNU_LD}; then $(DO_GNU_APP); else \
+ LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBPATH)"; \
+ fi; $(LINK_APP)