Log of /branches/common-nfo/mk/package.mk
Parent Directory
|
Revision Log
Revision
3265 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 18 12:45:43 2007 UTC
(6 years, 7 months ago)
by
tg
File length: 6014 byte(s)
Diff to
previous 3264
copy trunk/freewrt r3264 into a new branch for making the nfo system
because upgrading the old adk branch would be a hell more work
Revision
2810 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 14 21:04:29 2007 UTC
(6 years, 8 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5601 byte(s)
Diff to
previous 2796
ever since moving the IPKG stamp files to bin/packages/ some things
were broken:
• make package=foo clean didn't clean the stamp files
• if the package version (or dashver) changed, the package did
not get rebuilt automatically
this commit fixes that
Revision
2678 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue May 29 14:04:00 2007 UTC
(6 years, 8 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5467 byte(s)
Diff to
previous 2663
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 ☻
Revision
2654 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 24 10:26:58 2007 UTC
(6 years, 9 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5454 byte(s)
Diff to
previous 2653
change the ipkg cookie as discussed in #FreeWRT
but move it to bin/packages/.stamps/ so that the usual and already
existing cleaning methods will get it in all cases and no manual
post-processing would be needed
THIS CHANGE REQUIRES A “make clean”!
Revision
2653 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 24 10:23:28 2007 UTC
(6 years, 9 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5441 byte(s)
Diff to
previous 2611
• base-files/files/etc/init.d/rcK, base-files/files/etc/init.d/rcS:
do correct shebang processing, like the BSD kernel and mksh: get
first line of script to run if it begins with "#!", strip that and
any leading space/tab off, then get shell name (terminates with
space/tab/end of string) and shell argument quoting according to
unix common proceedings; use /bin/sh as interpreter if none could
be found
• mk/package.mk: ensure all init scripts are 0755 by default
• busybox: flesh out inetd init script, so that all init scripts in
FreeWRT either can be found with -path \*/init.d/\* or -name \*.init
• other packages: add #!/bin/sh shebang line to init scripts¹, bump dashver
¹) change this to /bin/ash if you use ash-specific features that mksh
can also do; never use ash-specific features that mksh cannot do (are
there any?), change to /bin/mksh if you use mksh-specific features
and add a run-time dependency on mksh in that case
Revision
2591 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon May 21 14:28:15 2007 UTC
(6 years, 9 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5367 byte(s)
Diff to
previous 2519
by request of wbx@:
sort out the mess we had in ${TOPDIR}/staging_dir_${ARCH} and introduce
some new variables:
• ${STAGING_DIR} stays the same, but has a different location now
• ${STAGING_TOOLS} is where executables for the host system go
• ${STAGING_PARENT} is ${TOPDIR}/cross_${ARCH} and has three (at
the moment) subdirectories: host (i.e. STAGING_TOOLS), target
(i.e. STAGING_DIR) and pkg (used by package.mk, pkg-bottom.mk)
but is an internal-use-only variable - please don't use it.
this builds through with a non-default config; more testing will follow
Revision
2504 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon May 14 11:55:48 2007 UTC
(6 years, 9 months ago)
by
wbx
Original Path:
trunk/freewrt/mk/package.mk
File length: 5174 byte(s)
Diff to
previous 2295
*tada*
complete rework of the kernel and kernel module build process.
more modular, very fast and simple (perl free implementation TM)
* only choosen drivers are compiled in the ADK, significant faster
compiles (just 10 minutes for a basic image on my X40 notebook for
a WL500gp)
* if the user changes something in the ADK, thats not a problem, new
drivers are automatically compiled on next make run
* only one simple "kernelconfig" for every board-kernel combination
* two kind of configuration symbols:
- FWRT_KERNEL prefix, for kernel features without packages
- FWRT_KPACKAGE_KMOD prefix for kernel features or drivers with packages
* very simple to add new drivers to the ADK, just add stuff to
target/linux/config/Config.in.* and mk/modules.mk
* rebuild of firmware images without make clean if you change model/board
(nearly, one bug with base-files still exist)
* autogenerated ipkg control files
* first cleanup of special netfilter/iptables scripts (netfilter.mk is
obsolete)
* New menuconfig point ADK (for ccache, toolchain stuff, prefix,...)
* package collection is disabled for now, it seems unmaintained. it is better
to only have this in WIB, in my point of view
What is missing:
* pcmcia support and tests on Linksys WRT54G3G
* ip6tables 2.4/2.6
* ebtables for 2.6
* iptables package
* dependencies for shorewall/fwfirewall/iptables package
* documentation for the developer handbook
Please test and report bugs!
Revision
2295 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Mar 27 14:40:00 2007 UTC
(6 years, 11 months ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 5173 byte(s)
Diff to
previous 2278
more from the “coolz” departement:
• get rid of dependency on external ipkg and python stuff
• one distfile less too ;)
• while here, remove executable bits on more shell scripts
tested with a defaultconfig full bootstrap (cleandir+v)
Revision
2053 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Feb 17 22:18:21 2007 UTC
(7 years ago)
by
dnehring
Original Path:
trunk/freewrt/mk/package.mk
File length: 3902 byte(s)
Diff to
previous 2003
* Update tor to latest version (compile test only)
* Fix tor build with NDEBUG
* revert r2003, added -DNDEBUG again
Please do not remove NDEBUG, it helps very much for most packages. If problems occur without NDEBUG, please fix the specific package or report to me.
Revision
1995 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Feb 15 14:17:14 2007 UTC
(7 years ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 3902 byte(s)
Diff to
previous 1983
* package.mk: pass the correct shared library runpath and the
shared library link-time path to the linker (gcc); fixes most
shlib dependency issues
tested to build fine with approx. 80% of all packages; ok to
commit now wbx@
* kpkg.mk: at least linux 2.4 modules are built with LD=ld and
not LD=gcc, so -Wl,-foo must be replaced by -foo
(this is the reason why it's -Wl,-rpath -Wl,/usr/lib and not
-Wl,-rpath,/usr/lib in package.mk)
Revision
1791 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Jan 28 17:38:31 2007 UTC
(7 years ago)
by
tg
Original Path:
trunk/freewrt/mk/package.mk
File length: 3632 byte(s)
Diff to
previous 1771
* pkg-bottom.mk: use single quotes, not double quotes, for the text,
as we don't use shell variables inside
* package.mk: it's not enough to check for /lib/* stuff in ${WRKINST},
we must also check for it in ${IDIR_*} if we want to prevent certain
overwrite-and-delete scenarios…
Revision
1686 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Jan 20 21:21:59 2007 UTC
(7 years, 1 month ago)
by
n0-1
Original Path:
trunk/freewrt/mk/package.mk
File length: 3532 byte(s)
Diff to
previous 790
merged from branches/common-adk 1310:1685
the following packages are not converted yet:
* alsa
* asterisk
* pmacct
* zaptel
* elinks
* libgd
* lua
* mypackage
* openser
* php*
* snort*
* tmsnc
additionally, freeradius doesn't compile.
happy fixing :P
Revision
404 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Jul 25 11:36:46 2006 UTC
(7 years, 7 months ago)
by
tg
Original Path:
trunk/freewrt/package/rules.mk
File length: 3084 byte(s)
Diff to
previous 393
(cd package/foo; TOPDIR=../.. gmake update-patches) # should now work
IMPORTANT: gmake TOPDIR=../.. foo *does not work* (since it overrides
the correct value which otherwise gets pulled from prereq.mk after it
has been found from the environment-TOPDIR value and gets preference)
Revision
327 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 21 19:19:44 2006 UTC
(7 years, 7 months ago)
by
tg
Original Path:
trunk/freewrt/package/rules.mk
File length: 2526 byte(s)
Diff to
previous 322
GNU make and templates are limiting the use of variables,
so, after HOURS of trying AND reading the texinfo documentation,
I decided to give up and move the WRKDIR spec outside of the template,
thus possibly yielding improper results, but hey it seems to work
(at least for the zlib package, will test full build now)
Revision
307 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 21 00:10:42 2006 UTC
(7 years, 7 months ago)
by
tg
Original Path:
trunk/freewrt/package/rules.mk
File length: 2361 byte(s)
Diff to
previous 306
* use WRKSRC for patch, not WRKBUILD
* fix clean target
XXX we should put the stamps into WRKDIR, i.e. use
XXX ${WRKDIR}/.prepared instead of ${WRKBUILD}/.prepared
XXX and get rid of the stamps in the stamps dir altogether
Revision
303 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Jul 20 23:56:32 2006 UTC
(7 years, 7 months ago)
by
tg
Original Path:
trunk/freewrt/package/rules.mk
File length: 2585 byte(s)
Diff to
previous 302
* whitespace cleanup, while here
* move WRKDIR and DISTFILES definition into PKG_template
* define WRKDIR via parent BUILD_DIR instead of going up from WRKSRC
* use a sub-directory as WRKDIR, like BSD
* rename PKG_BUILD_DIR into WRKBUILD
* define WRKBUILD relative via WRKDIR
* rename PKG_INSTALL_DIR into WRKINST
* fix a few dependencies
* make use of common cases in the definition of WRKBUILD and
WRKINST, removing many redundant lines
* use WRKDIR instead of BUILD_DIR in places where the latter
was used previously
* while here, remove PKG_CAT stuff
this only affects packages, for now
Revision
200 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Jul 16 14:53:28 2006 UTC
(7 years, 7 months ago)
by
tg
Original Path:
trunk/freewrt/package/rules.mk
File length: 2574 byte(s)
Diff to
previous 132
* new variables WRKDIR, DISTFILES (similar to MirPorts Framework)
default to ${PKG_BUILD_DIR} and ${DL_DIR}/${PKG_SOURCE}, respectively,
for the package/ case (more to come)
* instead of PKG_CAT and friends use an EXTRACT_CMD similar to
the EXTRACT_CASES variable of MirPorts, only simpler
not tested yet, will do that ASAP
ok wbx@
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.