Add STATIC_AMIGA_LIB
This allows building static libraries in subdirectories that then get linked into the final Amiga .library. FossilOrigin-Name: 66a1703bc1fab73f862b6b46e29eba8472439fe608aa41be778a39bf3f700d55
This commit is contained in:
parent
0f13bfebbc
commit
af9ad5bf6c
1 changed files with 42 additions and 4 deletions
|
@ -130,7 +130,7 @@ all:
|
|||
${MAKE} -s pre-all
|
||||
${MAKE} -s subdirs
|
||||
${MAKE} -s depend
|
||||
${MAKE} -s ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${FRAMEWORK} ${FRAMEWORK_NOINST} ${AMIGA_LIB} ${AMIGA_LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST} ${JARFILE} locales
|
||||
${MAKE} -s ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${STATIC_AMIGA_LIB} ${STATIC_AMIGA_LIB_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${FRAMEWORK} ${FRAMEWORK_NOINST} ${AMIGA_LIB} ${AMIGA_LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST} ${JARFILE} locales
|
||||
${MAKE} -s subdirs-after
|
||||
${MAKE} -s post-all
|
||||
|
||||
|
@ -326,6 +326,44 @@ ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST}: ${EXT_DEPS} ${LIB_OBJS} ${LIB_OBJS_E
|
|||
done; \
|
||||
fi
|
||||
|
||||
${STATIC_AMIGA_LIB} ${STATIC_AMIGA_LIB_NOINST}: ${EXT_DEPS} ${AMIGA_LIB_OBJS} ${AMIGA_LIB_OBJS_EXTRA}
|
||||
${LINK_STATUS}
|
||||
rm -f $@
|
||||
out="$@"; \
|
||||
objs=""; \
|
||||
ars=""; \
|
||||
for i in ${AMIGA_LIB_OBJS} ${AMIGA_LIB_OBJS_EXTRA}; do \
|
||||
case $$i in \
|
||||
*.a) \
|
||||
ars="$$ars $$i" \
|
||||
;; \
|
||||
*.o) \
|
||||
objs="$$objs $$i" \
|
||||
;; \
|
||||
esac \
|
||||
done; \
|
||||
for i in $$ars; do \
|
||||
dir=".$$(echo $$i | sed 's/\//_/g').objs"; \
|
||||
rm -fr $$dir; \
|
||||
mkdir -p $$dir; \
|
||||
cd $$dir; \
|
||||
${AR} x ../$$i; \
|
||||
for j in *.o; do \
|
||||
objs="$$objs $$dir/$$j"; \
|
||||
done; \
|
||||
cd ..; \
|
||||
done; \
|
||||
if ${AR} cr $@ $$objs && ${RANLIB} $@; then \
|
||||
${LINK_OK}; \
|
||||
else \
|
||||
rm -f $@; false; \
|
||||
${LINK_FAILED}; \
|
||||
fi; \
|
||||
for i in $$ars; do \
|
||||
dir=".$$(echo $$i | sed 's/\//_/g').objs"; \
|
||||
rm -fr $$dir; \
|
||||
done
|
||||
|
||||
locales: ${MO_FILES}
|
||||
|
||||
.c.o:
|
||||
|
@ -648,7 +686,7 @@ install: all install-extra
|
|||
fi \
|
||||
done
|
||||
|
||||
for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB}; do \
|
||||
for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB} ${STATIC_AMIGA_LIB}; do \
|
||||
test x"$$i" = x"" && continue; \
|
||||
${INSTALL_STATUS}; \
|
||||
if ${MKDIR_P} ${DESTDIR}${libdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${libdir}/$$i; then \
|
||||
|
@ -754,7 +792,7 @@ uninstall: uninstall-extra
|
|||
rmdir ${DESTDIR}${prefix}/Library/Frameworks >/dev/null 2>&1 || true
|
||||
rmdir ${DESTDIR}${prefix}/Library >/dev/null 2>&1 || true
|
||||
|
||||
for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB}; do \
|
||||
for i in "" ${STATIC_LIB} ${STATIC_PIC_LIB} ${STATIC_AMIGA_LIB}; do \
|
||||
test x"$$i" = x"" && continue; \
|
||||
if test -f ${DESTDIR}${libdir}/$$i; then \
|
||||
if rm -f ${DESTDIR}${libdir}/$$i; then \
|
||||
|
@ -847,7 +885,7 @@ clean:
|
|||
|
||||
: >.deps
|
||||
|
||||
for i in "" ${DEPS} ${OBJS} ${OBJS_EXTRA} ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${AMIGA_LIB_OBJS} ${AMIGA_LIB_OBJS_EXTRA} ${PLUGIN_OBJS} ${PROG} ${PROG_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${AMIGA_LIB} ${AMIGA_LIB_NOINST} ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${FRAMEWORK} ${PLUGIN} ${PLUGIN_NOINST} ${CLEAN_LIB} ${MO_FILES} ${CLEAN}; do \
|
||||
for i in "" ${DEPS} ${OBJS} ${OBJS_EXTRA} ${LIB_OBJS} ${LIB_OBJS_EXTRA} ${AMIGA_LIB_OBJS} ${AMIGA_LIB_OBJS_EXTRA} ${PLUGIN_OBJS} ${PROG} ${PROG_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${AMIGA_LIB} ${AMIGA_LIB_NOINST} ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${STATIC_AMIGA_LIB} ${STATIC_AMIGA_LIB_NOINST} ${FRAMEWORK} ${PLUGIN} ${PLUGIN_NOINST} ${CLEAN_LIB} ${MO_FILES} ${CLEAN}; do \
|
||||
test x"$$i" = x"" && continue; \
|
||||
if test -f $$i -o -d $$i; then \
|
||||
if rm -fr $$i; then \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue