Show
Ignore:
Timestamp:
05/29/07 16:04:00 (2 years ago)
Author:
tg
Message:

the treebreaker ☺

overhaul the fetch'n'checksum system to be more bsd-like
• make fetch, make checksum supported
• future expansion possibilities already prepared:

– more distfiles than just one
– check sizes of downloaded files (size matters!!!!!111)
– more hashes than just MD5
– recursive fetch/checksum targets
– PERMIT_{SOURCES,DISTFILES}=Yes/«reason» – licence issues

• download.pl dies

quirks:
• GNU make only has a poor excuse for a .for loop
• some things (esp. toolchain and target/linux) now have

a ${WRKDIR} where they didn't have it before

• ${WRKDIR}/.checksum_done – no comment… it was necessary

because otherwise everything will get rebuilt every time
(did I mention that GNU make sucks?)

• I had troubles tracking the dependency problems down

because GNU make, unlike BSD make, doesn't have good debugging

• DISTFILES -> FULLDISTFILES
• DL_DIR -> DISTDIR
• PKG_SOURCE -> DISTFILES
• PKG_SOURCE_URL -> MASTER_SITES
• no @SF and @GNU any more, use BSD network.template syntax

(feel free to add more master sites)

• GNU make doesn't really strip whitespaces from variables…

(did I mention how much better BSD make is?)

• echo 'LOCAL_DISTFILES=/path/to/distfiles' >>${TOPDIR}/prefs.mk

will save the need to download 'em, Closes: #102

• MASTER_SITES now *must* have the trailing slashes (there may be

a few that don't and a few with double ones, please fix them)

I've tested that a normal build (unchanged .config from the default) works
on GNU/Linux. There's definitively room for improvement, but most of that
will come with the NFO system only. Fixes appreciated.

This work sponsored by AurISP, part of the NFO conversion project ☻

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/freewrt/tools/genext2fs/Makefile

    r2591 r2678  
    88PKG_VERSION:=           1.4-rc1 
    99PKG_MD5SUM:=            664431bf6737df1c265500e1f0b5d40c 
    10 PKG_SOURCE:=          $(PKG_NAME)_$(PKG_VERSION).orig.tar.gz 
    11 PKG_SOURCE_URL:=        http://ftp.debian.org/debian/pool/main/g/genext2fs 
     10DISTFILES:=           $(PKG_NAME)_$(PKG_VERSION).orig.tar.gz 
     11MASTER_SITES:=          http://ftp.debian.org/debian/pool/main/g/genext2fs/ 
    1212WRKDIST=                ${WRKDIR}/${PKG_NAME}-1.4rc1 
    1313 
    1414include $(TOPDIR)/rules.mk 
    1515include ../rules.mk 
     16#include ${TOPDIR}/mk/fetch.mk 
    1617 
    1718$(WRKBUILD)/genext2fs: $(WRKBUILD)/.prepared 
     
    2223        $(CP) $< $@ 
    2324 
    24 source: $(DL_DIR)/$(PKG_SOURCE) 
     25source: ${_CHECKSUM_COOKIE} 
    2526prepare: $(WRKBUILD)/.prepared 
    2627compile: $(STAGING_TOOLS)/bin/genext2fs