# $Id$ TMPCFLAGS = -g -Wall -W -O3 -funroll-loops -D_FILE_OFFSET_BITS=64 \ -D_LARGEFILE_SOURCE -D_GNU_SOURCE \ -DSYS_$(shell echo $(SYSTEM) | tr a-z A-Z) TMPCXXFLAGS = $(TMPCFLAGS) TMPLDFLAGS = ifeq ($(SYSTEM),BeOS) TMPCXXFLAGS += -Wno-multichar ifeq ($(BEOS_NETSERVER),yes) TMPCFLAGS += -DBEOS_NETSERVER TMPLDFLAGS += -lnet else TMPLDFLAGS += -lbind -lsocket endif endif ifeq ($(PTHREAD),yes) ifneq ($(filter FreeBSD OpenBSD,$(SYSTEM)),) TMPCFLAGS += -pthread TMPLDFLAGS += -pthread else TMPLDFLAGS += -lpthread endif endif ifeq ($(OPENSSL),yes) TMPCFLAGS += -DHAVE_OPENSSL TMPLDFLAGS += -lcrypto endif CFLAGS := $(TMPCFLAGS) $(CFLAGS) CXXFLAGS := $(TMPCXXFLAGS) $(CXXFLAGS) LDFLAGS := $(TMPLDFLAGS) $(LDFLAGS) # # Utils # define DEP_RULE @echo "Checking dependencies..." @$(RM) .depend @$(foreach SRC, $(SRCS), $(CC) -MM $(SRC) $(CFLAGS) >> .depend;) endef define DEP_RULE_CXX @echo "Checking dependencies..." @$(RM) .depend @$(foreach SRC, $(SRCS), $(CXX) -MM $(SRC) $(CXXFLAGS) >> .depend;) endef define CC_RULE @echo "Cc $@" @CMD="$(CC) $(CFLAGS) -o $@ -c $<"; $$CMD || \ ( echo "Compile line for $@ was:"; echo $$CMD; false ) endef define CXX_RULE @echo "C++ $@" @CMD="$(CXX) $(CXXFLAGS) -o $@ -c $<"; $$CMD || \ ( echo "Compile line for $@ was:"; echo $$CMD; false ) endef define LINK_RULE @echo "Link $@" @CMD="$(CC) -o $@ $(OBJS) $(LDLIBS) $(LDFLAGS)"; $$CMD || \ ( echo "Compile line for $@ was:"; echo $$CMD; false ) endef define LINK_RULE_CXX @echo "Link $@" @CMD="$(CXX) -o $@ $(OBJS) $(LDLIBS) $(LDFLAGS)"; $$CMD || \ ( echo "Compile line for $@ was:"; echo $$CMD; false ) endef define MSGFMT_RULE @echo "Msgfmt $<" @msgfmt -f $< -o $@ endef define XRES_RULE @echo "Xres $@" @xres -o $@ $@.rsrc endef define MIMESET_RULE @echo "Mimeset $@" @mimeset -f $@ endef define INSTALL_BIN_RULE @echo "Install $<" @$(MKDIR) $(DESTDIR)$(PREFIX)/bin @$(CP) $< $(DESTDIR)$(PREFIX)/bin/ endef define INSTALL_LOCALE_RULE @echo "Install $<" @$(MKDIR) $(DESTDIR)$(LOCALEDIR)/$*/LC_MESSAGES @$(CP) $< $(DESTDIR)$(LOCALEDIR)/$*/LC_MESSAGES/transmission-gtk.mo endef define INSTALL_MAN_RULE @echo "Install $<" @$(MKDIR) $(DESTDIR)$(PREFIX)/man/man1 @$(CP) $< $(DESTDIR)$(PREFIX)/man/man1/ endef define INSTALL_DESKTOP_RULE @echo "Install $<" @$(MKDIR) $(DESTDIR)$(PREFIX)/share/applications @$(CP) $< $(DESTDIR)$(PREFIX)/share/applications/ endef define INSTALL_ICON_RULE @echo "Install $<" @$(MKDIR) $(DESTDIR)$(PREFIX)/share/pixmaps @$(CP) $< $(DESTDIR)$(PREFIX)/share/pixmaps/ endef RM = rm -Rf CP = cp -f MKDIR = mkdir -p MAKEARGS = --no-print-directory