mirror of
https://github.com/eclipse-mosquitto/mosquitto.git
synced 2026-09-22 16:15:05 +08:00
Build the CPP static library with bare Makefiles
In order to make the CPP static library include all objects from the C static library, the list of objects (MOSQ_OBJS) is isolated into objects.mk to be used for building the C and CPP static libraries. Signed-off-by: Lance Chen <cyen0312@gmail.com>
This commit is contained in:
+3
-32
@@ -1,37 +1,8 @@
|
||||
include ../config.mk
|
||||
include objects.mk
|
||||
|
||||
.PHONY : really clean install
|
||||
|
||||
MOSQ_OBJS=mosquitto.o \
|
||||
handle_connack.o \
|
||||
handle_ping.o \
|
||||
handle_pubackcomp.o \
|
||||
handle_publish.o \
|
||||
handle_pubrec.o \
|
||||
handle_pubrel.o \
|
||||
handle_suback.o \
|
||||
handle_unsuback.o \
|
||||
helpers.o \
|
||||
logging_mosq.o \
|
||||
memory_mosq.o \
|
||||
messages_mosq.o \
|
||||
net_mosq.o \
|
||||
packet_mosq.o \
|
||||
read_handle.o \
|
||||
send_connect.o \
|
||||
send_disconnect.o \
|
||||
send_mosq.o \
|
||||
send_publish.o \
|
||||
send_subscribe.o \
|
||||
send_unsubscribe.o \
|
||||
socks_mosq.o \
|
||||
srv_mosq.o \
|
||||
thread_mosq.o \
|
||||
time_mosq.o \
|
||||
tls_mosq.o \
|
||||
util_mosq.o \
|
||||
will_mosq.o
|
||||
|
||||
all : libmosquitto.so.${SOVERSION} libmosquitto.a
|
||||
$(MAKE) -C cpp
|
||||
|
||||
@@ -57,10 +28,10 @@ clean :
|
||||
-rm -f *.o libmosquitto.so.${SOVERSION} libmosquitto.so libmosquitto.a
|
||||
$(MAKE) -C cpp clean
|
||||
|
||||
libmosquitto.so.${SOVERSION} : ${MOSQ_OBJS}
|
||||
libmosquitto.so.${SOVERSION} : ${MOSQ_C_OBJS}
|
||||
${CROSS_COMPILE}$(CC) -shared $(LIB_LDFLAGS) $^ -o $@ ${LIB_LIBS}
|
||||
|
||||
libmosquitto.a : ${MOSQ_OBJS}
|
||||
libmosquitto.a : ${MOSQ_C_OBJS}
|
||||
${CROSS_COMPILE}$(AR) cr $@ $^
|
||||
|
||||
mosquitto.o : mosquitto.c mosquitto.h
|
||||
|
||||
+9
-2
@@ -1,4 +1,5 @@
|
||||
include ../../config.mk
|
||||
include ../objects.mk
|
||||
|
||||
ifneq ($(UNAME),SunOS)
|
||||
LIB_LDFLAGS:=$(LDFLAGS) -Wl,-soname,libmosquittopp.so.${SOVERSION}
|
||||
@@ -6,26 +7,32 @@ endif
|
||||
|
||||
.PHONY : clean install
|
||||
|
||||
all : libmosquittopp.so.${SOVERSION}
|
||||
all : libmosquittopp.so.${SOVERSION} libmosquittopp.a
|
||||
|
||||
install : all
|
||||
$(INSTALL) -d ${DESTDIR}$(prefix)/lib${LIB_SUFFIX}/
|
||||
$(INSTALL) -s --strip-program=${CROSS_COMPILE}${STRIP} libmosquittopp.so.${SOVERSION} ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.so.${SOVERSION}
|
||||
ln -sf libmosquittopp.so.${SOVERSION} ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.so
|
||||
$(INSTALL) libmosquittopp.a ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.a
|
||||
${CROSS_COMPILE}${STRIP} -g --strip-unneeded ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.a
|
||||
$(INSTALL) -d ${DESTDIR}${prefix}/include/
|
||||
$(INSTALL) mosquittopp.h ${DESTDIR}${prefix}/include/mosquittopp.h
|
||||
|
||||
uninstall :
|
||||
-rm -f ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.so.${SOVERSION}
|
||||
-rm -f ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.so
|
||||
-rm -f ${DESTDIR}${prefix}/lib${LIB_SUFFIX}/libmosquittopp.a
|
||||
-rm -f ${DESTDIR}${prefix}/include/mosquittopp.h
|
||||
|
||||
clean :
|
||||
-rm -f *.o libmosquittopp.so.${SOVERSION}
|
||||
-rm -f *.o libmosquittopp.so.${SOVERSION} libmosquittopp.a
|
||||
|
||||
libmosquittopp.so.${SOVERSION} : mosquittopp.o
|
||||
${CROSS_COMPILE}$(CXX) -shared $(LIB_LDFLAGS) $< -o $@ ../libmosquitto.so.${SOVERSION}
|
||||
|
||||
libmosquittopp.a : mosquittopp.o ${MOSQ_C_OBJS}
|
||||
${CROSS_COMPILE}$(AR) cr $@ $^
|
||||
|
||||
mosquittopp.o : mosquittopp.cpp mosquittopp.h
|
||||
${CROSS_COMPILE}$(CXX) $(LIB_CXXFLAGS) -c $< -o $@
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
MOSQ_C_OBJ_NAMES=mosquitto.o \
|
||||
handle_connack.o \
|
||||
handle_ping.o \
|
||||
handle_pubackcomp.o \
|
||||
handle_publish.o \
|
||||
handle_pubrec.o \
|
||||
handle_pubrel.o \
|
||||
handle_suback.o \
|
||||
handle_unsuback.o \
|
||||
helpers.o \
|
||||
logging_mosq.o \
|
||||
memory_mosq.o \
|
||||
messages_mosq.o \
|
||||
net_mosq.o \
|
||||
packet_mosq.o \
|
||||
read_handle.o \
|
||||
send_connect.o \
|
||||
send_disconnect.o \
|
||||
send_mosq.o \
|
||||
send_publish.o \
|
||||
send_subscribe.o \
|
||||
send_unsubscribe.o \
|
||||
socks_mosq.o \
|
||||
srv_mosq.o \
|
||||
thread_mosq.o \
|
||||
time_mosq.o \
|
||||
tls_mosq.o \
|
||||
util_mosq.o \
|
||||
will_mosq.o
|
||||
|
||||
CURDIR=$(dir $(lastword $(MAKEFILE_LIST)))
|
||||
MOSQ_C_OBJS=$(addprefix $(CURDIR), $(MOSQ_C_OBJ_NAMES))
|
||||
Reference in New Issue
Block a user