summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLouie Shprung <lshprung@scu.edu>2022-12-30 16:01:19 -0800
committerLouie Shprung <lshprung@scu.edu>2022-12-30 16:01:19 -0800
commit632006715c99d09d74e77f64293c27ed0bad5a64 (patch)
treeb2c81dd84a0adfdf6230e125453e61ba13d01180
parentd61df0b950654f636044730a06bd6e9d7ce30ac8 (diff)
Update to build from upstream rather than debian sources; can be run more easily on non-Debian systems
-rw-r--r--Makefile29
-rw-r--r--README6
2 files changed, 20 insertions, 15 deletions
diff --git a/Makefile b/Makefile
index 548821c..0dd3228 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,6 @@
DOCSET_NAME = debmake
PACKAGE_NAME = debmake-doc
-
-ifndef $(LOCALE)
- LOCALE=en
-endif
+LOCALE = en
DOCSET_DIR = $(DOCSET_NAME).docset
CONTENTS_DIR = $(DOCSET_DIR)/Contents
@@ -15,7 +12,11 @@ INDEX_FILE = $(RESOURCES_DIR)/docSet.dsidx
ICON_FILE = $(DOCSET_DIR)/icon.png
ARCHIVE_FILE = $(DOCSET_NAME).tgz
-MANUAL_SOURCE = /usr/share/doc/$(PACKAGE_NAME)/html
+# TODO latest version should not have to be manually determined
+VERSION = 1.17
+MANUAL_URL = https://salsa.debian.org/debian/debmake-doc/-/archive/upstream/$(VERSION)/debmake-doc-upstream-$(VERSION).tar.gz
+MANUAL_SRC = tmp/$(PACKAGE_NAME)-upstream-$(VERSION)
+MANUAL_FILE = $(MANUAL_SRC)/basedir/html
DOCSET = $(INFO_PLIST_FILE) $(INDEX_FILE) $(ICON_FILE)
@@ -25,6 +26,10 @@ archive: $(ARCHIVE_FILE)
clean:
rm -rf $(DOCSET_DIR) $(ARCHIVE_FILE)
+ifneq (,$(wildcard $(MANUAL_SRC)))
+ cd $(MANUAL_SRC) && make clean
+endif
+
tmp:
mkdir -p $@
@@ -32,7 +37,12 @@ tmp:
$(ARCHIVE_FILE): $(DOCSET)
tar --exclude='.DS_Store' -czf $@ $(DOCSET_DIR)
-$(MANUAL_FILE): tmp
+$(MANUAL_SRC): tmp
+ curl -o $@.tar.gz $(MANUAL_URL)
+ tar -x -z -f $@.tar.gz -C tmp
+
+$(MANUAL_FILE): $(MANUAL_SRC)
+ cd $(MANUAL_SRC) && make html css LANGALL=$(LOCALE)
$(DOCSET_DIR):
mkdir -p $@
@@ -44,13 +54,8 @@ $(RESOURCES_DIR): $(CONTENTS_DIR)
mkdir -p $@
$(DOCUMENTS_DIR): $(RESOURCES_DIR) $(MANUAL_FILE)
-ifeq (,$(wildcard $(MANUAL_SOURCE)))
- $(error Missing debmake-doc package)
-endif
mkdir -p $@
- cp -r $(MANUAL_SOURCE)/*.$(LOCALE).* $@
- cp -r $(MANUAL_SOURCE)/*css $@
- cp -r $(MANUAL_SOURCE)/images $@
+ cp -r $(MANUAL_FILE)/* $@
$(INFO_PLIST_FILE): src/Info.plist $(CONTENTS_DIR)
head -n -2 src/Info.plist > $@
diff --git a/README b/README
index 507fef3..1333ee3 100644
--- a/README
+++ b/README
@@ -6,12 +6,12 @@ Here is a script and a Makefile for generating a debmake docset for Dash. It is
Requirements:
- any POSIX-compliant shell
+- curl
- make
+- po4a
- sqlite3
-In addition, this script is designed to be run on a Debian or Debian-based system where the debmake-doc package can be installed, as the script will check to make sure it can source the docset's html pages from /usr/share/doc/debmake-doc/html
-
-To generate a docset from the the debmake-doc package, simply execute `make` from the same directory as this README file. The version installed on the system will be packaged appropriately. The default locale is English (en). Alternative locales can be specified by executing `make LOCALE=$(locale)` (where $(locale) is the short form, i.e. "en"). The list of supported locales is listed below:
+To generate a docset, simply execute `make` from the same directory as this README file. The version installed on the system will be packaged appropriately. The default locale is English (en). Alternative locales can be specified by executing `make LOCALE=$(locale)` (where $(locale) is the short form, i.e. "en"). The list of supported locales is listed below:
- German (de)
- English (en)