bugFree UCS Outline Fonts - Bugs: bug #47634, /sfd/Makefile error

 
 

bug #47634: /sfd/Makefile error

Submitter:  David Lasher <dlasher>
Submitted:  Thu 07 Apr 2016 01:55:25 AM UTC
   
 
Category:  compilation Severity:  3 - Normal
Item Group:  None Status:  Need info
Privacy:  Public Assigned to:  Stevan_White
Open/Closed:  Open Release:  * development
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Tue 28 Jun 2016 01:34:10 PM UTC, comment #16: 

Hi,

Distribution verions of FreeFont should not be built with any of those versions of FontForge.

Nonetheless, I have now made it just issue a warning.

Steve White <Stevan_White>
Group administrator
Tue 28 Jun 2016 07:06:59 AM UTC, comment #15: 

This error can cause unconveniences to other developers that using FontForge on Windows and/or OS X, since FF developer making it available on both Linux, Windows and OS X now. For Arabic error, I suggest you to ask Behdad Esfahbod and Khaled Hosney for help, they are very experienced on it.

Hsing-yen He <hammerandsickle>
Mon 27 Jun 2016 09:30:54 AM UTC, comment #14: 

I am fine with how it is reported. Unfortunately, I cannot help you with the kerning problem. Hope the people at fontforge can figure it out.

Pander <pander>
Sun 26 Jun 2016 09:29:54 PM UTC, comment #13: 

Yes, that is the message I just implemented.

You are free to change the logic for your own purposes, but for now, I want people to know why the Arabic looks so bad, if they use any modern verson of FontForge to build the font.

Steve White <Stevan_White>
Group administrator
Sun 26 Jun 2016 07:46:32 PM UTC, comment #12: 

At the moment I get this:

~/freefont# fontforge -version
Copyright (c) 2000-2014 by George Williams. See AUTHORS for Contributors.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 with many parts BSD <http://fontforge.org/license.html>. Please read LICENSE.
 Based on sources from 14:09 CEST 26-Jun-2016-ML-D.
 Based on source from git with hash: dc545332bc45ec1e7b910eefba52b9ccbd3055d0
no xdefs_filename!
TESTING: getPixmapDir:/usr/local/share/fontforge/pixmaps
TESTING: getShareDir:/usr/local/share/fontforge
TESTING: GResourceProgramDir:/usr/local/bin
trying default theme:/usr/local/share/fontforge/pixmaps/resources
fontforge 14:09 CEST 26-Jun-2016
libfontforge 20160626

~/freefont# svn update
Updating '.':
At revision 3136.

~/freefont# cd sfd/

~/freefont/sfd# make otf
FontForge versions since 20120731 screw up right-to-left kerning tables.
Please use a different version when building FreeFont.
Makefile:36: recipe for target 'FreeMonoBoldOblique.otf' failed
make: * [FreeMonoBoldOblique.otf] Error 1

Is this the same as you are getting?

Pander <pander>
Sun 26 Jun 2016 06:52:07 PM UTC, comment #11: 

Hi Pander,

Unfortunately, a GIT pull of FontForge from yesterday shows the same broken handling of kerning tables as the 2012 version.

Ir isn't impossible that I have missed something.  But I have tried all combinations of settings and configuration of tables in the 2012 version, and... never did kerning work right.  But the obvious settings in the 2011 version produce fairly good kerning.

Show me I'm wrong.

Steve White <Stevan_White>
Group administrator
Sun 26 Jun 2016 04:54:06 PM UTC, comment #10: 

Right.  Thanks.  I was trying to do fancy stuff.  I wish I knew how...but Makefile sytax always drove me crazy.

In SVN.

Steve White <Stevan_White>
Group administrator
Sun 26 Jun 2016 04:39:44 PM UTC, comment #9: 
Pander <pander>
Sun 26 Jun 2016 04:37:25 PM UTC, comment #8: 

I used the development version when you added some glyphs so I could complete my book. I will switch over to the released version via TeX Live or Ubuntu now. for me it is fine if you close off svn for developers only.

To fix the problem with make, do this:

# svn diff
Index: Makefile
===================================================================
--- Makefile (revision 3132)
+++ Makefile (working copy)
@@ -11,7 +11,7 @@
 FFFF=$(FF) -lang=ff -script
 FFPY=$(FF) -lang=py -script
 
-ffversion=`${FF} --version 2> /dev/null | grep '^fontforge' | sed -e 's/^fontforge //'`
+ffversion=`${FF} --version 2> /dev/null | grep '^libfontforge' | sed -e 's/^libfontforge //'`
 
 TESTFFEXIST=if test -z ${ffversion}; then echo FontForge program is required to build FreeFont; exit 1; fi
 

Pander <pander>
Sun 26 Jun 2016 03:43:49 PM UTC, comment #7: 

Hi Pander,

Regarding "unexpected operator": are you by any chance using a newer FontForge (since 2012?).  Since the 2012 version, they cleverly changed the format of the date produced by the --version flag, and it breaks the makefile.  I'm working on this now.

The explicit link to the local/ directory is for my use only.  For distribution, I always change that.

That all said -- I really hate writing Makefiles -- I have a mental block against its (so called) syntax.  If you know better ways of going about things, let me know.

Regarding newer versions of FontForge -- none has yet appeared for my distro (Linux Mint).  I do not know if FreeFont will build any better with the newer versions than it did with the 2012 version.  I'll have to try it.  (Oh...finally today I got GIT FontForge to build on my system.  I had to do several undocumented new things to get it working.)

I assume you already know this: anything in SVN is strictly for development.  It is buggy, it is not authorized for distribution, it is not FreeFont.  Please never release anything directly from SVN under the name FreeFont.

In past years, the freely open development tree has been abused several times by people who thought they were helping.  The resul however, is that FreeFont gets a bad name for bugs that were never in a distribution... just something checked in during the course of work.  After I do the next release, I will shut down public SVN access for this reason.

Thanks!

Steve White <Stevan_White>
Group administrator
Sun 26 Jun 2016 12:32:31 PM UTC, comment #6: 

Now it is working, I get these errors:

/bin/sh: 1: test: 14:09: unexpected operator
/bin/sh: 1: test: 14:09: unexpected operator
/bin/sh: 1: test: 14:09: unexpected operator

This is common when tests in if statements in shell scripts have bash or sh for formatting but are executed with sh instead of bash and vice versa.

Pander <pander>
Sun 26 Jun 2016 12:29:36 PM UTC, comment #5: 

Why not change

FF=/usr/local/bin/fontforge

into

FF=fontforge

and leave it up to the user where fontforge on their system is? That is the usual way of setting application paths.

Meanwhile https://bugs.launchpad.net/ubuntu/+source/fontforge/+bug/1595231 is gotten importance high. Hope this will be fixed soon as people using only APT are stuck with an too old version.

Pander <pander>
Fri 24 Jun 2016 11:57:51 PM UTC, comment #4: 

Hi,

This is not a FreeFont bug, although more needs to be done.  The error message is quite right.  Please don't use that verision of FontForge to build FreeFont (or any other Arabic font that uses kerning).

Last time I tried, I was unable to build any newer version of FontForge on Linux Mint.  I'll give it another shot.  I would be very interested to know if that awful bug with Arabic has been corrected in newer versions.

I just built an older version of FontForge
Executable based on sources from 13:48 GMT 22-Feb-2011.
and use that to build FreeFont.

Steve White <Stevan_White>
Group administrator
Wed 22 Jun 2016 03:42:51 PM UTC, comment #3: 

Changing /usr/local/bin/fontforge to /usr/bin/fontforge on Ubuntu Xenial results in:

$ make otf
FontForge version 20120731 screws up right-to-left kerning tables.
Please use a different version when building FreeFont.
Makefile:33: recipe for target 'FreeMonoBoldOblique.otf' failed
make: * [FreeMonoBoldOblique.otf] Error 1

$dpkg -l|grep fontforge
ii  fontforge                                   20120731.b-7.1                             amd64        font editor
...

Looking at https://launchpad.net/ubuntu/+source/fontforge it seems Ubuntu has not been notified that fontforge needs to be upgraded for Xenial and Yakkety.

Please, upvote https://bugs.launchpad.net/ubuntu/+source/fontforge/+bug/1595231

Pander <pander>
Sat 16 Apr 2016 11:34:18 AM UTC, comment #2: 

This may also causes build fails if others want to create a build on OS X and Windows devices, since recent version of FontForge is available for both Windows, Mac and GNU+Linux platforms.

Hsing-yen He <hammerandsickle>
Sat 09 Apr 2016 04:08:32 AM UTC, comment #1: 

This error is also affected a special build in Launchpad:
https://code.launchpad.net/~dns/+recipe/freefont/

Which is based on this base source that imported directly from your SVN:
https://code.launchpad.net/~rbose-vcs-imports/freefont/trunk

Hsing-yen He <hammerandsickle>
Thu 07 Apr 2016 01:55:25 AM UTC, original submission:  

Recent versions of the /sfd/Makefile have the line:
FF=/usr/local/bin/fontforge

This causes a 'Fontforge not found' error since my fontforge is in /usr/bin. Is it necessary to hardcode the path to fontforge?

David Lasher <dlasher>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by Stevan_White (Posted a comment)
  • -email is unavailable- added by pander (Posted a comment)
  • -email is unavailable- added by hammerandsickle (Posted a comment)
  • -email is unavailable- added by dlasher (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-06-24 Stevan_White StatusNone Need info
        Assigned toNone Stevan_White

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code