Skip to content

Commit 577198a

Browse files
committed
Initial Makefile I will change it more
1 parent 3c7b1bb commit 577198a

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

Makefile

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Define the base name of your draft (without extension)
2+
DRAFT_NAME := draft-xia-ipsecme-eesp-stateless-encryption
3+
4+
# Define source and target files
5+
MD_SOURCE := $(DRAFT_NAME).md
6+
XML_TARGET := draft/$(DRAFT_NAME).xml
7+
TXT_TARGET := draft/$(DRAFT_NAME).txt
8+
HTML_TARGET := draft/$(DRAFT_NAME).html
9+
# If you have PDF support installed for xml2rfc:
10+
# PDF_TARGET := $(DRAFT_NAME).pdf
11+
12+
# Define commands for the converters
13+
# kramdown-rfc is typically available as a Ruby gem
14+
# sudo gem install kramdown-rfc
15+
KRAMDOWN_RFC := kramdown-rfc
16+
17+
# xml2rfc is a Python package
18+
# pip install xml2rfc
19+
# For PDF support: pip install "xml2rfc[pdf]"
20+
XML2RFC := xml2rfc
21+
22+
# Default target: build all common formats
23+
all: $(TXT_TARGET) $(HTML_TARGET) # $(PDF_TARGET)
24+
25+
# Rule to convert Markdown to RFCXML
26+
$(XML_TARGET): $(MD_SOURCE)
27+
mkdir -p draft || true
28+
@echo "Converting $(MD_SOURCE) to RFCXML ($(XML_TARGET))..."
29+
$(KRAMDOWN_RFC) $< > $@
30+
@echo "RFCXML conversion complete $@"
31+
32+
# Rule to convert RFCXML to TXT
33+
$(TXT_TARGET): $(XML_TARGET)
34+
@echo "Converting $(XML_TARGET) to TXT ($(TXT_TARGET))..."
35+
$(XML2RFC) --text $< -o $@
36+
@echo "TXT conversion complete."
37+
38+
# Rule to convert RFCXML to HTML
39+
$(HTML_TARGET): $(XML_TARGET)
40+
@echo "Converting $(XML_TARGET) to HTML ($(HTML_TARGET))..."
41+
$(XML2RFC) --html $< -o $@
42+
@echo "HTML conversion complete."
43+
44+
# Rule to convert RFCXML to PDF (uncomment if you have PDF setup)
45+
# $(PDF_TARGET): $(XML_TARGET)
46+
# @echo "Converting $(XML_TARGET) to PDF ($(PDF_TARGET))..."
47+
# $(XML2RFC) --pdf $< -o $@
48+
# @echo "PDF conversion complete."
49+
50+
# Clean up generated files
51+
clean:
52+
@echo "Cleaning up generated files..."
53+
rm -f $(XML_TARGET) $(TXT_TARGET) $(HTML_TARGET) $(PDF_TARGET)
54+
@echo "Clean up complete."
55+
56+
.PHONY: all clean

0 commit comments

Comments
 (0)