1b5ddd6c72b71eba5ffcf4a1d659f21035963a7e
* contrib/Makefile
+ Enabled to build all contribs using hbmk2 from now on.
This is huge step, but in fact a zillion little ones in
the last 2 years, and it means that contribs now rely on
hbmk2 and hbmk2 make files (.hbp and .hbc) to be build and
used respectively. For implibs, .hbi is used. The whole
process is orchestrated by a script written in Harbour: make.hbs.
With this change GNU Make is retired when it comes to contrib
area. This new hbmk2 based system gives us much flexibility,
many complicated build situations can now be potentially
handled, while also making the contrib area fully modular,
since they don't depend even on /config GNU Make system anymore.
This means that any external contribs having hbmk2 make files
are easy to import and any Harbour contribs are easy to detach
from our SVN. It also allows to include more features (f.e.
executables) in final distros. Executables hosted in the
contrib area have the great advantage that they can use any
other contrib libs (so far we were limited to core features
for exes). It also allows to dynamically add extra contribs
(or delete existing ones) on a per distro basis, so f.e.
certain builders can create their own binary distro with
a standard core and extra set of contribs. New system also
makes it possible to build dynamic libs from contribs. It's
also easier to move locally hosted external projects inside
the contrib tree, even as a subdir inside the contrib that
requires it (f.e. minizip, bz2 or sqlite). This can make
these projects fully self-contained.
Some things are not perfect yet, f.e. I'm still fighting
with cmdline length (relevant in MS-DOS) and the "in-place"
build (I call "in-place" build when you build only one
contrib at a time, like when issuing win-make inside a
contrib subdir) will certainly need some getting used to,
and maybe even some refinement in make.hbs. I've yet to
implement automatic dependency detection and tree-sorting
so that everything automatically builds in right order of
dependency. Such thing can even be added for "in-place"
build mode, and f.e. building hbide can automatically
launch hbqt and hbxbp builds. BTW I retained the
"header-copy-on-install" method, but I'm not sure it's
right solution, anyhow we still have time to think about
a better one.
If everything goes fine, the GNU Makefiles in contrib
area will be gone, so there won't be any redundancy again.
* utils/hbmk2/hbmk2.pt_BR.po
* utils/hbmk2/hbmk2.hu_HU.po
* utils/hbmk2/hbmk2.prg
+ -stop cmdline option now accepts a message it displays before stopping.
+ skip= .hbc command will now stop if there is text in its parameter.
INCOMPATIBLE: So far -skip only skipped if 'on' was passed as value,
now it will always skip. This means this command always has to be used
along a filter. If the filter evaluates, skip will happen, if not it
won't.
+ Added stop= .hbc command which will halt complete build process,
similarly to -stop cmdline option. It also supports text to be
displayed.
* contrib/hbqt/hbqt.hbc
+ Will now stop with a screen message if this component is tried
to be used on unsupported platform.
* contrib/hbwin/hbolesrv.hbc
* examples/hbsqlit2/hbsqlit2.hbp
* examples/gtwvw/gtwvw.hbp
* Changed to use new hbmk2 -stop facilities.
* src/rtl/filesys.c
+ Missed two casts from previous commit.
- examples/gtwvw/Makefile
- Deleted.
Description
Harbour Core — Reference source for Five development
Languages
C
80.3%
xBase
17.8%
Makefile
0.6%
C++
0.4%
Harbour
0.4%
Other
0.3%