freetype-devel
[Top][All Lists]
Advanced

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

Re: GSOC Build tests


From: David Turner
Subject: Re: GSOC Build tests
Date: Sun, 7 Jun 2020 11:29:02 +0200



Le sam. 6 juin 2020 à 15:31, Werner LEMBERG <wl@gnu.org> a écrit :

Hello Greg,


> So over the week I started writing continuous integration build
> tests for several platforms. You can preview them here:
> https://dev.azure.com/fundies/freetype2/_build/results?buildId=146&view=results

this looks great!

I agree, thank you for doing this.

> Please let me know if there are any additional compilers, operating
> systems or configurations you would like tested.

Maybe Android?  I'm not sure whether this is necessary, given that it
is basically a Unix system.

I don't think it's needed at this point.
 
> Also, if you would like any other build system tested other than
> cmake tested.

Actually, the 'official' build system is

  ./configure <options>
  make
  make install

This is only for Unix systems, the GNU-Make build system should work on Windows and supports a number of compilers.
For compiing on Windows with a gcc compiler, you would do:

  make setup
  make

I don't think there is an install step though, it just generate a freetype.dll under objs/ iirc (I have tested that in a long time).

Other compilers are supported with "make setup <name>", you can type "make setup list' to see the list of available values.
"visualc" corresponds to Visual Studio (but probably an older version, like the 2013, so I'm not sure it would work).
It it worth giving it a try, but if this fails, just let us know, and I'll try to fix it.

The cmake stuff is contributed code not maintained by the FreeType
team.  We probably will migrate to another build system like Meson in
the near future; you can find some discussion in this thread:

  https://lists.nongnu.org/archive/html/freetype-devel/2020-05/msg00103.html

> I would also like to test freetype-demos but I'm not sure if those
> are only valid on desktop configurations.

Yes, it might be problematic to test the demo programs that uses a
GUI.  Maybe (some of) the command line tools will work.

All demo programs should compile and run on Win32, if not that's a bug we should fix.
Only ftgamma / ftgrid / ftview are GUI programs IIRC.

In the future, I'd like to add unit and regression tests to the library though, but that will happen after the build system switch.

> I did have some issues with Mac/iOS builds as your repo seems to
> have an iOS.cmake that is 6 years old and incompatible with modern
> xcode and I had so set a blank signing key for OS X.  I found a
> newer iOS.cmake to replace your current one and it seems to work
> however it does not currently bundle the binaries in the packaging
> stage.  Please let me know if you have better solution for either of
> these.

Maybe other people can chime in who have more experience with cmake.

That's the kind of issues you will get all the time with CMake, there are 10 different versions of the tool being used in the wild, which are mostly similar,
but it's very hard to get CMake modules from third-party libraries that work well for everyone (especially when cross-compiling with different sysroots,
many will pick up the wrong headers / versions of the module's dependencies due to subtle configuration issues)

Also one of the reasons why I'm not a huge fan of CMake, even if it's the "standard".

Unfortunately, I don't have a solution for the iOS issue you describe.
 
> Lastly, I'm not familiar with how to commit to your repo I only get
> "fatal: remote error: access denied or repository not exported:
> /freetype/freetype2.git" without ever being prompted for a login.

This is an issue that must be fixed.  Have you registered your SSH
public key?

  https://savannah.gnu.org/maintenance/SshAccess/

(be careful not to add a final, additional newline if you submit the
key).

After doing the above, you should be able to check out read/write
versions of the FreeType git repositories as

  git clone fundies@git.sv.gnu.org/srv/git/freetype/freetype2.git
  git clone fundies@git.sv.gnu.org/srv/git/freetype/freetype2-demos.git

> So instead here is a patch:
> https://github.com/fundies/freetype2/commit/564f8d163fbed71cccd1a9ea5733e28da82b7d7e.patch

I hope you will be able to check this into your personal branch by
yourself soon :-)


    Werner


reply via email to

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