summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorLouie S <louie@example.com>2024-06-05 18:22:54 -0400
committerLouie S <louie@example.com>2024-06-05 18:22:54 -0400
commit973bbcd6a8af9695a937fdc754e384a917984d2a (patch)
tree224effa3cc35d0d0b0033a81e057e3e9123e782a /Makefile
parentef4c089d4f64307e48b3810830c2559830ebf8e2 (diff)
FORK - first commit of dash-docset-builder
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile70
1 files changed, 25 insertions, 45 deletions
diff --git a/Makefile b/Makefile
index 9559806..f37435f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,18 @@
-#DOCSET_NAME = ...
+# Makefile should be called directly, passing the following arguments:
+# DOCSET_NAME = ... (should be a directory under ./configs)
+# optionally:
+# BUILD_DIR = ... (create built docsets under the directory BUILDDIR)
-DOCSET_DIR = $(DOCSET_NAME).docset
+ERROR_DOCSET_NAME = $(error DOCSET_NAME is unset)
+.phony: err
+
+ifndef DOCSET_NAME
+err: ; $(ERROR_DOCSET_NAME)
+endif
+
+SOURCE_DIR = configs/$(DOCSET_NAME)
+BUILD_DIR = .
+DOCSET_DIR = $(BUILD_DIR)/$(DOCSET_NAME).docset
CONTENTS_DIR = $(DOCSET_DIR)/Contents
RESOURCES_DIR = $(CONTENTS_DIR)/Resources
DOCUMENTS_DIR = $(RESOURCES_DIR)/Documents
@@ -10,37 +22,16 @@ INDEX_FILE = $(RESOURCES_DIR)/docSet.dsidx
ICON_FILE = $(DOCSET_DIR)/icon.png
ARCHIVE_FILE = $(DOCSET_NAME).tgz
-#SRC_ICON = src/icon.png
-
-#MANUAL_URL = ...
-#MANUAL_FILE = tmp/...
-
-ERROR_DOCSET_NAME = $(error DOCSET_NAME is unset)
-WARNING_MANUAL_URL = $(warning MANUAL_URL is unset)
-ERROR_MANUAL_FILE = $(error MANUAL_FILE is unset)
-.phony: err warn
-
-ifndef DOCSET_NAME
-err: ; $(ERROR_DOCSET_NAME)
-endif
+SRC_INFO_PLIST_FILE = $(SOURCE_DIR)/Info.plist
-ifndef MANUAL_FILE
-err: ; $(ERROR_MANUAL_FILE)
-endif
+DOCSET = $(INFO_PLIST_FILE) $(INDEX_FILE) $(ICON_FILE)
-ifndef MANUAL_URL
-warn:
- $(WARNING_MANUAL_URL)
- $(MAKE) all
-endif
+all: $(DOCSET)
-DOCSET = $(INFO_PLIST_FILE) $(INDEX_FILE)
-ifdef SRC_ICON
-DOCSET += $(ICON_FILE)
+ifdef DOCSET_NAME
+include configs/$(DOCSET_NAME)/config.mk
endif
-all: $(DOCSET)
-
archive: $(ARCHIVE_FILE)
clean:
@@ -52,11 +43,6 @@ tmp:
$(ARCHIVE_FILE): $(DOCSET)
tar --exclude='.DS_Store' -czf $@ $(DOCSET_DIR)
-ifdef MANUAL_URL
-$(MANUAL_FILE): tmp
- curl -o $@ $(MANUAL_URL)
-endif
-
$(DOCSET_DIR):
mkdir -p $@
@@ -66,16 +52,10 @@ $(CONTENTS_DIR): $(DOCSET_DIR)
$(RESOURCES_DIR): $(CONTENTS_DIR)
mkdir -p $@
-$(DOCUMENTS_DIR): $(RESOURCES_DIR) $(MANUAL_FILE)
- mkdir -p $@
- tar -x -z -f $(MANUAL_FILE) -C $@
-
-$(INFO_PLIST_FILE): src/Info.plist $(CONTENTS_DIR)
- cp src/Info.plist $@
-
-$(INDEX_FILE): src/index.sh $(DOCUMENTS_DIR)
- rm -f $@
- src/index.sh $@ $(DOCUMENTS_DIR)/*.html
+$(INFO_PLIST_FILE): $(SRC_INFO_PLIST_FILE) $(CONTENTS_DIR)
+ cp $(SRC_INFO_PLIST_FILE) $@
-$(ICON_FILE): src/icon.png $(DOCSET_DIR)
- cp $(SRC_ICON) $@
+ifdef SRC_ICON_FILE
+$(ICON_FILE): $(SRC_ICON_FILE) $(DOCSET_DIR)
+ cp $(SRC_ICON_FILE) $@
+endif