Clipper On Line • Ver Tópico - XHarbour
Mudar para estilo Clássico
Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.
Postar uma resposta

XHarbour

09 Jul 2019 21:47

Alguém sabe dizer se o XHarbour que é distribuído é exatamente igual aos fontes?
Por acaso o que vém com HMG, Fivewin, etc. é diferente do oficial?

XHarbour

10 Jul 2019 12:51

Minha idéia é gerar um XHarbour com os recursos do Harbour.
NÃO é modificar o XHarbour.

XHarbour é igual Harbour, apenas seguiram caminhos diferentes, igual aconteceu com 3.2 e 3.4, mas como faz tempo aconteceu isso com o XHarbour, as diferenças ficaram maiores.
Mas..... o básico continua o mesmo, e o HBMK2.EXE pode ser o mesmo.

O que precisa?
Criar arquivos HBC e HBX, basicamente recompilar as contribs com a ajuda do HBMK2.
Isso NÃO é alterar o XHarbour, é apenas ter arquivos a mais, que não tem hoje.
Também podemos organizar pastas, igual no Harbour, conforme o compilador C.

A partir desse ponto teremos Harbour e XHarbour funcionando exatamente igual - no que diz respeito a compilar.
O mesmo XHarbour de sempre, apenas podendo usar as ferramentas do Harbour.

Porque isso nunca foi feito?
É simples:
- Existe o XHarbour comercial, que é vendido, eles NUNCA vão querer usar ferramentas do Harbour, mesmo que isso seja bom para os usuários.
- Existe o fivewin, que acaba mantendo compatibilidade com o XHarbour comercial.... e o mesmo motivo.

O Harbour 3.4 não esqueceu do XHarbour, e nem mesmo do Borland C, ele apenas não gera a versão oficial pra isso porque ninguém se interessou em fazer os ajustes, mas o HBMK2 continua compatível.
Aliás, pra quem ainda não viu, o HBMK2 pode ser usado pra Harbour 3.4, Harbour 3.2, Harbour 3.0, Harbour 2.0, Harbour 1.0 e XHarbour
Só faltou ele funcionar pra Clipper... até seria interessante....

Todo conjunto de bibliotecas padrão do XHarbour é o mesmo conjunto do Harbour, por isso o HBMK2 resolve.
O que altera são as contribuições, mas isso pode ser resolvido com um HBC.

E pronto.

E as bibliotecas HMG, HMG Extended, OOHG, fivewin, etc ?
Continua tudo igual.

E os HBPs?
Serão os mesmos. Um recurso do HBP/HBMK2 é indicar se aquilo é pra Harbour ou XHarbour.

Digamos que em XHarbour precise da LIB minhoca, e no Harbour precise da LIB lombriga
Como fica isso no HBP?

Código:
{xhb}-lminhoca
{!xhb}-llombriga


Digamos que no MSVC precise adicionar a LIB minhoca, mas no BCC precise a LIB lombriga

Código:
{msvc}-lminhoca
{bcc}-llombriga


Digamos que em Windows precise da LIB minhoca, mas no Linux precise da LIB lombriga
Duas opções, só precisaria uma abaixo, mas colocar as duas

Código:
{win}-lminhoca
{!win}-llombriga
{linux}-llombriga


E por aí vai.

O uso de HBMK2.EXE simplifica muita coisa, e dá pra usar no XHarbour tranquilamente.
Se for o caso, pra não ter que digitar -xhb no XHarbour, podemos alterar o fonte do HBMK2.EXE adicionando isso caso ele esteja na pasta do XHarbour

Código:
IF "xharbour" $ hb_ProgName()
   AAdd( aParamList, "-xhb" )
ENDIF


Adicionando 3 linhas no fonte do HBMK2, podemos deixá-lo mais fácil ainda para o XHarbour. só pra não ter que digitar -xhb na linha de comando.

Podemos ter Harbour e XHarbour na mesma máquina, podemos compilar com qualquer dos dois, podemos usar vários compiladores C, e sempre digitando a mesma coisa - apenas indicando se quisermos diferente do padrão.

Vantagem:
Todos do fórum vão estar compilando exatamente igual, não importa o que cada um usa.

E os recursos do HBMK2 vão longe: mostrar aonde está uma determinada função, criar programas multi-idioma, criar projeto universal pra qualquer compilador C, criar LIBs, usar multi compilador C, 32 ou 64 bits, etc.

Acho que vale a pena a gente unificar isso.
Talvez o resto do mundo siga o exemplo, talvez não, não importa.

Para o XHarbour tá mais fácil, já que ele não se altera.
Para as LIBs... a parte chata é ficar atualizando, mas poderia ser feito o mesmo pra HMG, HMG Extended, OOHG, e HWGUI (tem pra xHarbour?)

NÃO é modificar os fontes, é apenas usar HBMK2 e os recursos que ele oferece.

Quem se interessar, e quiser fazer os testes práticos, é só avisar.

Vocês do XHarbour não sabem o que estão perdendo....

Lógico... quem tá acostumado a usar BAT pronto, e nem sabe como a compilação funciona, não vai ver diferença.
Pode até ver muito problema resolvido, mas vai continuar sem saber o que acontece.
Postar uma resposta