Bug 169196 - graphics/xpdf build fail
Summary: graphics/xpdf build fail
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Marcelo Araujo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-18 12:40 UTC by Chris
Modified: 2012-11-10 22:00 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris 2012-06-18 12:40:14 UTC
Have been unable to upgrade XPDF for a couple of months now.
The build fails with "header" missing, the missing header appears to be ftbuild.h

make[1]: Entering directory `/usr/ports/graphics/xpdf/work/xpdf-3.03/splash'
c++ -O2 -pipe -fno-strict-aliasing -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.  -I/usr/local/include/freetype2/  -c Splash.cc
c++ -O2 -pipe -fno-strict-aliasing -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.  -I/usr/local/include/freetype2/  -c SplashBitmap.cc
c++ -O2 -pipe -fno-strict-aliasing -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.  -I/usr/local/include/freetype2/  -c SplashClip.cc
c++ -O2 -pipe -fno-strict-aliasing -DHAVE_CONFIG_H -I.. -I./../goo -I./../fofi -I.  -I/usr/local/include/freetype2/  -c SplashFTFont.cc
SplashFTFont.cc:15:22: error: ft2build.h: No such file or directory
SplashFTFont.cc:16:10: error: #include expects "FILENAME" or <FILENAME>
SplashFTFont.cc:17:10: error: #include expects "FILENAME" or <FILENAME>
SplashFTFont.cc:18:10: error: #include expects "FILENAME" or <FILENAME>
In file included from SplashFTFont.cc:24:
SplashFTFontEngine.h:19:10: error: #include expects "FILENAME" or <FILENAME>
In file included from SplashFTFont.cc:25:
SplashFTFontFile.h:19:10: error: #include expects "FILENAME" or <FILENAME>
In file included from SplashFTFont.cc:26:
SplashFTFont.h:19:10: error: #include expects "FILENAME" or <FILENAME>
In file included from SplashFTFont.cc:24:
SplashFTFontEngine.h:54: error: 'FT_Library' has not been declared
SplashFTFontEngine.h:58: error: 'FT_Library' does not name a type
In file included from SplashFTFont.cc:25:
SplashFTFontFile.h:59: error: 'FT_Face' has not been declared
SplashFTFontFile.h:64: error: 'FT_Face' does not name a type
In file included from SplashFTFont.cc:26:
SplashFTFont.h:50: error: 'FT_Size' does not name a type
SplashFTFont.h:51: error: 'FT_Matrix' does not name a type
SplashFTFont.h:52: error: 'FT_Matrix' does not name a type
SplashFTFont.cc:30: error: expected ',' or '...' before '*' token
SplashFTFont.cc:30: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc:31: error: expected ',' or '...' before '*' token
SplashFTFont.cc:31: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc:32: error: expected ',' or '...' before '*' token
SplashFTFont.cc:33: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc:34: error: expected ',' or '...' before '*' token
SplashFTFont.cc:35: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc: In constructor 'SplashFTFont::SplashFTFont(SplashFTFontFile*, SplashCoord*, SplashCoord*)':
SplashFTFont.cc:45: error: 'FT_Face' was not declared in this scope
SplashFTFont.cc:45: error: expected `;' before 'face'
SplashFTFont.cc:52: error: 'face' was not declared in this scope
SplashFTFont.cc:52: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:53: error: 'sizeObj' was not declared in this scope
SplashFTFont.cc:53: error: 'FT_New_Size' was not declared in this scope
SplashFTFont.cc:56: error: 'sizeObj' was not declared in this scope
SplashFTFont.cc:61: error: 'FT_Set_Pixel_Sizes' was not declared in this scope
SplashFTFont.cc:197: error: 'matrix' was not declared in this scope
SplashFTFont.cc:197: error: 'FT_Fixed' was not declared in this scope
SplashFTFont.cc:201: error: 'textMatrix' was not declared in this scope
SplashFTFont.cc: In member function 'virtual GBool SplashFTFont::makeGlyph(int, int, int, SplashGlyphBitmap*)':
SplashFTFont.cc:219: error: 'FT_Vector' was not declared in this scope
SplashFTFont.cc:219: error: expected `;' before 'offset'
SplashFTFont.cc:220: error: 'FT_GlyphSlot' was not declared in this scope
SplashFTFont.cc:220: error: expected `;' before 'slot'
SplashFTFont.cc:221: error: 'FT_UInt' was not declared in this scope
SplashFTFont.cc:221: error: expected `;' before 'gid'
SplashFTFont.cc:222: error: 'FT_Int32' was not declared in this scope
SplashFTFont.cc:222: error: expected `;' before 'flags'
SplashFTFont.cc:229: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:229: error: 'sizeObj' was not declared in this scope
SplashFTFont.cc:230: error: 'offset' was not declared in this scope
SplashFTFont.cc:230: error: 'FT_Pos' was not declared in this scope
SplashFTFont.cc:230: error: expected primary-expression before 'int'
SplashFTFont.cc:232: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:232: error: 'matrix' was not declared in this scope
SplashFTFont.cc:232: error: 'FT_Set_Transform' was not declared in this scope
SplashFTFont.cc:233: error: 'slot' was not declared in this scope
SplashFTFont.cc:233: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:236: error: 'gid' was not declared in this scope
SplashFTFont.cc:236: error: expected `;' before 'ff'
SplashFTFont.cc:238: error: 'gid' was not declared in this scope
SplashFTFont.cc:238: error: expected `;' before 'c'
SplashFTFont.cc:240: error: 'gid' was not declared in this scope
SplashFTFont.cc:245: error: 'flags' was not declared in this scope
SplashFTFont.cc:247: error: 'FT_LOAD_NO_BITMAP' was not declared in this scope
SplashFTFont.cc:250: error: 'FT_LOAD_NO_HINTING' was not declared in this scope
SplashFTFont.cc:257: error: 'FT_LOAD_NO_AUTOHINT' was not declared in this scope
SplashFTFont.cc:261: error: 'FT_LOAD_TARGET_LIGHT' was not declared in this scope
SplashFTFont.cc:263: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:263: error: 'gid' was not declared in this scope
SplashFTFont.cc:263: error: 'FT_Load_Glyph' was not declared in this scope
SplashFTFont.cc:266: error: 'FT_RENDER_MODE_NORMAL' was not declared in this scope
SplashFTFont.cc:267: error: 'FT_RENDER_MODE_MONO' was not declared in this scope
SplashFTFont.cc:267: error: 'FT_Render_Glyph' was not declared in this scope
SplashFTFont.cc:291: error: 'memcpy' was not declared in this scope
SplashFTFont.cc: In member function 'virtual SplashPath* SplashFTFont::getGlyphPath(int)':
SplashFTFont.cc:304: error: 'FT_Outline_Funcs' does not name a type
SplashFTFont.cc:320: error: 'FT_GlyphSlot' was not declared in this scope
SplashFTFont.cc:320: error: expected `;' before 'slot'
SplashFTFont.cc:321: error: 'FT_UInt' was not declared in this scope
SplashFTFont.cc:321: error: expected `;' before 'gid'
SplashFTFont.cc:322: error: 'FT_Glyph' was not declared in this scope
SplashFTFont.cc:322: error: expected `;' before 'glyph'
SplashFTFont.cc:325: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:325: error: 'sizeObj' was not declared in this scope
SplashFTFont.cc:326: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:326: error: 'textMatrix' was not declared in this scope
SplashFTFont.cc:326: error: 'FT_Set_Transform' was not declared in this scope
SplashFTFont.cc:327: error: 'slot' was not declared in this scope
SplashFTFont.cc:327: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:329: error: 'gid' was not declared in this scope
SplashFTFont.cc:331: error: 'gid' was not declared in this scope
SplashFTFont.cc:331: error: expected `;' before 'c'
SplashFTFont.cc:333: error: 'gid' was not declared in this scope
SplashFTFont.cc:337: error: 'class SplashFTFontFile' has no member named 'face'
SplashFTFont.cc:337: error: 'gid' was not declared in this scope
SplashFTFont.cc:337: error: 'FT_LOAD_NO_BITMAP' was not declared in this scope
SplashFTFont.cc:337: error: 'FT_Load_Glyph' was not declared in this scope
SplashFTFont.cc:340: error: 'glyph' was not declared in this scope
SplashFTFont.cc:340: error: 'FT_Get_Glyph' was not declared in this scope
SplashFTFont.cc:346: error: 'FT_OutlineGlyph' was not declared in this scope
SplashFTFont.cc:346: error: expected `)' before 'glyph'
SplashFTFont.cc:351: error: 'glyph' was not declared in this scope
SplashFTFont.cc:351: error: 'FT_Done_Glyph' was not declared in this scope
SplashFTFont.cc: At global scope:
SplashFTFont.cc:355: error: expected ',' or '...' before '*' token
SplashFTFont.cc:355: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc: In function 'int glyphPathMoveTo(int)':
SplashFTFont.cc:356: error: 'path' was not declared in this scope
SplashFTFont.cc:362: error: 'pt' was not declared in this scope
SplashFTFont.cc: At global scope:
SplashFTFont.cc:367: error: expected ',' or '...' before '*' token
SplashFTFont.cc:367: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc: In function 'int glyphPathLineTo(int)':
SplashFTFont.cc:368: error: 'path' was not declared in this scope
SplashFTFont.cc:370: error: 'pt' was not declared in this scope
SplashFTFont.cc: At global scope:
SplashFTFont.cc:376: error: expected ',' or '...' before '*' token
SplashFTFont.cc:377: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc: In function 'int glyphPathConicTo(int)':
SplashFTFont.cc:378: error: 'path' was not declared in this scope
SplashFTFont.cc:384: error: 'ctrl' was not declared in this scope
SplashFTFont.cc:386: error: 'pt' was not declared in this scope
SplashFTFont.cc: At global scope:
SplashFTFont.cc:415: error: expected ',' or '...' before '*' token
SplashFTFont.cc:416: error: ISO C++ forbids declaration of 'FT_Vector' with no type
SplashFTFont.cc: In function 'int glyphPathCubicTo(int)':
SplashFTFont.cc:417: error: 'path' was not declared in this scope
SplashFTFont.cc:419: error: 'ctrl1' was not declared in this scope
SplashFTFont.cc:421: error: 'ctrl2' was not declared in this scope
SplashFTFont.cc:423: error: 'pt' was not declared in this scope
gmake[1]: *** [SplashFTFont.o] Error 1
gmake[1]: Leaving directory `/usr/ports/graphics/xpdf/work/xpdf-3.03/splash'
gmake: *** [all] Error 2
*** Error code 1

Stop in /usr/ports/graphics/xpdf.
*** Error code 1

Stop in /usr/ports/graphics/xpdf.
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20120618-76199-f4n4gb-0 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=xpdf-nox11-3.02_16 UPGRADE_PORT_VER=3.02_16 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! graphics/xpdf (xpdf-nox11-3.02_16)    (missing header)
[~]#

How-To-Repeat: poertupgrade "xpdf*"
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2012-06-18 16:46:57 UTC
Responsible Changed
From-To: freebsd-ports-bugs->araujo

Fix synopsis and assign.
Comment 2 Ismail YENIGUL 2012-07-23 20:53:03 UTC
Hi

I fixed the problem by removing freetype2 from the following line in 
Makefile.
--with-freetype2-includes="${LOCALBASE}/include/freetype2"
It should be like this:

--with-freetype2-includes="${LOCALBASE}/include/"

Also I removed libexec/xpdf/xpdf from pkg-plist.

Thanks

-- 
Ismail YENIGUL
Team Leader / Takım Lideri
SurGATE Labs
Phone :+90 216-4709423 | Mobile:+90 533 747 36 65
SurGATE: West Coast Labs Premium Anti-Spam Certificated
Twitter: http://www.twitter.com/surgate
Blog: http://www.surgate.com/blog
Comment 3 Marcelo Araujo freebsd_committer freebsd_triage 2012-10-12 10:09:20 UTC
State Changed
From-To: open->closed

Committed. Thanks!
Comment 4 Miroslav Lachman 2012-11-10 21:45:35 UTC
The problem is back, because "fix" was rolled back.

According to ports/172664 a ports/172634 the problem is, that WITH_X11 
needs

--with-freetype2-includes="${LOCALBASE}/include/freetype2"

and WITHOUT_X11 needs

--with-freetype2-includes="${LOCALBASE}/include/"

I don't have enough knowledge of Makefile or C programming, so I don't 
have any right fix to this.

If it can't be fixed somewhere else, then we need some conditional in 
Makefile.

Somehing like

.if defined(WITHOUT_X11)
CONFIGURE_ARGS+=--with-freetype2-includes="${LOCALBASE}/include/"
.else
CONFIGURE_ARGS+=--with-freetype2-includes="${LOCALBASE}/include/freetype2"
.endif