Newsgroup: it.comp.lang.delphi
Titolo: Realizzare batch per compilazione e import type library

Vorrei fare un batch che mi automatizzi la compilazione dei miei com/dll:
ho guardato dentro la \bin di D7 e vedo che ci sono diversi eseguibili.
Quale di questi devo utilizzare, dcc32.exe? 
Inoltre, per riportare esattamente le opzioni di compilazione che ho
nell'ide, esiste una guida che faccia la mappatura delle relazioni tra le
impostazioni dell'IDE e le opzioni del compilatore a riga di comando?
In ultimo, vorrei fare l'import della type library dei server appena
compilati: ho visto che esiste il file tlibimp.exe, e anche qui non saprei
come impostare le option a riga di comando.. Nell'IDE invoco
Project->Import type library, e faccio la import senza generare il
componente wrapper.
Magari qualcuno ha già realizzato dei batch simili.. potrebbe essermi
veramente di aiuto..
Grazie a tutti
Ciao
-- 
Morde

 Quale di questi devo utilizzare, dcc32.exe? [...]
Purtroppo, per quanto ne so, questa tipologia di automazione risulta 
molto difficile con le versioni di Delphi precedenti a D2007, che 
finalmente incorpora l'integrazione con MSBuild e consente di 
automatizzare completamente il processo di compilazione di eseguibili, 
librerie, risorse e cosě via.
Forse possono esserci dei tool, come "Final Builder", se ricordo bene, 
che ti vengono in aiuto nella configurazione di batch simili a quelli 
che hai detto, validi anche per le versioni di Delphi precedenti alla 2007.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

 librerie, risorse e cosě via.
Urca, questa e' un'altra chicca.. hai gia' provato a creare dei batch task?
Grazie per il feedback :)
-- 
Morde

 Grazie per il feedback :)
Non ancora purtroppo, ma quando avrņ un attimo di tempo vorrei impiegare 
la trial ora disponibile per alcuni esperimenti a riguardo, usando un 
progetto di test.
Se ti servono informazioni a riguardo, puoi guardare tra i filmati della 
CodeRage, dove ve n'č uno (in lingua inglese) che evidenzia alcune delle 
caratteristiche di D2007 legate a MSBuild.
Il link diretto per il download del filmato č questo:
http://video.codegear.com/CodeRage2007Archives/Day4/DaveWilhelm.zip
Se vuoi accedere alla pagina riassuntiva dei video della conferenza, vai 
qui:
http://dn.codegear.com/article/34187
Alcuni di questi sono molto interessanti.


finalmente incorpora l'integrazione con MSBuild e consente di 
Non dare retta a Breveglieri che se non c'è MS scritto da qualche parte 
pensa che non sia possibile. Peccato che MS di solito arrivi tardi e 
copi quello che altri fanno da un pezzo.
Quello che vuoi fare è perfettamenente possibile e non particolarmente 
difficile con *qualsiasi* versione di Delphi che abbia il compilatore a 
riga comando (le Turbo Explorer non ce l'hanno). Si può fare con:
1) File batch. È quello che hanno fatto JCL e JVCL per un pezzo, e in 
parte ancora fanno. Il limite è che i file batch sono piuttosto 
limitati - shell decenti tipo 4NT o simili è un po' più facile.
2) Una qualsiasi utility MAKE. In TurboPascal Borland la forniva, poi è 
sparita, ma ne trovi a bizzeffe.
3) Prova a dare un'occhiata a WANT su sourceforge - è un porting di ANT 
(che è in Java) per Delphi. MSBuild è il port di ANT in C# che ha fatto 
MS con qualche secolo di ritardo.
4) Poi ci sono tool come FinalBuilder (
http://www.finalbuilder.com/
) che 
fanno *molto, molto* di più che "configurare dei batch" - basta guardare 
le feature matrix.
La soluzione migliore dipende dalla complessità della build, e da quanto 
vuoi spendere.
SF
--- posted by geoForum on 
http://www.delphiedintorni.it

 (che è in Java) per Delphi.
GRazie!! Un'altra da imparare.. :-D Questo lavoro e' bello proprio perche'
ti permette di continuare a crescere... adoro delphi :)
-- 
Morde

 pensa che non sia possibile.
Ma che diavolo vai dicendo??


>Ma che diavolo vai dicendo??
Ma che diavolo vai dicendo tu!
Prima di scrivere "Purtroppo, per quanto ne so, questa tipologia di 
automazione risulta molto difficile con le versioni di Delphi precedenti 
a D2007, che finalmente incorpora" almeno informati, cosě non rischi di 
scrivere stupidaggini, perché "per quanto ne sai" ne sai veramente poco. 
Il fatto che tu non sappia automatizzare un bel niente senza MSBuild non 
significa che sia "molto difficile".
Anche quel "finalmente incorpora"! Microsoft MS build l'ha rilasciato 
l'altroieri quando si č accorta che da *anni* c'erano tool di build piů 
potenti di make, quando poteva incorporarla Delphi, "finalmente"????


 potenti di make, quando poteva incorporarla Delphi, "finalmente"????
Il "finalmente incorpora" è - per tutti coloro che sanno comprendere il 
significato della frase senza stravolgerlo strumentalmente per insultare 
altre persone da un forum pubblico evitando qualsiasi forma di rispetto 
e senza firmarsi - che finalmente la compilazione in Delphi è 
*totalmente* personalizzata, cosa che - per quanto tu possa girarla e 
rigirarla - prima non era possibile.
Fosse stata realizzata interamente da CodeGear, sarebbe valsa la stessa 
cosa. Il "finalmente", come dicevo prima, è dato dal fatto che le build 
ora sono customizzabili con semplicità, non è riferito al fatto che 
Microsoft abbia creato un prodotto innovativo: è innovativa la 
caratteristica di Delphi, poi che si basi su MSBuild poiché trattasi di 
uno strumento pronto all'uso e il passo più breve (e gratuito) per 
ottenere quanto si cercava di ottenere, è un'altra storia.
Non ho mai detto che sia l'unica soluzione, che non si possa in alcun 
modo personalizzare il "build" di un progetto in senso assoluto, e che 
non esistano tool di terze parti in grado di "dare una mano" come Final 
Builder, che era citato anche nel mio primo messaggio al thread (giusto 
per sottolineare quanto, personalmente, sia molto ben lontano dal voler 
approfittare della discussione per pubblicizzare un tool Microsoft 
definendolo quantomeno innovativo, assieme a tanti altri, come tu vuoi 
farmi sostenere, per non so quale motivo).
Ciao,
   Marco.


Microsoft abbia creato un prodotto innovativo: è innovativa la 
Innovativo? È Java ANT riscritto in C#, né più né meno. L'avevano già 
fatto *prima* in Delphi con WANT. Alla faccia dell'innovazione.


 Sì. Non sopporto i FUDdisti.
Sì, va beh, allora mettiamoci a scannarci su qualsiasi cosa, (come 
peraltro mi sembra si faccia già troppo ultimamente).
Qui si (dovrebbe) parla(re) di software, di programmazione, in cui 
nessuno è onnisciente. E' un newsgroup ed è libero.
Semplicemente, se secondo te qualcuno ha detto una cosa inesatta, non è 
necessario crocifiggerlo o dargli del FUDdista (ho imparato una cosa 
nuova anche oggi).
Nessuno qui dentro si sente guru assoluto del newsgroup, se 
qualcun'altro ne sa più di lui su quell'argomento e può correggerlo, 
cazzo, che lo corregga, ma *per favore* senza fare polemica. Ce n'è già 
abbastanza in giro, non trovi? Se poi qualcuno ti sta sui coglioni (per 
del software??), risolvi la questione in privato o su it.discussioni.litigi.
Dico tutto questo in generale, senza fare nomi o considerazioni 
personali, anche se ce ne sarebbero da fare.
-- 
Jax

 > (che è in Java) per Delphi.
questo tool mi interessa molto...ma ammetto che ho difficolta' a
capirne il funzionamento
(forse perche' non conosco ANT?)
in pratica io ho capito che si tratta di generare un file xml
contenente le informazioni
per la compilazione...
prima di accingermi ad approfondire e impararmi tutti i
parametri...volevo
chiedervi se potrebbe fare al caso mio:
il mio target e' riuscire a compilare "al volo" n eseguibili (progetti
delphi) sparsi in varie cartelle
in modo automatico generando gli eseguibili in una cartella di
destinazione
e non andando a specificare ogni volta le informazioni di compilazione
quali per es:
i packages da includere, dove reperire i dcu...ecc...
(in pratica io non voglio adoperare il .cfg  di ciascun progetto, ma
un .cfg "globale" che voglio specificare io)
un tool come quello mi potrebbe fare tutto cio'?
JH

un tool come quello mi potrebbe fare tutto cio'?
Suppergiů per quello che capisco č quello che fa WANT, perň se va bene 
per te completamente non posso dirtelo io, devi fare una prova tu.
