Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Sep 2005 12:14:49 -0300
From:      Alejandro Pulver <alejandro@varnet.biz>
To:        questions@freebsd.org
Subject:   Help with Makefile
Message-ID:  <20050911121449.01a09558@phobos.mars.bsd>

next in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Hello,

I am making a port of Quake III Arena SDK: it installs game sources,
tools to produce QVM files, and a Makefile.

The original game source comes with the "cons" building system and I am
trying to write a Makefile to replace it. I have troubles while
writting the Makefile.

Here is what I want to do:

* Use a directory for compiled/temporary/object files (e.g. "build").
* Dependency support (now targets are recreated all the time).
* Automatic dependency support (e.g. "mkdep").
* Handle the suffix problem when "qvm" and "so" targets are built at
  the same time.

Here is the description of the build steps (see the Makefile for
implementation):

For building the shared object just compile the C sources listed in
(CGAME|GAME|UI)_SRCS_SO and put them together with "cc
-shared ..." (I think this could be handled with bsd.lib.mk).

For building the QVM you should first create bytecode files (assembly)
from the sources listed in (CGAME|GAME|UI)_SRCS_QVM with q3lcc (note
that there are also some .asm files listed in the sources - one per
module cgame, game and ui - that don't need to be modified), then
assemble all the produced files with q3asm.

Here is what I have (attached):

Makefile.bz2       -	Last try.
Makefile.orig.bz2  -	Previous try (uses a build directory but
                        doesn't handle dependencies and can't build qvm
                        and so at the same time - suffix problem).
Makefile.gnu.bz2   -	Works fine, but it is for gmake (and for an
                        older version: 1.29h, this one is 1.32, however
                        the only change could be sources names/files).
quake3-sdk.tar.bz2 -	Port that installs game source (where the
                        Makefile has to be put) and the tools.

Any help will be appreciated.

Thanks and Best Regards,
Ale

P.S.: I asked this question in ports@freebsd.org, but I think this
is the correct place to do it.
[-- Attachment #2 --]
BZh91AY&SY=_0]{VĿ`]yoZ0q_[ALSihCF@(Кe=	@h=@h5=	ʌ0I$ޅ=&(z4dM
	3I=&"@OS4~J<@z=FE@
#!D
dB PD3EUsBjaA ˦)G'MO"oρgI#k[bYƏţ`LO))>Pm\7@'9硑EFg-8eŚbۥ
=)i˪WuL2AI-1g;p3ůi7'/"%myq@Tg(M*0SIEKUHA¬.2hh6h5,xWC(ʟ쐢~$ORd&И$6<~@n`ΝjY+~Ϳ
HDMNdpjhQJ1#rKtkJƀc$k8xiɗ&?GOʅi =O{8YwDjZa|
a	APS%=lǑRmR'T$ 6.HJvG`̷
A`k,xېfx9V@B	$iiU(`Xk]B0I/cH9$e	!=#1Ag?v&1q0H	oFiQHUeAp@` PmWhX+YXa`Ő/5Z%h܅*Ŭ,UTSéu*"*EG+ E(X1کyjISK4;6*:Rjڙ`WP0ĚcD)-WvNExOerЏOe8Ĺ(iM YdGC7VsBqhP(
)UuheCSL!Hh':Z0bhHR:M:Hc=(U1!T4݋IG*DUB
e8S-̙+vcu`&5P67a>+Me9NJ9Ӯ+Q>Hc7¸{ȵ2yAY]<MZ.
xB"8tTEuxd%ySusO#hd֍;"T6	m6^tn3{iѢԎ'%kMj7ј3?>8˻^f ɰ<넴бկCVHX/Qv˺R0¹-qydU![$:G'WWѫ'3R~LT{  EhFB_zǨCa#2aQhǢ*.ZU!,?z#q5+*K;@$Y]BBwt
[-- Attachment #3 --]
BZh91AY&SYB߀d0n`
^}/˯.y$
c7YQDI&IҏSG=#PhzQM&
@h@hMb@hI14DڞQ4Ab3ID&j44FPC@H&=O(jh444zѺ*)!"#Y3UӢ~]ut̵r@|QP$LI	Ez
g"ǿ}Cb	*x^aTF$UP8qG=\bS7ƕA5
L'S
fs;Dp#5ǘ_ĭ24wFP8B\R{T=ù1Vk%RB8eL)8I$Sh,
6&6Dnmi)]:ӣDv!əVm#sZX/,nZAEؘ[u joϣ¾PAKi],3/JPY>EdE!I4ǜo-ʨf'0{Ӝ)fNp
BS#grݞ\pdġOB00i8%U8ŀDFTdJB	@)DP%QFK1[)4Y'1LH@@`CXC 6y0(B/ҝ~e_Kri°nI16ZV7"!ltw:V~fmVmZ#CdFY&\T$*Ѧ
	HªJGg-ʜk;u`I=txea` K^NN	' ($!ܨ{($Tj~=BH>U-Xw`ӎIj'n-Ϸ4]c?krEd~:n덬ԟa`dV$@rFww<QVoc4#0/{=\HxBccmqb$``!MXj8>)R짗6Do)
~7z|iAҐzKƀzZonCJq8'(c|t|:2#킃]it"q%sC`D9BUY8l@p}*H})JBb@U!l2HޮlKj*0 HnPpG4uB*1	::!J[Ƃ(AA9Jk1!P! CЅ\/v@.ľBB4]{
nmoT
bUjpa\UI%JT8-5Q˛Aލw|Dqr7; 2WP|J5Go/v@\䦰zbxK g~ˆUUZ	#.BBBBBP2dznoͼ87QG{fY,
0 H1Ʀ<<;7
(H.37((_@A[^+28!r[\EQDDt0CLD?u]w[pBĉ8HNk!#"2	,4&gGomGeQ"A`1n
PE"aEGwZG֠ZRؖ^ϟp?G3Ԁa-u60rIeP~[%]+
Nyfރ-'OqCʅoI'L:
ԄxVd=\{
~	B7s$<d$_*ȫZ"q7H]
I[H/[M,%ָ.ݡv	Vß7t&+PisCMJWՀ&D[03Y(qbLF[ejcݿO.-<2Dܗ%Qlf$ryoƽp:;v+
tJD!0=0.D8{
\V	0ϧ6U!S|Z4,4	IJ`Ք'=Q5*<IvW~G#Y55 VHRfq$	[Y $n; dw \oK-,V/,K[2ƽ+]a`
T:q6Fnm,o-UpCƞ\32_q[o07
5|c$T Fz|,mϢb1T%#FH1Ru#Fdu`Y3
,aĢPȅcFnί
0AM'Gqg8a8<M6fL`O<Aa̘زPo!{n[GD|/RhkS2sbVF0\0ů._g}	3(tܥr9>b/fRJ(/ΑHN¡OUdmA2t>1+dL"_2:ct6`HiwIϝ/šg7]p,<GhX7l3106,;L`!1iu@"bLcmI1>=a/!^A54	2UK;/^TdfLD3rt{1|pּ5v4Į tq*2).Cw:qCOw$S	0! 
[-- Attachment #4 --]
BZh91AY&SY}=_0]{Vſ`V^z=ļ4
hOSa40hMyLh!OI64#@BЙ`&OHS@0&&	&L&	M
Bz
mO(FOQiHA"dH!J@!_/(e![}(J{aIPsX`n<M~Fe
D{Re?7TS9m]rPq
]wꊙV49Q_#QRI)4D`M$6$Jҽ7:+ZUYMrh8
BBUQ;.0(N"b"s՛ MiJh:jD6EQy0Y(91?΃PdI3фp.7%3߇O4MI67iJUL4<HfĆ0BG	e'{4ә2m~IH	J?C}
҅%T<a_֡M.l{@1'FEX삵$64zV,/ :=(+ރUא>`FBhIY$V7TRtEAm@eT$p'4L+%#|TZ3If{MW%h#$l68u-Ej1ax0u
r	/
´D* L!251		;CN`R!'27\`RV+zۂDR0EHEb-X1fówَ9	z@,}Լs`[_+U`qTdxN8`.Hf,6F224Aժ(D)%C0e*}mQm}拔d?ݯ_xQX	q]$m>!r)}JeP~WMHT:'h['̤}	B҄aVEr:0.?*cEe
^M_6`tvhvNtұ&4Bm7йG)I""F$QФ	Y($i^#^Rǝ#-Pw(ͽ|ϺdWJf"tr90aMÚhP%V$ԭPQࡄwŹ>HC

g/(0s۸E
\oG vh/ThY.aMs'W_m1GH	eJ85DZau#U\NrŕLhMRlvPL+$'%tMo8ܴ;™iA
c\ 닲ͶL:nhH=_]Gc51Hܖ]{I
);$;&jCNA*!"(HY>
[-- Attachment #5 --]
BZh91AY&SYj{e _*`
|ɞy8y.{ۍ[wI"@jzI`jf&F@4422bMA
lBi	dhC@
F(5OѦQ=hhjQ@h4&L@idh4
hF@h2h4hhF!
?Te2yOSd'C`j"2bd?o|+wz&br:5*HeH$9qKZAVhff5e毷tYy>{2Eh凟jM*wG7w火ywxl/2UUVȰUb""
ָQToz]<3A~FG,h>Щ
r^k G	OP%;~(gl	'4F]ZN11ǨWH
W"SiB9߻G\vb5'5ϰ	J kbI?PÒJLWtہ0i{Gu(e
`j̴ְ65-Y$"Ȁ}=]H<vF*ʰ8)N<;7eyP-QC
u./myRW]P+PũOV/T|r›찬5Fx]-aUkYJR8ni^e]P}|0mh5Q`.Fkύ)dc;zlRJЍhhMAs^5SBP4!9H0)I#M'PJEjft RQ$@1	+~K0(A%!rT8}pq+.!:/9ߘgpQbGM^.<J~&"f>-JhSϕ2$#g5&]NCNՒuahkQҏb
PE%4NG-j`8Du8"+<bX4
.M"8:5ʻaX9@R^(:^RCEϳ^&]eFSFs8oYa\,./wm:.CV!z!#tڊ>!F>?ŒV#P1i'ъ]g ]b€OYzW;,0w۲*:vPeiBaZ(;W1dU|nKɫr4F"f&HZ@Rr&,:8K{V+;Fs{DaJYFut~èQ}zԮkmttZK%Ijh(lk-&u,%ժA_NX BUSY+}8Y&ಿJzO^=DȲ-ͺ%PQ@Jeb*|mEUXň(E*h*e־WZifDP|j,G#$+ż<,Q&\=zv)zcC`
وz5J?Gb^KB|/P~P][`P4fc7B'-cB\ѧāKPS&NZ؀Mؽ@.Ja˜lU`A-0<i!/Y2D--~WZ.Jj%Q#79֓TUbLY$&BF@`"II{HՍ8[=j7Č09#WNڇwl#en,Ej{.\jd=J莏fDv4uYsC"]N;ё;I"@ۆ!JH.sD# QYm$pK$WF^@D(I"Z~Z
˂F
 1	ŬCdjͥ4[p*#aFqspWSeI
/:9(5V~ᰑ ӚD *yLռ߸6Nv3CJ4)2`$v955@۰YeupAݠbpޘU
HFFu!b09U	"
d4tsv*7u[I,yJ([gt!(z4fZ
ozMs6q%2R^g]CNPܪwZm)[auS
B.4Ä?arKEމdʔSG2Oנ
*Yrq;]tҮ35i/Vպ,QʨLpnG7N4
YyX9uj;.ڙ%784z^4(f,cXhwe\	RI\!488PQ	ik\?&0if^"XȢc6%gTNFr#pZmOAmxnj}X氎mv50nSBEk<D=0Sq9OW2#"(H5

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050911121449.01a09558>