bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

coreutils-6.0 on BeOS (1)


From: Bruno Haible
Subject: coreutils-6.0 on BeOS (1)
Date: Mon, 21 Aug 2006 20:20:27 +0200
User-agent: KMail/1.9.1

Hi,

On BeOS 5, building coreutils shows, apart from the c89-c99 and the gzip --help
issue (which have already been handled), a number of minor compilation failures.

The first problem is that, although src/Makefile has

  EXTRA_PROGRAMS = chroot$(EXEEXT) df$(EXEEXT) hostid$(EXEEXT) \
          nice$(EXEEXT) pinky$(EXEEXT) stty$(EXEEXT) su$(EXEEXT) \
          uname$(EXEEXT) uptime$(EXEEXT) users$(EXEEXT) who$(EXEEXT)
  OPTIONAL_BIN_PROGS =  uname$(EXEEXT) stty$(EXEEXT)

a "make check" attempts to builds the programs
  chroot - and fails because BeOS has no chroot() function,
  df - that compiles,
  hostid - fails because BeOS has no gethostid() function,
  nice - fails because BeOS has no nice() or getpriority() function,
  su - that compiles but is pointless,
  pinky, uptime, users, who - fail because BeOS has no <utmp.h> nor <utmpx.h>.

The 'check' target depends on 'check-AUTHORS'.
'check-AUTHORS' depends on $(all_programs).
$(all_programs) includes $(EXTRA_PROGRAMS).

Here is a possible fix, loosening the check-AUTHORS test and dependencies.
Another possibility would be to have 'distdir' instead of 'check' depend
on check-AUTHORS (but then you have to work around an automake bug: automake
drops the distdir rule if you make it depend on something).

2006-08-19  Bruno Haible  <address@hidden>

        Allow "make check" when some programs are not built.
        * src/Makefile.am (programs): New variable.
        (check-AUTHORS): Depend on $(programs), not $(all_programs). Ignore
        lines from AUTHORS that don't correspond to a program that was built.

*** src/Makefile.am.bak 2006-08-09 09:42:34.000000000 +0200
--- src/Makefile.am     2006-08-19 14:04:47.000000000 +0200
***************
*** 254,259 ****
--- 254,263 ----
  # current locale considers to be equal.
  ASSORT = LC_ALL=C sort
  
+ programs = \
+     $(bin_PROGRAMS) \
+     $(bin_SCRIPTS)
+ 
  all_programs = \
      $(bin_PROGRAMS) \
      $(bin_SCRIPTS) \
***************
*** 281,290 ****
  # Ensure that the list of programs and author names is accurate.
  au_dotdot = authors-dotdot
  au_actual = authors-actual
  .PHONY: check-AUTHORS
! check-AUTHORS: $(all_programs)
        rm -f $(au_actual) $(au_dotdot)
!       for i in `ls $(all_programs) | sed -e 's,$(EXEEXT)$$,,' \
            | $(ASSORT) -u`; do                         \
          test "$$i" = '[' && continue;                 \
          exe=$$i;                                      \
--- 285,295 ----
  # Ensure that the list of programs and author names is accurate.
  au_dotdot = authors-dotdot
  au_actual = authors-actual
+ au_diffs = authors-diffs
  .PHONY: check-AUTHORS
! check-AUTHORS: $(programs)
        rm -f $(au_actual) $(au_dotdot)
!       for i in `ls $(programs) | sed -e 's,$(EXEEXT)$$,,' \
            | $(ASSORT) -u`; do                         \
          test "$$i" = '[' && continue;                 \
          exe=$$i;                                      \
***************
*** 297,303 ****
            |sed -n '/Written by /{ s//'"$$i"': /; s/,* and /, /; s/\.$$//; p; 
}'; \
        done > $(au_actual)
        sed -n '/:/p' $(top_srcdir)/AUTHORS > $(au_dotdot)
!       diff $(au_actual) $(au_dotdot) && rm -f $(au_actual) $(au_dotdot)
  
  # Make sure we don't define any S_IS* macros in src/*.c files.
  # Not a big deal, but they're already defined via system.h.
--- 302,313 ----
            |sed -n '/Written by /{ s//'"$$i"': /; s/,* and /, /; s/\.$$//; p; 
}'; \
        done > $(au_actual)
        sed -n '/:/p' $(top_srcdir)/AUTHORS > $(au_dotdot)
!       diff $(au_actual) $(au_dotdot) > $(au_diffs);   \
!       if grep '^<' $(au_diffs) > /dev/null; then      \
!         cat $(au_diffs);                              \
!       else                                            \
!         rm -f $(au_actual) $(au_dotdot) $(au_diffs);  \
!       fi
  
  # Make sure we don't define any S_IS* macros in src/*.c files.
  # Not a big deal, but they're already defined via system.h.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]