Improved library handling in makefile, added WITH_THREADNAMES option.
This commit is contained in:
parent
3123aeb32a
commit
6b78cad546
3 changed files with 17 additions and 9 deletions
12
Makefile
12
Makefile
|
@ -10,8 +10,14 @@ ifeq ($(PACKAGE_VERSION),Unknown)
|
||||||
$(warning Version is unknown - consider creating a VERSION file or fixing your git setup.)
|
$(warning Version is unknown - consider creating a VERSION file or fixing your git setup.)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CPPFLAGS = -Wall -funsigned-char -g -O2 -DDEBUG="$(DEBUG)" -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" -DRELEASE="\"$(RELEASE)\""
|
CPPFLAGS = -Wall -g -O2
|
||||||
|
override CPPFLAGS += -funsigned-char -DDEBUG="$(DEBUG)" -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" -DRELEASE="\"$(RELEASE)\""
|
||||||
|
|
||||||
|
ifdef WITH_THREADNAMES
|
||||||
|
override CPPFLAGS += -DWITH_THREADNAMES=1
|
||||||
|
endif
|
||||||
|
|
||||||
|
THREADLIB = -lpthread
|
||||||
LDLIBS = -lmist
|
LDLIBS = -lmist
|
||||||
|
|
||||||
|
|
||||||
|
@ -35,7 +41,7 @@ MistPlayer: src/buffer/player.cpp
|
||||||
$(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
|
$(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
|
||||||
|
|
||||||
buffers: MistBuffer
|
buffers: MistBuffer
|
||||||
MistBuffer: LDLIBS += -lpthread
|
MistBuffer: override LDLIBS += $(THREADLIB)
|
||||||
MistBuffer: src/buffer/buffer.cpp src/buffer/buffer_stream.h src/buffer/buffer_stream.cpp tinythread.o tinythread.h
|
MistBuffer: src/buffer/buffer.cpp src/buffer/buffer_stream.h src/buffer/buffer_stream.cpp tinythread.o tinythread.h
|
||||||
$(CXX) $(LDFLAGS) $(CPPFLAGS) src/buffer/buffer.cpp src/buffer/buffer_stream.cpp tinythread.o $(LDLIBS) -o $@
|
$(CXX) $(LDFLAGS) $(CPPFLAGS) src/buffer/buffer.cpp src/buffer/buffer_stream.cpp tinythread.o $(LDLIBS) -o $@
|
||||||
|
|
||||||
|
@ -48,7 +54,7 @@ MistConnRTMP: src/connectors/conn_rtmp.cpp
|
||||||
$(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
|
$(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
|
||||||
|
|
||||||
connectors: MistConnHTTP
|
connectors: MistConnHTTP
|
||||||
MistConnHTTP: LDLIBS += -lpthread
|
MistConnHTTP: override LDLIBS += $(THREADLIB)
|
||||||
MistConnHTTP: src/connectors/conn_http.cpp tinythread.o tinythread.h src/connectors/embed.js.h src/connectors/icon.h
|
MistConnHTTP: src/connectors/conn_http.cpp tinythread.o tinythread.h src/connectors/embed.js.h src/connectors/icon.h
|
||||||
$(CXX) $(LDFLAGS) $(CPPFLAGS) src/connectors/conn_http.cpp tinythread.o $(LDLIBS) -o $@
|
$(CXX) $(LDFLAGS) $(CPPFLAGS) src/connectors/conn_http.cpp tinythread.o $(LDLIBS) -o $@
|
||||||
|
|
||||||
|
|
6
README
6
README
|
@ -31,8 +31,10 @@ The makefile will listen to the following variables:
|
||||||
exec_prefix Prefix to install object code and binaries to. Defaults to $(prefix)
|
exec_prefix Prefix to install object code and binaries to. Defaults to $(prefix)
|
||||||
bindir Directory to install binaries to. Defaults to $(exec_prefix)/bin
|
bindir Directory to install binaries to. Defaults to $(exec_prefix)/bin
|
||||||
DESTDIR Global prefix that will be put in front of any and all other file paths.
|
DESTDIR Global prefix that will be put in front of any and all other file paths.
|
||||||
CPPFLAGS Flags for compiling object files. Defaults to -Wall -g -O2 -fPIC -DDEBUG="$(DEBUG)" -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\""
|
CPPFLAGS Flags for compiling object files. Defaults to -Wall -g -O2
|
||||||
LDLIBS Libraries to include. Defaults to -lmist, adding -lpthread for some binaries.
|
LDLIBS Libraries to include. Defaults to -lmist
|
||||||
|
THREADLIB Libraries to include for threaded binaries. Defaults to -lpthread
|
||||||
|
WITH_THREADNAMES If set, this will set names of threads in threaded binaries. Defaults to being unset.
|
||||||
|
|
||||||
Use "make var1=val1 var2=val2" to set these. For example:
|
Use "make var1=val1 var2=val2" to set these. For example:
|
||||||
make install DEBUG=0 prefix=/usr/local
|
make install DEBUG=0 prefix=/usr/local
|
||||||
|
|
|
@ -27,7 +27,7 @@ namespace Buffer {
|
||||||
///\brief A function running in a thread to send all statistics.
|
///\brief A function running in a thread to send all statistics.
|
||||||
///\param empty A null pointer.
|
///\param empty A null pointer.
|
||||||
void handleStats(void * empty){
|
void handleStats(void * empty){
|
||||||
#if defined(_TTHREAD_POSIX_) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
#if defined(_TTHREAD_POSIX_) && defined(WITH_THREADNAMES) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
||||||
pthread_setname_np(pthread_self(), "StatsHandler");
|
pthread_setname_np(pthread_self(), "StatsHandler");
|
||||||
#endif
|
#endif
|
||||||
if (empty != 0){
|
if (empty != 0){
|
||||||
|
@ -83,7 +83,7 @@ namespace Buffer {
|
||||||
if (empty != 0){
|
if (empty != 0){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#if defined(_TTHREAD_POSIX_) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
#if defined(_TTHREAD_POSIX_) && defined(WITH_THREADNAMES) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
||||||
pthread_setname_np(pthread_self(), "Standard Input");
|
pthread_setname_np(pthread_self(), "Standard Input");
|
||||||
#endif
|
#endif
|
||||||
long long int timeDiff = 0; //difference between local time and stream time
|
long long int timeDiff = 0; //difference between local time and stream time
|
||||||
|
@ -123,7 +123,7 @@ namespace Buffer {
|
||||||
#if DEBUG >= 5
|
#if DEBUG >= 5
|
||||||
std::cerr << "Thread launched for user " << usr->sID << ", socket number " << usr->S.getSocket() << std::endl;
|
std::cerr << "Thread launched for user " << usr->sID << ", socket number " << usr->S.getSocket() << std::endl;
|
||||||
#endif
|
#endif
|
||||||
#if defined(_TTHREAD_POSIX_) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
#if defined(_TTHREAD_POSIX_) && defined(WITH_THREADNAMES) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
||||||
pthread_setname_np(pthread_self(), usr->sID.c_str());
|
pthread_setname_np(pthread_self(), usr->sID.c_str());
|
||||||
#endif
|
#endif
|
||||||
usr->myRing = thisStream->getRing();
|
usr->myRing = thisStream->getRing();
|
||||||
|
@ -292,7 +292,7 @@ namespace Buffer {
|
||||||
}
|
}
|
||||||
SS.setBlocking(false);
|
SS.setBlocking(false);
|
||||||
conf.activate();
|
conf.activate();
|
||||||
#if defined(_TTHREAD_POSIX_) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
#if defined(_TTHREAD_POSIX_) && defined(WITH_THREADNAMES) && !(defined(__FreeBSD__) || defined(__APPLE__) || defined(__MACH__) || defined(_WIN32) || defined(__CYGWIN__))
|
||||||
pthread_setname_np(pthread_self(), "Main accepter");
|
pthread_setname_np(pthread_self(), "Main accepter");
|
||||||
#endif
|
#endif
|
||||||
thisStream = Stream::get();
|
thisStream = Stream::get();
|
||||||
|
|
Loading…
Add table
Reference in a new issue