Bug 1070380

Summary: FTBFS: error: Sorry, can not preprocess <lj_arch.h>
Product: [Fedora] Fedora Reporter: Karsten Hopp <karsten>
Component: texliveAssignee: Jindrich Novy <novyjindrich>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: rawhideCC: bbaude, dan, jcapik, novyjindrich, pertusus, than
Target Milestone: ---   
Target Release: ---   
Hardware: powerpc   
OS: Linux   
Whiteboard:
Fixed In Version: texlive-2013-8.20140305_r33094.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-03-25 14:04:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1077769    
Bug Blocks: 467765, 1071880, 1051573    
Attachments:
Description Flags
build.log
none
ppc64le build log
none
fix SUBDIR variable
none
add --disable-luajit on powerpc architectures none

Description Karsten Hopp 2014-02-26 17:03:57 UTC
Created attachment 868111 [details]
build.log

Description of problem:
checking how to run the C preprocessor... gcc -E
configure: error: Sorry, can not preprocess <lj_arch.h>
=== configuring in luajit failed
make[2]: *** [recurse] Error 1

Version-Release number of selected component (if applicable):
texlive-2013-6.20140217_r32990.fc21

How reproducible:


Steps to Reproduce:
1. ppc-koji build f21 --scratch texlive-2013-6.20140217_r32990.fc21.src.rpm
2.
3.

Actual results:
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1680138

Expected results:


Additional info:
texlive-2013-5.20140217_r32990.fc21 built without problems, -6 fails

Comment 1 Dan Horák 2014-03-04 20:48:26 UTC
Jindrich, luajit builds only on primary arches, so if possible make luajit support in texlive depending on "%ifarch %{arm} %{ix86} x86_64"

Comment 2 Brent Baude 2014-03-05 14:27:04 UTC
Adding some relevant content based on Dan's requests.  If I understand Dan, he's thinking that if web2c is enabled, it will automatically pull in the luajit stuff.  And here is where he thinks it was happening:



test "x$enable_web2c:$enable_luajittex" = xyes:yes && {
  need_poppler=yes
  need_cairo=yes
  need_libpng=yes
  need_zziplib=yes
  need_luajit=yes
}

Also attaching the full build log for ppc64le.

Comment 3 Brent Baude 2014-03-05 14:27:43 UTC
Created attachment 870994 [details]
ppc64le build log

Comment 4 Karsten Hopp 2014-03-06 18:27:53 UTC
Created attachment 871586 [details]
fix SUBDIR variable

All those checks in source/libs look wrong, they add the subdirectory even when that feature is disabled.

Comment 5 Karsten Hopp 2014-03-06 18:29:13 UTC
Created attachment 871587 [details]
add --disable-luajit on powerpc architectures

Comment 6 Dan Horák 2014-03-06 18:31:31 UTC
(In reply to Karsten Hopp from comment #5)
> Created attachment 871587 [details]
> add --disable-luajit on powerpc architectures

this should rather be %ifnarch %{arm} %{ix86} x86_64 - all except the named arches, luajit doesn't build for anything else

Comment 7 Brent Baude 2014-03-06 19:16:25 UTC
The two patches with Dan's rework on the arch declaration allows for a successful build.  I have verified on ppc64le.

Comment 8 Jaromír Cápík 2014-03-20 19:30:53 UTC
NOTE: I had to add bzip2-devel to BuildRequires as the configure checks fail on ppc64le due to that.

For example 'freetype-config --libs' returns -lbz2 as one of the libs and the check consequently fails on freetype even when freetype-devel is installed.

Comment 9 Jaromír Cápík 2014-03-20 19:34:44 UTC
NOTE2: Maybe the freetype-devel (and others) needs to be fixed to pull bzip2-devel automatically.

The following checks failed on ppc64le:
checking requested system `freetype2' library... failed
checking requested system `gd' library... failed
checking requested system `potrace' library... failed
checking requested system `pixman' library... failed
checking requested system `cairo' library... failed
checking requested system `poppler' library... failed
checking requested system `xpdf' library... failed
checking requested system `zziplib' library... failed
checking requested system `graphite2' library... failed
checking requested system `teckit' library... failed
checking requested system `icu' library... failed
checking requested system `harfbuzz' library... failed

Comment 10 Dan Horák 2014-03-21 07:39:49 UTC
FYI - I'm working on proper fix for the build issues ...

Comment 11 Dan Horák 2014-03-21 07:46:28 UTC
not speaking about the freetype now, but the proper solution is to use a correct source archive without the bundled libraries, all can be replaced by system ones

Comment 12 Jaromír Cápík 2014-03-21 08:39:31 UTC
(In reply to Dan Horák from comment #11)
> not speaking about the freetype now, but the proper solution is to use a
> correct source archive without the bundled libraries, all can be replaced by
> system ones

The 'configure' script is called with the following switches:

--with-system-freetype2
--with-system-gd
--with-system-cairo
--with-system-poppler
--with-system-xpdf
--with-system-graphite2
--with-system-teckit
--with-system-hardfbuzz
--with-system-icu
--with-system-zziplib

... is that insufficient?

Comment 13 Dan Horák 2014-03-21 11:16:16 UTC
- the bzip2 problem in freetype should be fixed infreetype-2.5.3-3.fc21
- the luajit issue in texlive-2013-8.20140305_r33094.fc21

Comment 14 Dan Horák 2014-03-21 11:17:37 UTC
(In reply to Jaromír Cápík from comment #12)
> (In reply to Dan Horák from comment #11)
> > not speaking about the freetype now, but the proper solution is to use a
> > correct source archive without the bundled libraries, all can be replaced by
> > system ones
> 
> The 'configure' script is called with the following switches:
> 
> --with-system-freetype2
> --with-system-gd
> --with-system-cairo
> --with-system-poppler
> --with-system-xpdf
> --with-system-graphite2
> --with-system-teckit
> --with-system-hardfbuzz
> --with-system-icu
> --with-system-zziplib
> 
> ... is that insufficient?

luajit is not required at all and is now properly removed when creating the source archive, unfortunately lua can't be unbundled yet