[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ftbench update: make integrated
From: |
Werner LEMBERG |
Subject: |
Re: ftbench update: make integrated |
Date: |
Wed, 14 Jun 2023 15:42:53 +0000 (UTC) |
Helo Ahmet,
> I want to inform about last update about ftbench.
Thanks!
> fonts are in their own directory but 5 fonts takes
> really much time.
Please give more details. What do you consider as 'really much time'?
You can adjust the number of loops used in `ftbench` with command-line
options, so it's not clear to me where exactly the problem lies.
> 2) does the html file satisfy the needs?
Please post a sample to this list for all the people who are not going
to compile your branch.
> 3) i am planning to move to develop and integrating cmake and
> meson. is there anything forgotten so far?
I don't think so.
Here is a list of things that I noticed while inspecting your code.
* `testing.mk`
- Why `$(BASELINES)` and not `$(BASELINE)`? Are you going to
support more than a single baseline? If yes, how shall this
work'?
But maybe this is just a misunderstanding of what I call a
'baseline': This is the status of the repository (i.e., a certain
commit) that is known to work, and that gets compared against some
new code (usually in a git branch), checking for differences.
- Using `pkg-config` is a bad idea: You are essentially compiling
against another installed FreeType version, which is definitely a
no-go. The tests must be executed with the uninstalled, just
compiled version of the library.
- `freetype.mk` already defines `$(PYTHON)`. Don't override this!
If necessary you might add a test for python 3.
- Please look up the GNU make manual and check the section on
order-only prerequisites – this is what you should use for the
rules to create directories.
- Don't call `gcc` directly! You should rather use `$(CC)` (or
probably `$(CCexe)`, I'm not sure right now).
- AFAICS, compilation outside the source tree still doesn't work.
You have to use `$(OBJ_DIR)` and friends.
- Don't call `rm` directly. You should rather use `$(RM)`.
> 1) benchmark is running by only one font. i have total 5 but takes
> too long. how many should benchmark work with and should i
> subset fonts to smaller pieces (like 50 glyphs)?
You should define a make variable to hold default command-line
arguments for `ftbench`, and which can be overridden while calling
`make`.
> 2) does the html file satisfy the needs?
I don't know yet :-)
> 3) i am planning to move to develop and integrating cmake and meson.
> is there anything forgotten so far?
Perhaps it makes more sense to make the default build work as it
should before handling cmake and meson...
Werner