Re: [HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread Ebrahim Byagowi
> He needs to be made aware that it's unbuildable with MSVC.

Is it really? Actually Visual Studio 2015 was only compiler I tested the
code against, but maybe older ones are broken. Anyway, the backend
shouldn't be used on any production code (specially as it's performance
issues) even the fact it currently partially supports an Arabic
typographical feature not offered by harfbuzz—which currently has not any
suitable way to be accessed from the API so nvm about it.

On Mon, Jun 13, 2016, 5:55 PM John Emmas  wrote:

> On 13/06/2016 13:51, Khaled Hosny wrote:
> > DirectWrite and Uniscribe backends should be disabled
> > by default since they are only for testing purposes
> >
> > [...]
> >
> > Or may be the issue is that you are using your own build system and just
> > included all the source files
> >
>
> Hi Khaled,
>
> You're right to an extent.  I did include 'hb-directwrite.cc' in my VC
> sources but it was mostly because of something I read in README.txt:-
>
>DIRECTWRITE: Enable (experimental) DirectWrite platform shaper
> support,
>requires a rather recent Windows SDK, and
> at least Windows Vista
>
> It looks like I misunderstood that because I took it to mean that
> 'hb-directwrite.cc' should be buildable with the more recent Windows
> compilers.  Thanks for the clarification.
>
> John
> ___
> HarfBuzz mailing list
> HarfBuzz@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/harfbuzz
>
___
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz


Re: [HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread John Emmas

On 13/06/2016 13:51, Khaled Hosny wrote:

DirectWrite and Uniscribe backends should be disabled
by default since they are only for testing purposes

[...]

Or may be the issue is that you are using your own build system and just
included all the source files



Hi Khaled,

You're right to an extent.  I did include 'hb-directwrite.cc' in my VC 
sources but it was mostly because of something I read in README.txt:-


  DIRECTWRITE: Enable (experimental) DirectWrite platform shaper 
support,
  requires a rather recent Windows SDK, and 
at least Windows Vista


It looks like I misunderstood that because I took it to mean that 
'hb-directwrite.cc' should be buildable with the more recent Windows 
compilers.  Thanks for the clarification.


John
___
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz


Re: [HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread Khaled Hosny
On Mon, Jun 13, 2016 at 10:34:24AM +0100, John Emmas wrote:
> On 13/06/2016 10:09, Juha Martikainen wrote:
> > 
> > I had a second build attempt where I made my own vcxproj file. There I
> > get the following kind of errors:
> > 
> > 1>..\..\src\hb-directwrite.cc(246): error C2039: 'directwrite' : is not
> > a member of 'hb_shaper_data_t'
> > 1>..\..\src\hb-directwrite.cc(257): error C3861:
> > 'hb_directwrite_shaper_face_data_ensure': identifier not found
> > 
> 
> Hi Juha, I think you accidentally posted off-list.
> 
> You're right about the above and it's hugely frustrating.  I build with
> MSVC-8 and I had to comment out the whole of 'hb-directwrite.cc' because I
> couldn't make it compile.

That is why you need config.h file, to enable/disable optional features
as suitable. For example DirectWrite and Uniscribe backends should be
disabled by default since they are only for testing purposes (comparing
HarfBuzz output to MS implementations) and are not needed in production
code.

Or may be the issue is that you are using your own build system and just
included all the source files, in this case you can just skip
hb-directwrite.* and hb-uniscribe.* (among others, reading
src/Makefile.am should give some clues).

Regards,
Khaled
___
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz


Re: [HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread John Emmas

On 13/06/2016 10:09, Juha Martikainen wrote:


I had a second build attempt where I made my own vcxproj file. There I 
get the following kind of errors:


1>..\..\src\hb-directwrite.cc(246): error C2039: 'directwrite' : is 
not a member of 'hb_shaper_data_t'
1>..\..\src\hb-directwrite.cc(257): error C3861: 
'hb_directwrite_shaper_face_data_ensure': identifier not found




Hi Juha, I think you accidentally posted off-list.

You're right about the above and it's hugely frustrating.  I build with 
MSVC-8 and I had to comment out the whole of 'hb-directwrite.cc' because 
I couldn't make it compile.  I added a note to say that I hoped it might 
build with some future version of MSVC but from what you're saying, it 
still won't compile.


Once again though...  commenting out the whole of 'hb-directwrite.cc' 
didn't seem to cause any problems.  I think it's a (comparatively) 
recent file so maybe its functionality isn't used very much as yet?  The 
file's author seems to be Ebrahim Byagowi. He needs to be made aware 
that it's unbuildable with MSVC.


John
___
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz


Re: [HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread John Emmas

On 13/06/2016 08:36, Juha Martikainen wrote:


nmake /f Makefile.vc CFG=release /P

Resulting:
NMAKE : fatal error U1073: don't know how to make 'config.h.win32'
Stop.



Hi Juha,

In addition to what Cosimo said, it might be worthwhile to remember that 
it's not strictly necessary to have config.h for your eventual build.  
Wherever config.h gets #included in Harfbuzz, there's usually a guard, 
like this:-


  #ifdef HAVE_CONFIG_H
  #include "config.h"
  #endif

I build from git (using a VC project, rather than using nmake).  My 
project doesn't define HAVE_CONFIG_H and yet it's never caused any 
problems AFAIK.


John
___
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz


[HarfBuzz] Windows build of harfbuzz with nmake

2016-06-13 Thread Juha Martikainen

Hello!

I am working with Windows 10 system and Visual Studio 2012 compiler. I 
would like to compile harfbuzz library for Scribus. I have taken the new 
harfbuzz codes with git.


I have read win32 directory readme file instructions and try to 
configure project using nmake. I run the following nmake command(in 
win32 directory):


nmake /f Makefile.vc CFG=release /P

Resulting:
NMAKE : fatal error U1073: don't know how to make 'config.h.win32'
Stop.

Whole output:

<<

release\Win32\harfbuzz-gobject:
flags:
dependents:
commands:   @-mkdir $@

release\Win32\harfbuzz-gobject.lib:
flags:
dependents: release\Win32\harfbuzz-gobject-vs11.dll
commands:

help:
flags:
dependents:
commands:   @echo.
@echo =
@echo Building HarfBuzz Using NMake
@echo =
@echo nmake /f Makefile.vc CFG=[release^|debug]