diff options
-rw-r--r-- | CREDITS | 4 | ||||
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | README | 50 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | generic/etc/init.d/banner | 8 | ||||
-rw-r--r-- | patches/db-4.1.25.NC/generic/db-4.1.25.NC-destdir.diff | 105 | ||||
-rw-r--r-- | patches/db-4.1.25.NC/generic/series | 1 | ||||
-rw-r--r-- | rules/alsa-lib.in | 1 | ||||
-rw-r--r-- | rules/db41.in | 14 | ||||
-rw-r--r-- | rules/db41.make | 18 | ||||
-rw-r--r-- | rules/pre/Rules.make | 2 | ||||
-rw-r--r-- | rules/sysfsutils.make | 2 |
12 files changed, 196 insertions, 30 deletions
@@ -138,6 +138,10 @@ N: Jochen Striepe E: jochen@tolot.escape.de D: Developer +N: Jari Takkala +E: Jari.Takkala@Q9.com +D: Developer + N: Gary Thomas E: gary@mlbassoc.com D: Developer @@ -1,3 +1,22 @@ +2007-05-05 Robert Schwebel <r.schwebel@pengutronix.de> + + * trunk: backports from 1.0.0-trunk + +2007-05-05 Robert Schwebel <r.schwebel@pengutronix.de> + + * release: released 1.0.0 + +2007-05-04 Robert Schwebel <r.schwebel@pengutronix.de> + + * figlet: fix output + * db41: cleanup; patch by Randall Loomis + * db41: fixed build issues with the patch above + * sysfsutils: fixed install path for systool; patch by Jari + Takkala + * alsa-lib: resmgr support is broken, because it needs libresmgr + * Rules.make: remove internal quotes in pkg-config path; patch + by Jari Takkala + 2007-05-04 Marc Kleine-Budde <m.kleine-budde@pengutronix.de> * apply_patch_series.sh: removed debug @@ -1,6 +1,18 @@ PTXdist ======= +Necessary Packages +------------------ + +In order to build ptxdist, you need three archives: + + ptxdist-<version>.tgz (mandatory) + ptxdist-<version>-patches.tgz (mandatory) + ptxdist-<version>-projects.tgz (optional) + +Extract these archives into some build directory; the tarballs are put +together in a way that they extract into one subdir ptxdist-<version>. + Installation ------------ @@ -16,9 +28,9 @@ to build everything and make install -in case you want to install it. When you start using PTXdist, make sure -your $PATH environment variable points to <installpath>/bin, because -that's where the ptxdist frontend program is being installed to. +to install it. When you start using PTXdist, make sure your $PATH +environment variable points to <installpath>/bin, because that's where +the ptxdist frontend program is being installed to. For developers who want to work with svn versions of PTXdist it is only necessary to run "./configure && make" and set the PATH variable to the @@ -28,23 +40,33 @@ bin/ directory inside the PTXdist tree. Quickstart ---------- -For the impatient: try out to compile your own Linux system for generic -i586 and above machines by cloning the generic-i586-glibc project: +PTXdist comes with some example projects in the - somewhere$ ptxdist clone generic-i586-glibc myproject + ptxdist-<version>-projects.tgz + +archive. If this packet is installed with ptxdist it is possible to +"clone" the example projects and use them i.e. as a start for your own +project. Find out which projects are available, using -This copies the generic-i586-glibc project into ./myproject, which is + $ ptxdist projects + +Then clone a project with + + $ ptxdist clone <projectname> myproject + +This copies the project named <projectname> into ./myproject, which is your "workspace" for the following actions. Change into your project's workspace and build everything: - somewhere$ cd myproject - somewhere/myproject$ ptxdist go + $ cd myproject + $ ptxdist go This builds a root filesystem into the root/ directory of your -workspace. You can try it with +workspace. If the project was built for the same architecture as your +devenlopment machine, you can try it with - somewhere/myproject$ chroot root/ /bin/sh + $ chroot root/ /bin/sh If you have more time to find out how it works, read on. @@ -58,9 +80,13 @@ but there is no reason why you can't use it to configure your firewall, router or whatever dedicated "device" comes to your mind. The job works like this: you run 'ptxdist menuconfig', configure what -you need and get a .config file. Run 'ptxdist go' and you'll find a +you need and get a 'ptxconfig' file. Run 'ptxdist go' and you'll find a root tree in root/. Voila. +All magic necessary to do these things in a cross enviroment are written +into "recipies", living in rules/*.make, and config menues in +rules/*.in. + Directory Layout ---------------- diff --git a/configure.ac b/configure.ac index c220444e8..ea20c76ee 100644 --- a/configure.ac +++ b/configure.ac @@ -5,7 +5,7 @@ dnl dnl FIXME: how to have the version number only in one place? dnl -AC_INIT([ptxdist],[0.10.svn],[ptxdist@pengutronix.de]) +AC_INIT([ptxdist],[1.0.0],[ptxdist@pengutronix.de]) AC_CONFIG_AUX_DIR(autoconf) AC_PREREQ(2.59) AC_REVISION ($Revision: 1.38 $) diff --git a/generic/etc/init.d/banner b/generic/etc/init.d/banner index f5ab8469a..0aad5a5eb 100644 --- a/generic/etc/init.d/banner +++ b/generic/etc/init.d/banner @@ -6,11 +6,17 @@ # Robert Schwebel <r.schwebel@pengutronix.de> # +FIGLET="/usr/sbin/figlet" +FIGLET_FONTS="/usr/share/figlet" + echo echo "OSELAS(R)-@PROJECT@@PRJVERSION@ (@PTXDIST@-@VERSION@.@PATCHLEVEL@.@SUBLEVEL@@EXTRAVERSION@/@DATE@)" echo host=`/bin/hostname` -/usr/sbin/figlet -f /usr/share/figlet/standard "@VENDOR@$host" +if [ -n "@VENDOR@" ]; then + ${FIGLET} -w 0 -f "${FIGLET_FONTS}/standard" "@VENDOR@" +fi +${FIGLET} -w 0 -f "${FIGLET_FONTS}/standard" "$host" echo echo diff --git a/patches/db-4.1.25.NC/generic/db-4.1.25.NC-destdir.diff b/patches/db-4.1.25.NC/generic/db-4.1.25.NC-destdir.diff new file mode 100644 index 000000000..e0f64c106 --- /dev/null +++ b/patches/db-4.1.25.NC/generic/db-4.1.25.NC-destdir.diff @@ -0,0 +1,105 @@ +Index: db-4.1.25.NC/dist/Makefile.in +=================================================================== +--- db-4.1.25.NC.orig/dist/Makefile.in ++++ db-4.1.25.NC/dist/Makefile.in +@@ -541,30 +541,30 @@ library_install: install_include install + uninstall: uninstall_include uninstall_lib uninstall_utilities uninstall_docs + + install_setup: +- @test -d $(prefix) || \ +- ($(mkdir) -p $(prefix) && $(chmod) $(dmode) $(prefix)) ++ @test -d $(DESTDIR)/$(prefix) || \ ++ ($(mkdir) -p $(DESTDIR)/$(prefix) && $(chmod) $(dmode) $(DESTDIR)/$(prefix)) + + INCDOT= db.h db_cxx.h @ADDITIONAL_INCS@ + INCINC= cxx_common.h cxx_except.h + install_include: + @echo "Installing DB include files: $(includedir) ..." +- @test -d $(includedir) || \ +- ($(mkdir) -p $(includedir) && $(chmod) $(dmode) $(includedir)) +- @cd $(includedir) && $(rm) -f $(INCDOT) $(INCINC) +- @$(cp) -p $(INCDOT) $(includedir) +- @cd $(srcdir)/dbinc/ && $(cp) -p $(INCINC) $(includedir) +- @cd $(includedir) && $(chmod) $(fmode) $(INCDOT) $(INCINC) ++ @test -d $(DESTDIR)/$(includedir) || \ ++ ($(mkdir) -p $(DESTDIR)/$(includedir) && $(chmod) $(dmode) $(DESTDIR)/$(includedir)) ++ @cd $(DESTDIR)/$(includedir) && $(rm) -f $(INCDOT) $(INCINC) ++ @$(cp) -p $(INCDOT) $(DESTDIR)/$(includedir) ++ @cd $(srcdir)/dbinc/ && $(cp) -p $(INCINC) $(DESTDIR)/$(includedir) ++ @cd $(DESTDIR)/$(includedir) && $(chmod) $(fmode) $(INCDOT) $(INCINC) + + uninstall_include: +- @cd $(includedir) && $(rm) -f $(INCDOT) $(INCINC) ++ @cd $(DESTDIR)/$(includedir) && $(rm) -f $(INCDOT) $(INCINC) + + install_lib: + @echo "Installing DB library: $(libdir) ..." +- @test -d $(libdir) || \ +- ($(mkdir) -p $(libdir) && $(chmod) $(dmode) $(libdir)) +- @cd $(libdir) && $(rm) -f $(LIB_INSTALL_FILE_LIST) +- @$(INSTALLER) @INSTALL_LIBS@ $(libdir) +- @(cd $(libdir) && \ ++ @test -d $(DESTDIR)/$(libdir) || \ ++ ($(mkdir) -p $(DESTDIR)/$(libdir) && $(chmod) $(dmode) $(DESTDIR)/$(libdir)) ++ @cd $(DESTDIR)/$(libdir) && $(rm) -f $(LIB_INSTALL_FILE_LIST) ++ @$(INSTALLER) @INSTALL_LIBS@ $(DESTDIR)/$(libdir) ++ @(cd $(DESTDIR)/$(libdir) && \ + test -f $(libso) && $(ln) -s $(libso) $(libso_default); \ + test -f $(libso) && $(ln) -s $(libso) $(libso_major); \ + test -f $(libso_static) && $(ln) -s $(libso_static) $(libdb); \ +@@ -577,26 +577,26 @@ install_lib: + test -f $(libjso) && $(ln) -s $(libjso) $(libjso_major); \ + test -f $(libjso) && $(ln) -s $(libjso) $(libjso_g)) || true + @(test -f $(libj_jarfile) && \ +- $(cp) $(libj_jarfile) $(libdir) && \ +- $(chmod) $(fmode) $(libdir)/$(libj_jarfile)) || true ++ $(cp) $(libj_jarfile) $(DESTDIR)/$(libdir) && \ ++ $(chmod) $(fmode) $(DESTDIR)/$(libdir)/$(libj_jarfile)) || true + + uninstall_lib: +- @cd $(libdir) && $(rm) -f $(LIB_INSTALL_FILE_LIST) ++ @cd $(DESTDIR)/$(libdir) && $(rm) -f $(LIB_INSTALL_FILE_LIST) + + install_utilities: + echo "Installing DB utilities: $(bindir) ..." +- @test -d $(bindir) || \ +- ($(mkdir) -p $(bindir) && $(chmod) $(dmode) $(bindir)) ++ @test -d $(DESTDIR)/$(bindir) || \ ++ ($(mkdir) -p $(DESTDIR)/$(bindir) && $(chmod) $(dmode) $(DESTDIR)/$(bindir)) + @for i in $(UTIL_PROGS); do \ +- $(rm) -f $(bindir)/$$i $(bindir)/$$i.exe; \ ++ $(rm) -f $(DESTDIR)/$(bindir)/$$i $(bindir)/$$i.exe; \ + test -f $$i.exe && i=$$i.exe || true; \ +- $(INSTALLER) $$i $(bindir)/$$i; \ +- test -f $(strip) && $(strip) $(bindir)/$$i || true; \ +- $(chmod) $(emode) $(bindir)/$$i; \ ++ $(INSTALLER) $$i $(DESTDIR)/$(bindir)/$$i; \ ++ test -f $(strip) && $(strip) $(DESTDIR)/$(bindir)/$$i || true; \ ++ $(chmod) $(emode) $(DESTDIR)/$(bindir)/$$i; \ + done + + uninstall_utilities: +- @(cd $(bindir); for i in $(UTIL_PROGS); do \ ++ @(cd $(DESTDIR)/$(bindir); for i in $(UTIL_PROGS); do \ + $(rm) -f $$i $$i.exe; \ + done) + +@@ -605,13 +605,13 @@ DOCLIST=\ + sleepycat utility + install_docs: + @echo "Installing documentation: $(docdir) ..." +- @test -d $(docdir) || \ +- ($(mkdir) -p $(docdir) && $(chmod) $(dmode) $(docdir)) +- @cd $(docdir) && $(rm) -rf $(DOCLIST) +- @cd $(srcdir)/docs && $(cp) -pr $(DOCLIST) $(docdir)/ ++ @test -d $(DESTDIR)/$(docdir) || \ ++ ($(mkdir) -p $(DESTDIR)/$(docdir) && $(chmod) $(dmode) $(DESTDIR)/$(docdir)) ++ @cd $(DESTDIR)/$(docdir) && $(rm) -rf $(DOCLIST) ++ @cd $(srcdir)/docs && $(cp) -pr $(DOCLIST) $(DESTDIR)/$(docdir)/ + + uninstall_docs: +- @cd $(docdir) && $(rm) -rf $(DOCLIST) ++ @cd $(DESTDIR)/$(docdir) && $(rm) -rf $(DOCLIST) + + ################################################## + # RPM, Embedix build and install. diff --git a/patches/db-4.1.25.NC/generic/series b/patches/db-4.1.25.NC/generic/series new file mode 100644 index 000000000..4e2e1b714 --- /dev/null +++ b/patches/db-4.1.25.NC/generic/series @@ -0,0 +1 @@ +db-4.1.25.NC-destdir.diff diff --git a/rules/alsa-lib.in b/rules/alsa-lib.in index c63716faa..71266d2ae 100644 --- a/rules/alsa-lib.in +++ b/rules/alsa-lib.in @@ -7,6 +7,7 @@ menuconfig ALSA_LIB config ALSA_LIB_RESMGR bool depends on ALSA_LIB + depends on BROKEN prompt "build resmgr" help support resmgr (optional component) diff --git a/rules/db41.in b/rules/db41.in index ab16a50e4..d7b7ef5a9 100644 --- a/rules/db41.in +++ b/rules/db41.in @@ -1,16 +1,16 @@ -menuconfig DB - bool "Berkeley DB-4 (4.1) " +menuconfig DB41 + bool "Berkeley DB-4.1 " -config DB_INSTALL_BIN_UTIL +config DB41_INSTALL_BIN_UTIL bool prompt "install db_* tools on target" - depends on DB + depends on DB41 help v4.x Berkeley Database Tools - + This package provides different tools for manipulating databases in the Berkeley v4.x database format, and includes: - + db_archive: write the pathnames of the log files no longer in use. db_checkpoint: daemon process to monitor the database log and checkpoint it periodically. @@ -20,6 +20,6 @@ config DB_INSTALL_BIN_UTIL db_dump: read a database file and write it in a format understood by db_printlog: dump log files in human readable format. db_stat: display statistics for Berkeley DB environments. - db_upgrade: upgrades the version of files and the + db_upgrade: upgrades the version of files and the databases they contain. db_verify: check the structure of files and their databases. diff --git a/rules/db41.make b/rules/db41.make index 6d1dea47a..464558f4e 100644 --- a/rules/db41.make +++ b/rules/db41.make @@ -49,6 +49,7 @@ $(STATEDIR)/db41.extract: $(db41_extract_deps_default) @$(call targetinfo, $@) @$(call clean, $(DB41_DIR)) @$(call extract, DB41) + @$(call patchin, DB41) @$(call touch, $@) # ---------------------------------------------------------------------------- @@ -93,8 +94,6 @@ db41_install: $(STATEDIR)/db41.install $(STATEDIR)/db41.install: $(db41_install_deps_default) @$(call targetinfo, $@) - # FIXME - # @$(call install, DB41) $(DB41_PATH) $(DB41_ENV) make -C $(DB41_DIR)/dist install @$(call touch, $@) @@ -115,11 +114,16 @@ $(STATEDIR)/db41.targetinstall: $(db41_targetinstall_deps_default) @$(call install_fixup, db41,AUTHOR,"Robert Schwebel <r.schwebel\@pengutronix.de>") @$(call install_fixup, db41,DEPENDS,) @$(call install_fixup, db41,DESCRIPTION,missing) - - # FIXME: RSC: the wildcard will probably break; fix when needed :-) - # FIXME: RSC: use correct paths from the build directories - @$(call install_copy, db41, 0, 0, 0755, $(SYSROOT)/bin/db_*, /usr/bin/) - @$(call install_copy, db41, 0, 0, 0644, $(SYSROOT)/lib/libdb*.so*, /usr/lib/) + + cd $(SYSROOT)/usr/bin && for file in db_*; do \ + $(call install_copy, db41, 0, 0, 0755, $(SYSROOT)/usr/bin/$$file, /usr/bin/$$file); \ + done + @$(call install_copy, db41, 0, 0, 0644, $(SYSROOT)/usr/lib/libdb-4.1.so, /usr/lib/libdb-4.1.so) + @$(call install_link, db41, libdb-4.1.so, /usr/lib/libdb-4.so) + @$(call install_link, db41, libdb-4.1.so, /usr/lib/libdb.so) + @$(call install_copy, db41, 0, 0, 0644, $(SYSROOT)/usr/lib/libdb_cxx-4.1.so, /usr/lib/libdb_cxx-4.1.so) + @$(call install_link, db41, libdb_cxx-4.1.so, /usr/lib/libdb_cxx-4.so) + @$(call install_link, db41, libdb_cxx-4.1.so, /usr/lib/libdb_cxx.so) @$(call install_finish, db41) diff --git a/rules/pre/Rules.make b/rules/pre/Rules.make index 8b760bf09..8ba845903 100644 --- a/rules/pre/Rules.make +++ b/rules/pre/Rules.make @@ -226,7 +226,7 @@ CROSS_ENV_PROGS := \ CROSS_ENV_PKG_CONFIG := \ SYSROOT=$(SYSROOT) \ - PKG_CONFIG=$(PTXCONF_CROSS_PREFIX)/bin/$(COMPILER_PREFIX)pkg-config + PKG_CONFIG="$(call remove_quotes,$(PTXCONF_CROSS_PREFIX)/bin/$(COMPILER_PREFIX)pkg-config)" CROSS_ENV_FLAGS := \ $(CROSS_ENV_CFLAGS) \ diff --git a/rules/sysfsutils.make b/rules/sysfsutils.make index 2f00cae0d..01dba9684 100644 --- a/rules/sysfsutils.make +++ b/rules/sysfsutils.make @@ -120,7 +120,7 @@ ifdef PTXCONF_SYSFSUTILS_LIB @$(call install_link, sysfsutils, libsysfs.so.2.0.0, /lib/libsysfs.so) endif ifdef PTXCONF_SYSFSUTILS_SYSTOOL - @$(call install_copy, sysfsutils, 0, 0, 0775, $(SYSFSUTILS_DIR)/cmd/systool, /bin/systool, n) + @$(call install_copy, sysfsutils, 0, 0, 0775, $(SYSFSUTILS_DIR)/cmd/.libs/systool, /bin/systool, n) endif @$(call install_finish, sysfsutils) |