# Variables ifdef dark dark_color=$(dark) endif ifdef light light_color=$(light) endif ifdef middle middle_color=$(middle) endif ifneq ($(wildcard $(dark)),) dark_color=transparent endif ifneq ($(wildcard $(light)),) light_color=transparent endif ifneq ($(wildcard $(middle)),) middle_color=transparent endif size?=1024 dark_color?=black light_color?=white middle_color?=transparent # Base targets default: build # Build process build: clean logo.svg @cp logo.svg temp.svg @sed -i 's|fill: black|:fill1:|' temp.svg @sed -i 's|fill: white|:fill2:|' temp.svg @sed -i 's|fill: gray|:fill3:|' temp.svg @sed -i 's|:fill1:|fill: $(dark_color)|' temp.svg @sed -i 's|:fill2:|fill: $(light_color)|' temp.svg @sed -i 's|:fill3:|fill: $(middle_color)|' temp.svg @sed -i 's|dark.png|:image1:|' temp.svg @sed -i 's|light.png|:image2:|' temp.svg @sed -i 's|middle.png|:image3:|' temp.svg @sed -i 's|:image1:|$(dark)|' temp.svg @sed -i 's|:image2:|$(light)|' temp.svg @sed -i 's|:image3:|$(middle)|' temp.svg convert -background none -size $(size)x$(size) temp.svg logo.png clean: @rm -f logo.png temp.svg # Linting lint: xmllint xmllint: logo.svg xmllint --noout logo.svg