diff --git a/Makefile b/Makefile
index 95efe6218..d0971d942 100644
--- a/Makefile
+++ b/Makefile
@@ -220,18 +220,17 @@ build/%.pls : NOVALID:=true
portal:
mkdir $@
-portal/fetch.sh : STYLE=xsl/portal2fetch.xsl
-portal/fetch.sh : NOINPUTVALID:=true
-portal/fetch.sh : NOVALID:=true
-portal/fetch.sh: content/portal-config.xml $(STYLE)
+portal/Makefile : STYLE=xsl/portal2fetch.xsl
+portal/Makefile : NOINPUTVALID:=true
+portal/Makefile : NOVALID:=true
+portal/Makefile: content/portal-config.xml $(STYLE)
$(call xml_process)
- chmod a+x $@
portal/items.xml : STYLE=xsl/portal2items.xsl
portal/items.xml : NOINPUTVALID:=true
portal/items.xml : NOVALID:=true
-portal/items.xml: content/portal-config.xml $(STYLE) portal/fetch.sh news.xml
- ( cd portal && ./fetch.sh )
+portal/items.xml: content/portal-config.xml $(STYLE) portal/Makefile news.xml
+ $(MAKE) -C portal fetch
$(call xml_process)
portal/items-sorted.xml : STYLE=xsl/portal-sort.xsl
diff --git a/xsl/portal2fetch.xsl b/xsl/portal2fetch.xsl
index defe64e14..fdc910531 100644
--- a/xsl/portal2fetch.xsl
+++ b/xsl/portal2fetch.xsl
@@ -5,14 +5,20 @@
- #!/bin/sh
+ fetch:
+
+ portal-
+
+ .xml
+
+
- wget -O portal-
+ portal-
- .xml --no-check-certificate '
+ .xml:
wget -O $@ --no-check-certificate '
'