bug-make
[Top][All Lists]
Advanced

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

[bug #62175] Port tests to big endian.


From: Dmitry Goncharov
Subject: [bug #62175] Port tests to big endian.
Date: Sat, 12 Mar 2022 18:21:34 -0500 (EST)

URL:
  <https://savannah.gnu.org/bugs/?62175>

                 Summary: Port tests to big endian.
                 Project: make
            Submitted by: dgoncharov
            Submitted on: Sat 12 Mar 2022 11:21:32 PM UTC
                Severity: 3 - Normal
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
       Component Version: SCM
        Operating System: None
           Fixed Release: None
           Triage Status: None

    _______________________________________________________

Details:

Certain tests assume that make builds prerequisites in a specific order.

E.g. test features/se_explicit.diff.13 assumes that makes builds prerequisite
2.x before 1.x.


++++
features/se_explicit .................................... FAILED (14/18
passed)

4 Tests in 1 Category Failed (See .diff* files in work dir for details) :-(

$ cat work/features/se_explicit.diff
se_explicit.diff.13  se_explicit.diff.14  se_explicit.diff.15 
se_explicit.diff.17
$ cat work/features/se_explicit.diff.13
*** work/features/se_explicit.base.13   Sat Mar 12 16:37:19 2022
--- work/features/se_explicit.log.13    Sat Mar 12 16:37:19 2022
***************
*** 1,3 ****
- @=2.x,<=5.z,^=5.z 6.z,+=5.z 6.z 5.z,|=7.z 8.z,?=,*=,%=
  @=1.x,<=1.z,^=1.z 2.z,+=1.z 2.z 2.z,|=3.z 4.z,?=,*=,%=
  make: Nothing to be done for 'all'.
--- 1,3 ----
  @=1.x,<=1.z,^=1.z 2.z,+=1.z 2.z 2.z,|=3.z 4.z,?=,*=,%=
+ @=2.x,<=5.z,^=5.z 6.z,+=5.z 6.z 5.z,|=7.z 8.z,?=,*=,%=
  make: Nothing to be done for 'all'.
$
$ cat work/features/se_explicit.mk.12

.SECONDEXPANSION:
all: 2.x 1.x
2.x: 5.z 6.z 5.z | 7.z 7.z 8.z
1.x: 1.z 2.z 2.z | 3.z 4.z
2.x 1.x: 9.z $$(info @=$$@,<=$$<,^=$$^,+=$$+,|=$$|,?=$$?,*=$$*,%=$$%) ;
%.z: ;
$

features/se_implicit .................................... FAILED (24/25
passed)

1 Test in 1 Category Failed (See .diff* files in work dir for details) :-(

features/se_implicit .................................... FAILED (24/25
passed)

1 Test in 1 Category Failed (See .diff* files in work dir for details) :-(

$ cat work/features/se_implicit.diff.21
*** work/features/se_implicit.base.21   Sat Mar 12 16:41:59 2022
--- work/features/se_implicit.log.21    Sat Mar 12 16:41:59 2022
***************
*** 1,3 ****
- @=2.x,<=5.z,^=5.z 6.z,+=5.z 6.z 5.z,|=7.z 8.z,?=,*=2
  @=1.x,<=1.z,^=1.z 2.z,+=1.z 2.z 2.z,|=3.z 4.z,?=,*=1
  make: Nothing to be done for 'all'.
--- 1,3 ----
  @=1.x,<=1.z,^=1.z 2.z,+=1.z 2.z 2.z,|=3.z 4.z,?=,*=1
+ @=2.x,<=5.z,^=5.z 6.z,+=5.z 6.z 5.z,|=7.z 8.z,?=,*=2
  make: Nothing to be done for 'all'.
$
----

This happens, because when second expansion is enabled, snap_deps obtains the
list of prerequisites from hash_dump.
Those filenames hash to different buckets on different architectures and this
causes make to process prerequisites in the order determined by hashing.
i observed these failures on big endian sparc-sun and powerpc-aix


This patch uses prerequisite names intentionally chosen to hash in the same
order on both little and big endian.
Tested on big endian sparc-sun and powerpc-aix and little endian intel-linux,
all in 64 and 32 bit modes.

Some other tests assume that make removes intermediate files in a specific
order.

++++
features/patternrules ................................... FAILED (26/31
passed)

5 Tests in 1 Category Failed (See .diff* files in work dir for details) :-(

$ cat work/features/patternrules.diff.21
*** work/features/patternrules.base.21  Sat Mar 12 16:36:25 2022
--- work/features/patternrules.log.21   Sat Mar 12 16:36:25 2022
***************
*** 1,3 ****
  touch a.1 a.2
  cat a.1 a.2 >a.4
! rm a.1 a.2
--- 1,3 ----
  touch a.1 a.2
  cat a.1 a.2 >a.4
! rm a.2 a.1
----




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?62175>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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