Browse Source

makefile stuff

master
Martin Dørum 3 years ago
parent
commit
33048766bd
1 changed files with 20 additions and 11 deletions
  1. 20
    11
      Makefile

+ 20
- 11
Makefile View File

@@ -6,8 +6,11 @@ WEBRTC_GN_ARGS ?= \
is_debug=false \
use_sysroot=false \
rtc_include_tests=false \
is_clang=false \
rtc_use_h264=true \
treat_warnings_as_errors=false \
is_clang=false \
use_custom_libcxx=false \
use_rtti=true \
$(WEBRTC_GN_ARGS_EXTRA)
WEBRTC_TARGETS ?= default $(WEBRTC_TARGETS_EXTRA)
WEBRTC_LIBS ?= libwebrtc.a $(WEBRTC_LIBS_EXTRA)
@@ -31,7 +34,7 @@ RTC_STAMP_COMPILE = $(WEBRTC_DIR)/webrtc-checkout/src/out/$(WEBRTC_OUT)/.stamp
RTC_STAMP_INCLUDES = $(WEBRTC_BASE)/include/webrtc/.stamp

.PHONY: rtcall
rtcall:
rtc-all: \
$(WEBRTC_BASE)/include/webrtc/.stamp \
$(patsubst %,$(WEBRTC_BASE)/libs/%,$(WEBRTC_LIBS)) \
$(WEBRTC_BASE)/libs/libutil.a
@@ -74,6 +77,8 @@ $(RTC_STAMP_INCLUDES): $(RTC_STAMP_VERSION)
touch $@

# Libraries
$(WEBRTC_DIR)/webrtc-checkout/src/out/$(WEBRTC_OUT)/obj/%.a: $(RTC_STAMP_COMPILE)
touch $@ # Make doesn't believe us unless there's a recipe body
$(WEBRTC_BASE)/libs/%.a: $(WEBRTC_DIR)/webrtc-checkout/src/out/$(WEBRTC_OUT)/obj/%.a
@mkdir -p $(@D)
cp $< $@
@@ -84,19 +89,23 @@ $(WEBRTC_BASE)/libs/libutil.a: $(WEBRTC_BASE)/build/util/Conductor.cc.o
ar cr $@ $^
$(WEBRTC_BASE)/build/%.cc.o: $(WEBRTC_BASE)/%.cc $(RTC_STAMP_INCLUDES) $(wildcard $(WEBRTC_BASE)/util/*.h)
@mkdir -p $(@D)
$(CXX) $(CXXFLAGS) $(WEBRTC_FLAGS) -c $< -o $@
$(CXX) $(CXXFLAGS) -I$(WEBRTC_BASE)/include/rtcutil $(WEBRTC_FLAGS) -c $< -o $@

.PHONY: rtcclean
rtcclean:
rm -rf include libs build
.PHONY: rtc-clean
rtc-clean:
rm -rf include/webrtc libs build

.PHONY: rtccleanall
rtccleanall: rtcclean
rm -rf $(WEBRTC_DIR)/depot_tools $(WEBRTC_DIR)/webrtc-checkout
.PHONY: rtc-gn-clean
rtc-gn-clean: rtc-clean
cd $(WEBRTC_DIR)/webrtc-checkout/src && $(WEBRTC_SETPATH) gn clean out/$(WEBRTC_OUT)
rm -f $(RTC_STAMP_COMPILE)

.PHONY: rtc-clean-all
rtc-clean-all: rtc-clean
rm -rf $(WEBRTC_DIR)/depot_tools $(WEBRTC_DIR)/webrtc-checkout

.PHONY: mockstamps
rtcmockstamps:
.PHONY: rtc-mock-stamps
rtc-mock-stamps:
mkdir -p $(dir $(RTC_STAMP_DEPOT)) && touch $(RTC_STAMP_DEPOT)
mkdir -p $(dir $(RTC_STAMP_REPO)) && touch $(RTC_STAMP_REPO)
mkdir -p $(dir $(RTC_STAMP_VERSION)) && touch $(RTC_STAMP_VERSION)

Loading…
Cancel
Save