summaryrefslogtreecommitdiff
path: root/Makefile
blob: bf425839a2febbf434cf133f1f4a35adc10bbffa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
ERROR_NO_ARGUMENT = $(error Must pass at least one argument)
.phony: err
err:
	$(ERROR_NO_ARGUMENT)

BUILD_DIR     = build
SRC_MAKE_CALL = $(MAKE) -f src/Makefile BUILD_DIR=$(BUILD_DIR)

# For this target, only archive docsets that have already been built in BUILD_DIR
.phony: archive
archive: $(foreach docset,$(wildcard $(BUILD_DIR)/*.docset),$(basename $(docset)).tgz)

# For this target, simply remove all docsets and tgz files from BUILD_DIR
.phony: clean
clean:
	rm -rf $(BUILD_DIR)/*.docset $(BUILD_DIR)/*.tgz

# All supported docsets should be listed here
.phony: GNU_Make
GNU_Make: $(BUILD_DIR)/GNU_Make.docset

$(BUILD_DIR)/%.docset: 
	$(SRC_MAKE_CALL) DOCSET_NAME=$(basename $(@F))

$(BUILD_DIR)/%.tgz: $(BUILD_DIR)/%.docset
	tar --exclude='.DS_Store' -czf $@ $(basename $@).docset