Radix cross Linux Build System

Cross-platform build system is designed to build distributions of different operating systems for a set of target devices

39 Commits   2 Branches   2 Tags
Index: CPAN-Config.pm.in
===================================================================
--- CPAN-Config.pm.in	(nonexistent)
+++ CPAN-Config.pm.in	(revision 5)
@@ -0,0 +1,73 @@
+
+$CPAN::Config = {
+  'allow_installing_module_downgrades' => q[ask/no],
+  'allow_installing_outdated_dists' => q[ask/no],
+  'applypatch' => q[],
+  'auto_commit' => q[0],
+  'build_cache' => q[100],
+  'build_dir' => q[@BUILDSYSTEM@/var/.cpan/build],
+  'build_dir_reuse' => q[0],
+  'build_requires_install_policy' => q[yes],
+  'bzip2' => q[@BZIP2@],
+  'cache_metadata' => q[1],
+  'check_sigs' => q[0],
+  'cleanup_after_install' => q[1],
+  'colorize_output' => q[0],
+  'commandnumber_in_prompt' => q[1],
+  'connect_to_internet_ok' => q[1],
+  'cpan_home' => q[@BUILDSYSTEM@/var/.cpan],
+  'ftp_passive' => q[1],
+  'ftp_proxy' => q[],
+  'getcwd' => q[cwd],
+  'gpg' => q[@GPG@],
+  'gzip' => q[@GZIP@],
+  'halt_on_failure' => q[0],
+  'histfile' => q[@BUILDSYSTEM@/var/.cpan/histfile],
+  'histsize' => q[100],
+  'http_proxy' => q[],
+  'inactivity_timeout' => q[0],
+  'index_expire' => q[1],
+  'inhibit_startup_message' => q[0],
+  'keep_source_where' => q[@BUILDSYSTEM@/var/.cpan/sources],
+  'load_module_verbosity' => q[none],
+  'make' => q[@MAKE@],
+  'make_arg' => q[-j4],
+  'make_install_arg' => q[UNINST=1 INSTALLDIRS=vendor],
+  'make_install_make_command' => q[@MAKE@],
+  'makepl_arg' => q[INSTALLDIRS=vendor],
+  'mbuild_arg' => q[--extra_linker_flags -L/usr/lib@LIBDIRSUFFIX@ --installdirs vendor],
+  'mbuild_install_arg' => q[--uninst 1 --installdirs vendor],
+  'mbuild_install_build_command' => q[./Build],
+  'mbuildpl_arg' => q[--extra_linker_flags -L/usr/lib@LIBDIRSUFFIX@ --installdirs vendor],
+  'no_proxy' => q[],
+  'pager' => q[@LESS@],
+  'patch' => q[@PATCH@],
+  'perl5lib_verbosity' => q[none],
+  'prefer_external_tar' => q[1],
+  'prefer_installer' => q[MB],
+  'prefs_dir' => q[@BUILDSYSTEM@/var/.cpan/prefs],
+  'prerequisites_policy' => q[follow],
+  'recommends_policy' => q[0],
+  'scan_cache' => q[atstart],
+  'shell' => q[@BASH@],
+  'show_unparsable_versions' => q[0],
+  'show_upload_date' => q[0],
+  'show_zero_versions' => q[0],
+  'suggests_policy' => q[1],
+  'tar' => q[@TAR@],
+  'tar_verbosity' => q[none],
+  'term_is_latin' => q[1],
+  'term_ornaments' => q[1],
+  'test_report' => q[0],
+  'trust_test_report_history' => q[0],
+  'unzip' => q[@UNZIP@],
+  'urllist' => [q[http://www.cpan.org/]],
+  'use_prompt_default' => q[0],
+  'use_sqlite' => q[0],
+  'version_timeout' => q[15],
+  'wget' => q[@WGET@],
+  'yaml_load_code' => q[0],
+  'yaml_module' => q[YAML],
+};
+1;
+__END__
Index: CPAN-install.in
===================================================================
--- CPAN-install.in	(nonexistent)
+++ CPAN-install.in	(revision 5)
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+module=$1
+
+if [ -z "${module}" ] ; then
+  exit 0
+fi
+
+CONFIG=@BUILDSYSTEM@/var/.cpan/CPAN/Config.pm
+
+@BUILDSYSTEM@/usr/bin/cpan -T -j ${CONFIG} install ${module}
Index: Makefile
===================================================================
--- Makefile	(nonexistent)
+++ Makefile	(revision 5)
@@ -0,0 +1,41 @@
+
+COMPONENT_TARGETS = $(HARDWARE_BUILD)
+
+include ../../build-system/constants.mk
+
+# ======= __END_OF_REQUIRES__ =======
+
+cpan-config    = CPAN-Config.pm
+cpan-install   = CPAN-install
+
+config_targets = $(cpan-config) $(cpan-install)
+
+install_target = .installed
+
+BUILD_TARGETS = $(install_target)
+
+CLEANUP_FILES += autom4te.cache
+CLEANUP_FILES += $(config_targets)
+CLEANUP_FILES += $(install_target)
+CLEANUP_FILES += config.log
+CLEANUP_FILES += config.status
+CLEANUP_FILES += configure
+
+include ../../build-system/core.mk
+
+.NOTPARALLEL:
+
+$(config_targets):
+	@autoconf
+	@rm -rf autom4te.cache
+	@./configure
+
+$(install_target): $(config_targets)
+	@echo -e "\n======= Installing CPAN Install script =======\n"
+	@mkdir -p $(BUILDSYSTEM)/var/.cpan/CPAN && \
+	  install --mode=644 $(cpan-config) $(BUILDSYSTEM)/var/.cpan/CPAN/Config.pm
+	@mkdir -p $(BUILDSYSTEM)/usr/bin && \
+	  install --mode=755 $(cpan-install) $(BUILDSYSTEM)/usr/bin/cpan-install
+	@mkdir -p $(BUILDSYSTEM)/sbin && \
+	  echo "CPAN_INSTALL       := $(BUILDSYSTEM)/usr/bin/cpan-install" >> $(BUILDSYSTEM)/sbin/.config
+	@touch $@
Index: acsite.m4
===================================================================
--- acsite.m4	(nonexistent)
+++ acsite.m4	(revision 5)
@@ -0,0 +1,34 @@
+
+dnl ============================================================
+dnl  Test for build_host `ln -s' .
+dnl  ============================
+dnl
+dnl Usage:
+dnl -----
+dnl    AC_PATH_PROG_LN_S
+dnl    AC_SUBST(LN)
+dnl    AC_SUBST(LN_S)
+dnl
+dnl ============================================================
+AC_DEFUN(AC_PATH_PROG_LN_S,
+[AC_PATH_PROG(LN, ln, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_MSG_CHECKING(whether ln -s works on build host)
+AC_CACHE_VAL(ac_cv_path_prog_LN_S,
+[rm -f conftestdata
+if $LN -s X conftestdata 2>/dev/null
+then
+   rm -f conftestdata
+   ac_cv_path_prog_LN_S="$LN -s"
+else
+   ac_cv_path_prog_LN_S="$LN"
+fi])dnl
+LN_S="$ac_cv_path_prog_LN_S"
+if test "$ac_cv_path_prog_LN_S" = "$LN -s"; then
+   AC_MSG_RESULT(yes)
+else
+   AC_MSG_RESULT(no)
+fi
+AC_SUBST(LN)dnl
+AC_SUBST(LN_S)dnl
+])
+
Index: configure.ac
===================================================================
--- configure.ac	(nonexistent)
+++ configure.ac	(revision 5)
@@ -0,0 +1,106 @@
+
+dnl ============================================================
+dnl  Process this file with autoconf to produce
+dnl  a configure script.
+dnl ============================================================
+
+AC_PREREQ(2.58)dnl           dnl Minimum Autoconf version required.
+
+
+AC_INIT([build-system], [1.0.0])
+AC_CONFIG_SRCDIR(acsite.m4)
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: Test for Auxiliary (my be version sensitive)     $$
+dnl $$       programs                                         $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_RESULT(=======)
+AC_MSG_RESULT(======= Test for aux programs:)
+AC_MSG_RESULT(=======)
+
+dnl ============================================================
+dnl  Locate tools( on build machine! ) .
+dnl                =================
+dnl ============================================================
+AC_PATH_PROG_LN_S
+AC_SUBST(LN)
+AC_SUBST(LN_S)
+
+dnl  Нам нужен исполняемый файл pwd. Встроенный "pwd -P" нас
+dnl  не устраивает( из соображений переносимости ) .
+AC_PATH_PROG(PWD_P, pwd, no)
+if test "$PWD_P" = no; then
+   AC_MSG_ERROR(********   A pwd binary could not be found.)
+fi
+
+AC_PATH_PROGS(SED, sed gsed, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+
+AC_PATH_PROGS(TAR, tar gtar, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+
+AC_PATH_PROG(BASH, bash, no)
+if test "$BASH" != no &&
+   $BASH -c 'test "$BASH_VERSINFO" \
+             && test "$BASH_VERSINFO" -ge 2 >&/dev/null'; then
+   parse_conf_cv_have_bash2=yes
+else
+   parse_conf_cv_have_bash2=no
+fi
+AC_SUBST(parse_conf_cv_have_bash2)
+
+AC_PATH_PROG(BZIP2, bzip2, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(GPG,   gpg,   no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(GZIP,  gzip,  no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(MAKE,  make,  no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(LESS,  less,  no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(PATCH, patch, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(UNZIP, unzip, no, /usr/local/bin:/usr/bin:/bin:$PATH)
+AC_PATH_PROG(WGET,  wget,  no, /usr/local/bin:/usr/bin:/bin:$PATH)
+
+AC_SUBST(BUILDSYSTEM, [$BUILDSYSTEM])
+
+AC_PATH_PROG(GCC, gcc, no)
+if test "$GCC" != no ; then
+   LIBDIRSUFFIX=$($GCC -print-multi-os-directory | head -1 | sed 's,[[^0-9]]*\([[0-9]]*\)$,\1,')
+else
+   LIBDIRSUFFIX=
+fi
+AC_SUBST(LIBDIRSUFFIX)
+
+
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl $$                                                        $$
+dnl $$ PART: OUTPUT Substitution                              $$
+dnl $$                                                        $$
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+dnl ============================================================
+AC_MSG_RESULT(=======)
+AC_MSG_RESULT(======= OUTPUT:)
+AC_MSG_RESULT(=======)
+
+
+AC_OUTPUT([
+CPAN-Config.pm
+CPAN-install
+])
+
+AC_MSG_RESULT(=======)
+AC_MSG_RESULT(======= End of test for aux programs.)
+AC_MSG_RESULT(=======)
Index: .
===================================================================
--- .	(nonexistent)
+++ .	(revision 5)

Property changes on: .
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,51 ##
+
+# local config & object files
+build-config.mk
+sbin
+usr
+var
+
+# configure targets
+autom4te.cache
+.config
+config.log
+config.status
+configure
+
+# cpan configure targets
+.installed
+CPAN-Config.pm
+CPAN-install
+
+# Target build dirs
+.build-machine
+
+# Timestamps
+.makefile
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Object Files
+*.[ao]
+
+# backup copies
+*~