YaKuake – Quake-style terminal emulator
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

acinclude.m4 367KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917
  1. ## -*- autoconf -*-
  2. dnl This file is part of the KDE libraries/packages
  3. dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu)
  4. dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org)
  5. dnl This file is free software; you can redistribute it and/or
  6. dnl modify it under the terms of the GNU Library General Public
  7. dnl License as published by the Free Software Foundation; either
  8. dnl version 2 of the License, or (at your option) any later version.
  9. dnl This library is distributed in the hope that it will be useful,
  10. dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. dnl Library General Public License for more details.
  13. dnl You should have received a copy of the GNU Library General Public License
  14. dnl along with this library; see the file COPYING.LIB. If not, write to
  15. dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  16. dnl Boston, MA 02110-1301, USA.
  17. dnl IMPORTANT NOTE:
  18. dnl Please do not modify this file unless you expect your modifications to be
  19. dnl carried into every other module in the repository.
  20. dnl
  21. dnl Single-module modifications are best placed in configure.in for tdelibs
  22. dnl and tdebase or configure.in.in if present.
  23. # KDE_PATH_X_DIRECT
  24. dnl Internal subroutine of AC_PATH_X.
  25. dnl Set ac_x_includes and/or ac_x_libraries.
  26. AC_DEFUN([KDE_PATH_X_DIRECT],
  27. [
  28. AC_REQUIRE([KDE_CHECK_LIB64])
  29. if test "$ac_x_includes" = NO; then
  30. # Guess where to find include files, by looking for this one X11 .h file.
  31. test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h
  32. # First, try using that file with no special directory specified.
  33. AC_TRY_CPP([#include <$x_direct_test_include>],
  34. [# We can compile using X headers with no special include directory.
  35. ac_x_includes=],
  36. [# Look for the header file in a standard set of common directories.
  37. # Check X11 before X11Rn because it is often a symlink to the current release.
  38. for ac_dir in \
  39. /usr/X11/include \
  40. /usr/X11R6/include \
  41. /usr/X11R5/include \
  42. /usr/X11R4/include \
  43. \
  44. /usr/include/X11 \
  45. /usr/include/X11R6 \
  46. /usr/include/X11R5 \
  47. /usr/include/X11R4 \
  48. \
  49. /usr/local/X11/include \
  50. /usr/local/X11R6/include \
  51. /usr/local/X11R5/include \
  52. /usr/local/X11R4/include \
  53. \
  54. /usr/local/include/X11 \
  55. /usr/local/include/X11R6 \
  56. /usr/local/include/X11R5 \
  57. /usr/local/include/X11R4 \
  58. \
  59. /usr/X386/include \
  60. /usr/x386/include \
  61. /usr/XFree86/include/X11 \
  62. \
  63. /usr/include \
  64. /usr/local/include \
  65. /usr/unsupported/include \
  66. /usr/athena/include \
  67. /usr/local/x11r5/include \
  68. /usr/lpp/Xamples/include \
  69. \
  70. /usr/openwin/include \
  71. /usr/openwin/share/include \
  72. ; \
  73. do
  74. if test -r "$ac_dir/$x_direct_test_include"; then
  75. ac_x_includes=$ac_dir
  76. break
  77. fi
  78. done])
  79. fi # $ac_x_includes = NO
  80. if test "$ac_x_libraries" = NO; then
  81. # Check for the libraries.
  82. test -z "$x_direct_test_library" && x_direct_test_library=Xt
  83. test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc
  84. # See if we find them without any special options.
  85. # Don't add to $LIBS permanently.
  86. ac_save_LIBS="$LIBS"
  87. LIBS="-l$x_direct_test_library $LIBS"
  88. AC_TRY_LINK([#include <X11/Intrinsic.h>], [${x_direct_test_function}(1)],
  89. [LIBS="$ac_save_LIBS"
  90. # We can link X programs with no special library path.
  91. ac_x_libraries=],
  92. [LIBS="$ac_save_LIBS"
  93. # First see if replacing the include by lib works.
  94. # Check X11 before X11Rn because it is often a symlink to the current release.
  95. for ac_dir in `echo "$ac_x_includes" | sed s/include/lib${tdelibsuff}/` \
  96. /usr/X11/lib${tdelibsuff} \
  97. /usr/X11R6/lib${tdelibsuff} \
  98. /usr/X11R5/lib${tdelibsuff} \
  99. /usr/X11R4/lib${tdelibsuff} \
  100. \
  101. /usr/lib${tdelibsuff}/X11 \
  102. /usr/lib${tdelibsuff}/X11R6 \
  103. /usr/lib${tdelibsuff}/X11R5 \
  104. /usr/lib${tdelibsuff}/X11R4 \
  105. \
  106. /usr/local/X11/lib${tdelibsuff} \
  107. /usr/local/X11R6/lib${tdelibsuff} \
  108. /usr/local/X11R5/lib${tdelibsuff} \
  109. /usr/local/X11R4/lib${tdelibsuff} \
  110. \
  111. /usr/local/lib${tdelibsuff}/X11 \
  112. /usr/local/lib${tdelibsuff}/X11R6 \
  113. /usr/local/lib${tdelibsuff}/X11R5 \
  114. /usr/local/lib${tdelibsuff}/X11R4 \
  115. \
  116. /usr/X386/lib${tdelibsuff} \
  117. /usr/x386/lib${tdelibsuff} \
  118. /usr/XFree86/lib${tdelibsuff}/X11 \
  119. \
  120. /usr/lib${tdelibsuff} \
  121. /usr/local/lib${tdelibsuff} \
  122. /usr/unsupported/lib${tdelibsuff} \
  123. /usr/athena/lib${tdelibsuff} \
  124. /usr/local/x11r5/lib${tdelibsuff} \
  125. /usr/lpp/Xamples/lib${tdelibsuff} \
  126. /lib/usr/lib${tdelibsuff}/X11 \
  127. \
  128. /usr/openwin/lib${tdelibsuff} \
  129. /usr/openwin/share/lib${tdelibsuff} \
  130. ; \
  131. do
  132. dnl Don't even attempt the hair of trying to link an X program!
  133. for ac_extension in a so sl; do
  134. if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then
  135. ac_x_libraries=$ac_dir
  136. break 2
  137. fi
  138. done
  139. done])
  140. fi # $ac_x_libraries = NO
  141. ])
  142. dnl ------------------------------------------------------------------------
  143. dnl Find a file (or one of more files in a list of dirs)
  144. dnl ------------------------------------------------------------------------
  145. dnl
  146. AC_DEFUN([AC_FIND_FILE],
  147. [
  148. $3=NO
  149. for i in $2;
  150. do
  151. for j in $1;
  152. do
  153. echo "configure: __oline__: $i/$j" >&AC_FD_CC
  154. if test -r "$i/$j"; then
  155. echo "taking that" >&AC_FD_CC
  156. $3=$i
  157. break 2
  158. fi
  159. done
  160. done
  161. ])
  162. dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs,
  163. dnl if-not-found, test-parameter, prepend-path)
  164. dnl
  165. dnl Look for program-name in list-of-dirs+$PATH.
  166. dnl If prepend-path is set, look in $PATH+list-of-dirs instead.
  167. dnl If found, $variable-name is set. If not, if-not-found is evaluated.
  168. dnl test-parameter: if set, the program is executed with this arg,
  169. dnl and only a successful exit code is required.
  170. AC_DEFUN([KDE_FIND_PATH],
  171. [
  172. AC_MSG_CHECKING([for $1])
  173. if test -n "$$2"; then
  174. kde_cv_path="$$2";
  175. else
  176. kde_cache=`echo $1 | sed 'y%./+-%__p_%'`
  177. AC_CACHE_VAL(kde_cv_path_$kde_cache,
  178. [
  179. kde_cv_path="NONE"
  180. kde_save_IFS=$IFS
  181. IFS=':'
  182. dirs=""
  183. for dir in $PATH; do
  184. dirs="$dirs $dir"
  185. done
  186. if test -z "$6"; then dnl Append dirs in PATH (default)
  187. dirs="$3 $dirs"
  188. else dnl Prepend dirs in PATH (if 6th arg is set)
  189. dirs="$dirs $3"
  190. fi
  191. IFS=$kde_save_IFS
  192. for dir in $dirs; do
  193. if test -x "$dir/$1"; then
  194. if test -n "$5"
  195. then
  196. evalstr="$dir/$1 $5 2>&1 "
  197. if eval $evalstr; then
  198. kde_cv_path="$dir/$1"
  199. break
  200. fi
  201. else
  202. kde_cv_path="$dir/$1"
  203. break
  204. fi
  205. fi
  206. done
  207. eval "kde_cv_path_$kde_cache=$kde_cv_path"
  208. ])
  209. eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\""
  210. fi
  211. if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then
  212. AC_MSG_RESULT(not found)
  213. $4
  214. else
  215. AC_MSG_RESULT($kde_cv_path)
  216. $2=$kde_cv_path
  217. fi
  218. ])
  219. AC_DEFUN([KDE_MOC_ERROR_MESSAGE],
  220. [
  221. AC_MSG_ERROR([No Qt meta object compiler (moc) found!
  222. Please check whether you installed Qt correctly.
  223. You need to have a running moc binary.
  224. configure tried to run $ac_cv_path_moc and the test didn't
  225. succeed. If configure shouldn't have tried this one, set
  226. the environment variable MOC to the right one before running
  227. configure.
  228. ])
  229. ])
  230. AC_DEFUN([KDE_UIC_ERROR_MESSAGE],
  231. [
  232. AC_MSG_WARN([No Qt ui compiler (uic) found!
  233. Please check whether you installed Qt correctly.
  234. You need to have a running uic binary.
  235. configure tried to run $ac_cv_path_uic and the test didn't
  236. succeed. If configure shouldn't have tried this one, set
  237. the environment variable UIC to the right one before running
  238. configure.
  239. ])
  240. ])
  241. AC_DEFUN([KDE_CHECK_UIC_FLAG],
  242. [
  243. AC_MSG_CHECKING([whether uic supports -$1 ])
  244. kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'`
  245. AC_CACHE_VAL(kde_cv_prog_uic_$kde_cache,
  246. [
  247. cat >conftest.ui <<EOT
  248. <!DOCTYPE UI><UI version="3" stdsetdef="1"></UI>
  249. EOT
  250. ac_uic_testrun="$UIC_PATH -$1 $2 conftest.ui >/dev/null"
  251. if AC_TRY_EVAL(ac_uic_testrun); then
  252. eval "kde_cv_prog_uic_$kde_cache=yes"
  253. else
  254. eval "kde_cv_prog_uic_$kde_cache=no"
  255. fi
  256. rm -f conftest*
  257. ])
  258. if eval "test \"`echo '$kde_cv_prog_uic_'$kde_cache`\" = yes"; then
  259. AC_MSG_RESULT([yes])
  260. :
  261. $3
  262. else
  263. AC_MSG_RESULT([no])
  264. :
  265. $4
  266. fi
  267. ])
  268. dnl ------------------------------------------------------------------------
  269. dnl Find the meta object compiler and the ui compiler in the PATH,
  270. dnl in $TQTDIR/bin, and some more usual places
  271. dnl ------------------------------------------------------------------------
  272. dnl
  273. AC_DEFUN([AC_PATH_TQT_MOC_UIC],
  274. [
  275. AC_REQUIRE([KDE_CHECK_PERL])
  276. qt_bindirs=""
  277. for dir in $kde_qt_dirs; do
  278. qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc"
  279. done
  280. qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin"
  281. if test ! "$ac_qt_bindir" = "NO"; then
  282. qt_bindirs="$ac_qt_bindir $qt_bindirs"
  283. fi
  284. KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE])
  285. if test -z "$UIC_NOT_NEEDED"; then
  286. KDE_FIND_PATH(uic, UIC_PATH, [$qt_bindirs], [UIC_PATH=""])
  287. if test -z "$UIC_PATH" ; then
  288. KDE_UIC_ERROR_MESSAGE
  289. exit 1
  290. else
  291. UIC=$UIC_PATH
  292. if test $kde_qtver = 3; then
  293. KDE_CHECK_UIC_FLAG(L,[/nonexistent],ac_uic_supports_libpath=yes,ac_uic_supports_libpath=no)
  294. KDE_CHECK_UIC_FLAG(nounload,,ac_uic_supports_nounload=yes,ac_uic_supports_nounload=no)
  295. if test x$ac_uic_supports_libpath = xyes; then
  296. UIC="$UIC -L \$(kde_widgetdir)"
  297. fi
  298. if test x$ac_uic_supports_nounload = xyes; then
  299. UIC="$UIC -nounload"
  300. fi
  301. fi
  302. fi
  303. else
  304. UIC="echo uic not available: "
  305. fi
  306. AC_SUBST(MOC)
  307. AC_SUBST(UIC)
  308. UIC_TR="i18n"
  309. if test $kde_qtver = 3; then
  310. UIC_TR="tr2i18n"
  311. fi
  312. AC_SUBST(UIC_TR)
  313. ])
  314. AC_DEFUN([KDE_1_CHECK_PATHS],
  315. [
  316. KDE_1_CHECK_PATH_HEADERS
  317. KDE_TEST_RPATH=
  318. if test -n "$USE_RPATH"; then
  319. if test -n "$kde_libraries"; then
  320. KDE_TEST_RPATH="-R $kde_libraries"
  321. fi
  322. if test -n "$qt_libraries"; then
  323. KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries"
  324. fi
  325. if test -n "$x_libraries"; then
  326. KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries"
  327. fi
  328. KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH"
  329. fi
  330. AC_MSG_CHECKING([for KDE libraries installed])
  331. ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -ltdecore $LIBTQT $KDE_TEST_RPATH 1>&5'
  332. if AC_TRY_EVAL(ac_link) && test -s conftest; then
  333. AC_MSG_RESULT(yes)
  334. else
  335. AC_MSG_ERROR([your system fails at linking a small KDE application!
  336. Check, if your compiler is installed correctly and if you have used the
  337. same compiler to compile Qt and tdelibs as you did use now.
  338. For more details about this problem, look at the end of config.log.])
  339. fi
  340. if eval `TDEDIR= ./conftest 2>&5`; then
  341. kde_result=done
  342. else
  343. kde_result=problems
  344. fi
  345. TDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log
  346. kde_have_all_paths=yes
  347. KDE_SET_PATHS($kde_result)
  348. ])
  349. AC_DEFUN([KDE_SET_PATHS],
  350. [
  351. kde_cv_all_paths="kde_have_all_paths=\"yes\" \
  352. kde_htmldir=\"$kde_htmldir\" \
  353. kde_appsdir=\"$kde_appsdir\" \
  354. kde_icondir=\"$kde_icondir\" \
  355. kde_sounddir=\"$kde_sounddir\" \
  356. kde_datadir=\"$kde_datadir\" \
  357. kde_locale=\"$kde_locale\" \
  358. kde_cgidir=\"$kde_cgidir\" \
  359. kde_confdir=\"$kde_confdir\" \
  360. kde_kcfgdir=\"$kde_kcfgdir\" \
  361. kde_mimedir=\"$kde_mimedir\" \
  362. kde_toolbardir=\"$kde_toolbardir\" \
  363. kde_wallpaperdir=\"$kde_wallpaperdir\" \
  364. kde_templatesdir=\"$kde_templatesdir\" \
  365. kde_bindir=\"$kde_bindir\" \
  366. kde_servicesdir=\"$kde_servicesdir\" \
  367. kde_servicetypesdir=\"$kde_servicetypesdir\" \
  368. kde_moduledir=\"$kde_moduledir\" \
  369. kde_styledir=\"$kde_styledir\" \
  370. kde_widgetdir=\"$kde_widgetdir\" \
  371. xdg_appsdir=\"$xdg_appsdir\" \
  372. xdg_menudir=\"$xdg_menudir\" \
  373. xdg_directorydir=\"$xdg_directorydir\" \
  374. kde_result=$1"
  375. ])
  376. AC_DEFUN([KDE_SET_DEFAULT_PATHS],
  377. [
  378. if test "$1" = "default"; then
  379. if test -z "$kde_htmldir"; then
  380. kde_htmldir='\${datadir}/doc/tde/HTML'
  381. fi
  382. if test -z "$kde_appsdir"; then
  383. kde_appsdir='\${datadir}/applnk'
  384. fi
  385. if test -z "$kde_icondir"; then
  386. kde_icondir='\${datadir}/icons'
  387. fi
  388. if test -z "$kde_sounddir"; then
  389. kde_sounddir='\${datadir}/sounds'
  390. fi
  391. if test -z "$kde_datadir"; then
  392. kde_datadir='\${datadir}/apps'
  393. fi
  394. if test -z "$kde_locale"; then
  395. kde_locale='\${datadir}/locale'
  396. fi
  397. if test -z "$kde_cgidir"; then
  398. kde_cgidir='\${exec_prefix}/cgi-bin'
  399. fi
  400. if test -z "$kde_confdir"; then
  401. kde_confdir='\${datadir}/config'
  402. fi
  403. if test -z "$kde_kcfgdir"; then
  404. kde_kcfgdir='\${datadir}/config.kcfg'
  405. fi
  406. if test -z "$kde_mimedir"; then
  407. kde_mimedir='\${datadir}/mimelnk'
  408. fi
  409. if test -z "$kde_toolbardir"; then
  410. kde_toolbardir='\${datadir}/toolbar'
  411. fi
  412. if test -z "$kde_wallpaperdir"; then
  413. kde_wallpaperdir='\${datadir}/wallpapers'
  414. fi
  415. if test -z "$kde_templatesdir"; then
  416. kde_templatesdir='\${datadir}/templates'
  417. fi
  418. if test -z "$kde_bindir"; then
  419. kde_bindir='\${exec_prefix}/bin'
  420. fi
  421. if test -z "$kde_servicesdir"; then
  422. kde_servicesdir='\${datadir}/services'
  423. fi
  424. if test -z "$kde_servicetypesdir"; then
  425. kde_servicetypesdir='\${datadir}/servicetypes'
  426. fi
  427. if test -z "$kde_moduledir"; then
  428. if test "$kde_qtver" = "2"; then
  429. kde_moduledir='\${libdir}/kde2'
  430. else
  431. kde_moduledir='\${libdir}/trinity'
  432. fi
  433. fi
  434. if test -z "$kde_styledir"; then
  435. kde_styledir='\${libdir}/trinity/plugins/styles'
  436. fi
  437. if test -z "$kde_widgetdir"; then
  438. kde_widgetdir='\${libdir}/trinity/plugins/designer'
  439. fi
  440. if test -z "$xdg_appsdir"; then
  441. xdg_appsdir='\${datadir}/applications/tde'
  442. fi
  443. if test -z "$xdg_menudir"; then
  444. xdg_menudir='\${sysconfdir}/xdg/menus'
  445. fi
  446. if test -z "$xdg_directorydir"; then
  447. xdg_directorydir='\${datadir}/desktop-directories'
  448. fi
  449. KDE_SET_PATHS(defaults)
  450. else
  451. if test $kde_qtver = 1; then
  452. AC_MSG_RESULT([compiling])
  453. KDE_1_CHECK_PATHS
  454. else
  455. AC_MSG_ERROR([path checking not yet supported for KDE 2])
  456. fi
  457. fi
  458. ])
  459. AC_DEFUN([KDE_CHECK_PATHS_FOR_COMPLETENESS],
  460. [ if test -z "$kde_htmldir" || test -z "$kde_appsdir" ||
  461. test -z "$kde_icondir" || test -z "$kde_sounddir" ||
  462. test -z "$kde_datadir" || test -z "$kde_locale" ||
  463. test -z "$kde_cgidir" || test -z "$kde_confdir" ||
  464. test -z "$kde_kcfgdir" ||
  465. test -z "$kde_mimedir" || test -z "$kde_toolbardir" ||
  466. test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" ||
  467. test -z "$kde_bindir" || test -z "$kde_servicesdir" ||
  468. test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" ||
  469. test -z "$kde_styledir" || test -z "kde_widgetdir" ||
  470. test -z "$xdg_appsdir" || test -z "$xdg_menudir" || test -z "$xdg_directorydir" ||
  471. test "x$kde_have_all_paths" != "xyes"; then
  472. kde_have_all_paths=no
  473. fi
  474. ])
  475. AC_DEFUN([KDE_MISSING_PROG_ERROR],
  476. [
  477. AC_MSG_ERROR([The important program $1 was not found!
  478. Please check whether you installed KDE correctly.
  479. ])
  480. ])
  481. AC_DEFUN([KDE_MISSING_ARTS_ERROR],
  482. [
  483. AC_MSG_ERROR([The important program $1 was not found!
  484. Please check whether you installed aRts correctly or use
  485. --without-arts to compile without aRts support (this will remove functionality).
  486. ])
  487. ])
  488. AC_DEFUN([KDE_SET_DEFAULT_BINDIRS],
  489. [
  490. kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/trinity/bin /usr/kde/bin /usr/local/kde/bin"
  491. test -n "$TDEDIR" && kde_default_bindirs="$TDEDIR/bin $kde_default_bindirs"
  492. if test -n "$TDEDIRS"; then
  493. kde_save_IFS=$IFS
  494. IFS=:
  495. for dir in $TDEDIRS; do
  496. kde_default_bindirs="$dir/bin $kde_default_bindirs "
  497. done
  498. IFS=$kde_save_IFS
  499. fi
  500. ])
  501. AC_DEFUN([KDE_SUBST_PROGRAMS],
  502. [
  503. AC_ARG_WITH(arts,
  504. AC_HELP_STRING([--without-arts],[build without aRts [default=no]]),
  505. [build_arts=$withval],
  506. [build_arts=yes]
  507. )
  508. AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no")
  509. if test "$build_arts" = "no"; then
  510. AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts])
  511. fi
  512. KDE_SET_DEFAULT_BINDIRS
  513. kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs"
  514. KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)])
  515. KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)])
  516. if test "$build_arts" '!=' "no"; then
  517. KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)])
  518. KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)])
  519. fi
  520. KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs])
  521. trinity2ornewer=1
  522. trinity3ornewer=1
  523. if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then
  524. trinity2ornewer=
  525. trinity3ornewer=
  526. else
  527. if test "$kde_qtver" = "3"; then
  528. if test "$kde_qtsubver" -le 1; then
  529. trinity2ornewer=
  530. fi
  531. if test "$kde_qtsubver" -le 2; then
  532. trinity3ornewer=
  533. fi
  534. if test "$KDECONFIG" != "compiled"; then
  535. if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then
  536. trinity3ornewer=
  537. fi
  538. fi
  539. fi
  540. fi
  541. if test -n "$trinity2ornewer"; then
  542. KDE_FIND_PATH(tdeconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(tdeconfig_compiler)])
  543. KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)])
  544. fi
  545. if test -n "$trinity3ornewer"; then
  546. KDE_FIND_PATH(maketdewidgets, MAKETDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(maketdewidgets)])
  547. AC_SUBST(MAKETDEWIDGETS)
  548. fi
  549. KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""])
  550. if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then
  551. kde_sharedirs="$prefix/share /opt/trinity/share /opt/trinity/share /opt/kde/share /usr/share/kde /usr/local/share /usr/share"
  552. test -n "$TDEDIR" && kde_sharedirs="$TDEDIR/share $kde_sharedirs"
  553. AC_FIND_FILE(apps/ksgmltools2/customization/tde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET)
  554. if test "$KDE_XSL_STYLESHEET" = "NO"; then
  555. KDE_XSL_STYLESHEET=""
  556. else
  557. KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/tde-chunk.xsl"
  558. fi
  559. fi
  560. DCOP_DEPENDENCIES='$(DCOPIDL)'
  561. if test -n "$trinity2ornewer"; then
  562. KCFG_DEPENDENCIES='$(KCONFIG_COMPILER)'
  563. DCOP_DEPENDENCIES='$(DCOPIDL) $(DCOPIDLNG)'
  564. AC_SUBST(KCONFIG_COMPILER)
  565. AC_SUBST(KCFG_DEPENDENCIES)
  566. AC_SUBST(DCOPIDLNG)
  567. fi
  568. AC_SUBST(DCOPIDL)
  569. AC_SUBST(DCOPIDL2CPP)
  570. AC_SUBST(DCOP_DEPENDENCIES)
  571. AC_SUBST(MCOPIDL)
  572. AC_SUBST(ARTSCCONFIG)
  573. AC_SUBST(MEINPROC)
  574. AC_SUBST(KDE_XSL_STYLESHEET)
  575. AC_SUBST(XMLLINT)
  576. ])dnl
  577. AC_DEFUN([AC_CREATE_KFSSTND],
  578. [
  579. AC_REQUIRE([AC_CHECK_RPATH])
  580. AC_MSG_CHECKING([for KDE paths])
  581. kde_result=""
  582. kde_cached_paths=yes
  583. AC_CACHE_VAL(kde_cv_all_paths,
  584. [
  585. KDE_SET_DEFAULT_PATHS($1)
  586. kde_cached_paths=no
  587. ])
  588. eval "$kde_cv_all_paths"
  589. KDE_CHECK_PATHS_FOR_COMPLETENESS
  590. if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then
  591. # wrong values were cached, may be, we can set better ones
  592. kde_result=
  593. kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir=
  594. kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_kcfgdir=
  595. kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir=
  596. kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir=
  597. kde_have_all_paths=
  598. kde_styledir=
  599. kde_widgetdir=
  600. xdg_appsdir = xdg_menudir= xdg_directorydir=
  601. KDE_SET_DEFAULT_PATHS($1)
  602. eval "$kde_cv_all_paths"
  603. KDE_CHECK_PATHS_FOR_COMPLETENESS
  604. kde_result="$kde_result (cache overridden)"
  605. fi
  606. if test "$kde_have_all_paths" = "no"; then
  607. AC_MSG_ERROR([configure could not run a little KDE program to test the environment.
  608. Since it had compiled and linked before, it must be a strange problem on your system.
  609. Look at config.log for details. If you are not able to fix this, look at
  610. http://www.kde.org/faq/installation.html or any www.kde.org mirror.
  611. (If you're using an egcs version on Linux, you may update binutils!)
  612. ])
  613. else
  614. rm -f conftest*
  615. AC_MSG_RESULT($kde_result)
  616. fi
  617. bindir=$kde_bindir
  618. KDE_SUBST_PROGRAMS
  619. ])
  620. AC_DEFUN([AC_SUBST_KFSSTND],
  621. [
  622. AC_SUBST(kde_htmldir)
  623. AC_SUBST(kde_appsdir)
  624. AC_SUBST(kde_icondir)
  625. AC_SUBST(kde_sounddir)
  626. AC_SUBST(kde_datadir)
  627. AC_SUBST(kde_locale)
  628. AC_SUBST(kde_confdir)
  629. AC_SUBST(kde_kcfgdir)
  630. AC_SUBST(kde_mimedir)
  631. AC_SUBST(kde_wallpaperdir)
  632. AC_SUBST(kde_bindir)
  633. dnl X Desktop Group standards
  634. AC_SUBST(xdg_appsdir)
  635. AC_SUBST(xdg_menudir)
  636. AC_SUBST(xdg_directorydir)
  637. dnl for KDE 2
  638. AC_SUBST(kde_templatesdir)
  639. AC_SUBST(kde_servicesdir)
  640. AC_SUBST(kde_servicetypesdir)
  641. AC_SUBST(kde_moduledir)
  642. AC_SUBST(tdeinitdir, '$(kde_moduledir)')
  643. AC_SUBST(kde_styledir)
  644. AC_SUBST(kde_widgetdir)
  645. if test "$kde_qtver" = 1; then
  646. kde_minidir="$kde_icondir/mini"
  647. else
  648. # for KDE 1 - this breaks KDE2 apps using minidir, but
  649. # that's the plan ;-/
  650. kde_minidir="/dev/null"
  651. fi
  652. dnl AC_SUBST(kde_minidir)
  653. dnl AC_SUBST(kde_cgidir)
  654. dnl AC_SUBST(kde_toolbardir)
  655. ])
  656. AC_DEFUN([KDE_MISC_TESTS],
  657. [
  658. dnl Checks for libraries.
  659. AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD
  660. AC_SUBST(LIBUTIL)
  661. AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD
  662. AC_SUBST(LIBCOMPAT)
  663. kde_have_crypt=
  664. AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes],
  665. AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [
  666. AC_MSG_WARN([you have no crypt in either libcrypt or libc.
  667. You should install libcrypt from another source or configure with PAM
  668. support])
  669. kde_have_crypt=no
  670. ]))
  671. AC_SUBST(LIBCRYPT)
  672. if test $kde_have_crypt = yes; then
  673. AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function])
  674. fi
  675. AC_CHECK_SOCKLEN_T
  676. AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"])
  677. if test $ac_cv_lib_dnet_dnet_ntoa = no; then
  678. AC_CHECK_LIB(dnet_stub, dnet_ntoa,
  679. [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"])
  680. fi
  681. AC_CHECK_FUNC(inet_ntoa)
  682. if test $ac_cv_func_inet_ntoa = no; then
  683. AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl")
  684. fi
  685. AC_CHECK_FUNC(connect)
  686. if test $ac_cv_func_connect = no; then
  687. AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", ,
  688. $X_EXTRA_LIBS)
  689. fi
  690. AC_CHECK_FUNC(remove)
  691. if test $ac_cv_func_remove = no; then
  692. AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix")
  693. fi
  694. # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
  695. AC_CHECK_FUNC(shmat, ,
  696. AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"))
  697. # more headers that need to be explicitly included on darwin
  698. AC_CHECK_HEADERS(sys/types.h stdint.h)
  699. # sys/bitypes.h is needed for uint32_t and friends on Tru64
  700. AC_CHECK_HEADERS(sys/bitypes.h)
  701. # darwin requires a poll emulation library
  702. AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll")
  703. # for some image handling on Mac OS X
  704. AC_CHECK_HEADERS(Carbon/Carbon.h)
  705. # CoreAudio framework
  706. AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [
  707. AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API])
  708. FRAMEWORK_COREAUDIO="-Wl,-framework,CoreAudio"
  709. ])
  710. AC_CHECK_RES_INIT
  711. AC_SUBST(LIB_POLL)
  712. AC_SUBST(FRAMEWORK_COREAUDIO)
  713. LIBSOCKET="$X_EXTRA_LIBS"
  714. AC_SUBST(LIBSOCKET)
  715. AC_SUBST(X_EXTRA_LIBS)
  716. AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4
  717. AC_SUBST(LIBUCB)
  718. case $host in dnl this *is* LynxOS specific
  719. *-*-lynxos* )
  720. AC_MSG_CHECKING([LynxOS header file wrappers])
  721. [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"]
  722. AC_MSG_RESULT(disabled)
  723. AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS
  724. ;;
  725. esac
  726. KDE_CHECK_TYPES
  727. KDE_CHECK_LIBDL
  728. KDE_CHECK_STRLCPY
  729. KDE_CHECK_PIE_SUPPORT
  730. # darwin needs this to initialize the environment
  731. AC_CHECK_HEADERS(crt_externs.h)
  732. AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])])
  733. AH_VERBATIM(_DARWIN_ENVIRON,
  734. [
  735. #if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
  736. # include <sys/time.h>
  737. # include <crt_externs.h>
  738. # define environ (*_NSGetEnviron())
  739. #endif
  740. ])
  741. AH_VERBATIM(_AIX_STRINGS_H_BZERO,
  742. [
  743. /*
  744. * AIX defines FD_SET in terms of bzero, but fails to include <strings.h>
  745. * that defines bzero.
  746. */
  747. #if defined(_AIX)
  748. #include <strings.h>
  749. #endif
  750. ])
  751. AC_CHECK_FUNCS([vsnprintf snprintf])
  752. AH_VERBATIM(_TRU64,[
  753. /*
  754. * On HP-UX, the declaration of vsnprintf() is needed every time !
  755. */
  756. #if !defined(HAVE_VSNPRINTF) || defined(hpux)
  757. #if __STDC__
  758. #include <stdarg.h>
  759. #include <stdlib.h>
  760. #else
  761. #include <varargs.h>
  762. #endif
  763. #ifdef __cplusplus
  764. extern "C"
  765. #endif
  766. int vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
  767. #ifdef __cplusplus
  768. extern "C"
  769. #endif
  770. int snprintf(char *str, size_t n, char const *fmt, ...);
  771. #endif
  772. ])
  773. ])
  774. dnl ------------------------------------------------------------------------
  775. dnl Find the header files and libraries for X-Windows. Extended the
  776. dnl macro AC_PATH_X
  777. dnl ------------------------------------------------------------------------
  778. dnl
  779. AC_DEFUN([K_PATH_X],
  780. [
  781. AC_REQUIRE([KDE_MISC_TESTS])dnl
  782. AC_REQUIRE([KDE_CHECK_LIB64])
  783. AC_ARG_ENABLE(
  784. embedded,
  785. AC_HELP_STRING([--enable-embedded],[link to Qt-embedded, don't use X]),
  786. kde_use_qt_emb=$enableval,
  787. kde_use_qt_emb=no
  788. )
  789. AC_ARG_ENABLE(
  790. qtopia,
  791. AC_HELP_STRING([--enable-qtopia],[link to Qt-embedded, link to the Qtopia Environment]),
  792. kde_use_qt_emb_palm=$enableval,
  793. kde_use_qt_emb_palm=no
  794. )
  795. AC_ARG_ENABLE(
  796. mac,
  797. AC_HELP_STRING([--enable-mac],[link to Qt/Mac (don't use X)]),
  798. kde_use_qt_mac=$enableval,
  799. kde_use_qt_mac=no
  800. )
  801. # used to disable x11-specific stuff on special platforms
  802. AM_CONDITIONAL(include_x11, test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no")
  803. if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then
  804. AC_MSG_CHECKING(for X)
  805. AC_CACHE_VAL(kde_cv_have_x,
  806. [# One or both of the vars are not set, and there is no cached value.
  807. if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then
  808. kde_x_includes=NO
  809. else
  810. kde_x_includes=$x_includes
  811. fi
  812. if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then
  813. kde_x_libraries=NO
  814. else
  815. kde_x_libraries=$x_libraries
  816. fi
  817. # below we use the standard autoconf calls
  818. ac_x_libraries=$kde_x_libraries
  819. ac_x_includes=$kde_x_includes
  820. KDE_PATH_X_DIRECT
  821. dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries.
  822. dnl Unfortunately, if compiling with the N32 ABI, this is not the correct
  823. dnl location. The correct location is /usr/lib32 or an undefined value
  824. dnl (the linker is smart enough to pick the correct default library).
  825. dnl Things work just fine if you use just AC_PATH_X_DIRECT.
  826. dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to
  827. dnl /usr/openwin/include, which doesn't work. /usr/include does work, so
  828. dnl x_includes should be left alone.
  829. case "$host" in
  830. mips-sgi-irix6*)
  831. ;;
  832. *-*-solaris*)
  833. ;;
  834. *)
  835. _AC_PATH_X_XMKMF
  836. if test -z "$ac_x_includes"; then
  837. ac_x_includes="."
  838. fi
  839. if test -z "$ac_x_libraries"; then
  840. ac_x_libraries="/usr/lib${tdelibsuff}"
  841. fi
  842. esac
  843. #from now on we use our own again
  844. # when the user already gave --x-includes, we ignore
  845. # what the standard autoconf macros told us.
  846. if test "$kde_x_includes" = NO; then
  847. kde_x_includes=$ac_x_includes
  848. fi
  849. # for --x-libraries too
  850. if test "$kde_x_libraries" = NO; then
  851. kde_x_libraries=$ac_x_libraries
  852. fi
  853. if test "$kde_x_includes" = NO; then
  854. AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!])
  855. fi
  856. if test "$kde_x_libraries" = NO; then
  857. AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!])
  858. fi
  859. # Record where we found X for the cache.
  860. kde_cv_have_x="have_x=yes \
  861. kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries"
  862. ])dnl
  863. eval "$kde_cv_have_x"
  864. if test "$have_x" != yes; then
  865. AC_MSG_RESULT($have_x)
  866. no_x=yes
  867. else
  868. AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes])
  869. fi
  870. if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then
  871. X_INCLUDES=""
  872. x_includes="."; dnl better than nothing :-
  873. else
  874. x_includes=$kde_x_includes
  875. X_INCLUDES="-I$x_includes"
  876. fi
  877. if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE || test "$kde_x_libraries" = "/usr/lib"; then
  878. X_LDFLAGS=""
  879. x_libraries="/usr/lib"; dnl better than nothing :-
  880. else
  881. x_libraries=$kde_x_libraries
  882. X_LDFLAGS="-L$x_libraries"
  883. fi
  884. all_includes="$X_INCLUDES"
  885. all_libraries="$X_LDFLAGS $LDFLAGS_AS_NEEDED $LDFLAGS_NEW_DTAGS"
  886. # Check for libraries that X11R6 Xt/Xaw programs need.
  887. ac_save_LDFLAGS="$LDFLAGS"
  888. LDFLAGS="$LDFLAGS $X_LDFLAGS"
  889. # SM needs ICE to (dynamically) link under SunOS 4.x (so we have to
  890. # check for ICE first), but we must link in the order -lSM -lICE or
  891. # we get undefined symbols. So assume we have SM if we have ICE.
  892. # These have to be linked with before -lX11, unlike the other
  893. # libraries we check for below, so use a different variable.
  894. # --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
  895. AC_CHECK_LIB(ICE, IceConnectionNumber,
  896. [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS)
  897. LDFLAGS="$ac_save_LDFLAGS"
  898. LIB_X11='-lX11 $(LIBSOCKET)'
  899. AC_MSG_CHECKING(for libXext)
  900. AC_CACHE_VAL(kde_cv_have_libXext,
  901. [
  902. kde_ldflags_safe="$LDFLAGS"
  903. kde_libs_safe="$LIBS"
  904. LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS"
  905. LIBS="-lXext -lX11 $LIBSOCKET"
  906. AC_TRY_LINK([
  907. #include <stdio.h>
  908. #ifdef STDC_HEADERS
  909. # include <stdlib.h>
  910. #endif
  911. ],
  912. [
  913. printf("hello Xext\n");
  914. ],
  915. kde_cv_have_libXext=yes,
  916. kde_cv_have_libXext=no
  917. )
  918. LDFLAGS=$kde_ldflags_safe
  919. LIBS=$kde_libs_safe
  920. ])
  921. AC_MSG_RESULT($kde_cv_have_libXext)
  922. if test "$kde_cv_have_libXext" = "no"; then
  923. AC_MSG_ERROR([We need a working libXext to proceed. Since configure
  924. can't find it itself, we stop here assuming that make wouldn't find
  925. them either.])
  926. fi
  927. LIB_XEXT="-lXext"
  928. QTE_NORTTI=""
  929. elif test "$kde_use_qt_emb" = "yes"; then
  930. dnl We're using QT Embedded
  931. CPPFLAGS=-DQWS
  932. CXXFLAGS="$CXXFLAGS -fno-rtti"
  933. QTE_NORTTI="-fno-rtti -DQWS"
  934. X_PRE_LIBS=""
  935. LIB_X11=""
  936. LIB_XEXT=""
  937. LIB_XRENDER=""
  938. LIBSM=""
  939. X_INCLUDES=""
  940. X_LDFLAGS=""
  941. x_includes=""
  942. x_libraries=""
  943. elif test "$kde_use_qt_mac" = "yes"; then
  944. dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to
  945. dnl be included to get the information) --Sam
  946. CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp"
  947. CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp"
  948. X_PRE_LIBS=""
  949. LIB_X11=""
  950. LIB_XEXT=""
  951. LIB_XRENDER=""
  952. LIBSM=""
  953. X_INCLUDES=""
  954. X_LDFLAGS=""
  955. x_includes=""
  956. x_libraries=""
  957. fi
  958. AC_SUBST(X_PRE_LIBS)
  959. AC_SUBST(LIB_X11)
  960. AC_SUBST(LIB_XRENDER)
  961. AC_SUBST(LIBSM)
  962. AC_SUBST(X_INCLUDES)
  963. AC_SUBST(X_LDFLAGS)
  964. AC_SUBST(x_includes)
  965. AC_SUBST(x_libraries)
  966. AC_SUBST(QTE_NORTTI)
  967. AC_SUBST(LIB_XEXT)
  968. ])
  969. AC_DEFUN([KDE_PRINT_QT_PROGRAM],
  970. [
  971. AC_REQUIRE([KDE_USE_TQT])
  972. cat > conftest.$ac_ext <<EOF
  973. #include "confdefs.h"
  974. #include <qglobal.h>
  975. #include <qapplication.h>
  976. EOF
  977. if test "$kde_qtver" = "2"; then
  978. cat >> conftest.$ac_ext <<EOF
  979. #include <qevent.h>
  980. #include <qstring.h>
  981. #include <qstyle.h>
  982. EOF
  983. if test $kde_qtsubver -gt 0; then
  984. cat >> conftest.$ac_ext <<EOF
  985. #if TQT_VERSION < 210
  986. #error 1
  987. #endif
  988. EOF
  989. fi
  990. fi
  991. if test "$kde_qtver" = "3"; then
  992. cat >> conftest.$ac_ext <<EOF
  993. #include <qcursor.h>
  994. #include <qstylefactory.h>
  995. #include <private/qucomextra_p.h>
  996. EOF
  997. fi
  998. echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext
  999. cat >> conftest.$ac_ext <<EOF
  1000. #error 1
  1001. #endif
  1002. int main() {
  1003. EOF
  1004. if test "$kde_qtver" = "2"; then
  1005. cat >> conftest.$ac_ext <<EOF
  1006. QStringList *t = new QStringList();
  1007. Q_UNUSED(t);
  1008. EOF
  1009. if test $kde_qtsubver -gt 0; then
  1010. cat >> conftest.$ac_ext <<EOF
  1011. QString s;
  1012. s.setLatin1("Elvis is alive", 14);
  1013. EOF
  1014. fi
  1015. fi
  1016. if test "$kde_qtver" = "3"; then
  1017. cat >> conftest.$ac_ext <<EOF
  1018. (void)QStyleFactory::create(QString::null);
  1019. QCursor c(Qt::WhatsThisCursor);
  1020. EOF
  1021. fi
  1022. cat >> conftest.$ac_ext <<EOF
  1023. return 0;
  1024. }
  1025. EOF
  1026. ])
  1027. AC_DEFUN([KDE_USE_TQT],
  1028. [
  1029. if test -z "$1"; then
  1030. # Current default Qt version: 3.3
  1031. kde_qtver=3
  1032. kde_qtsubver=3
  1033. else
  1034. kde_qtsubver=`echo "$1" | sed -e 's#[0-9][0-9]*\.\([0-9][0-9]*\).*#\1#'`
  1035. # following is the check if subversion isnt found in passed argument
  1036. if test "$kde_qtsubver" = "$1"; then
  1037. kde_qtsubver=1
  1038. fi
  1039. kde_qtver=`echo "$1" | sed -e 's#^\([0-9][0-9]*\)\..*#\1#'`
  1040. if test "$kde_qtver" = "1"; then
  1041. kde_qtsubver=42
  1042. fi
  1043. fi
  1044. if test -z "$2"; then
  1045. if test "$kde_qtver" = "2"; then
  1046. if test $kde_qtsubver -gt 0; then
  1047. kde_qt_minversion=">= Qt 2.2.2"
  1048. else
  1049. kde_qt_minversion=">= Qt 2.0.2"
  1050. fi
  1051. fi
  1052. if test "$kde_qtver" = "3"; then
  1053. if test $kde_qtsubver -gt 0; then
  1054. if test $kde_qtsubver -gt 1; then
  1055. if test $kde_qtsubver -gt 2; then
  1056. kde_qt_minversion=">= Qt 3.3 and < 4.0"
  1057. else
  1058. kde_qt_minversion=">= Qt 3.2 and < 4.0"
  1059. fi
  1060. else
  1061. kde_qt_minversion=">= Qt 3.1 (20021021) and < 4.0"
  1062. fi
  1063. else
  1064. kde_qt_minversion=">= Qt 3.0 and < 4.0"
  1065. fi
  1066. fi
  1067. if test "$kde_qtver" = "1"; then
  1068. kde_qt_minversion=">= 1.42 and < 2.0"
  1069. fi
  1070. else
  1071. kde_qt_minversion="$2"
  1072. fi
  1073. if test -z "$3"; then
  1074. if test $kde_qtver = 3; then
  1075. if test $kde_qtsubver -gt 0; then
  1076. kde_qt_verstring="TQT_VERSION >= 0x03@VER@00 && TQT_VERSION < 0x040000"
  1077. qtsubver=`echo "00$kde_qtsubver" | sed -e 's,.*\(..\)$,\1,'`
  1078. kde_qt_verstring=`echo $kde_qt_verstring | sed -e "s,@VER@,$qtsubver,"`
  1079. else
  1080. kde_qt_verstring="TQT_VERSION >= 300 && TQT_VERSION < 0x040000"
  1081. fi
  1082. fi
  1083. if test $kde_qtver = 2; then
  1084. if test $kde_qtsubver -gt 0; then
  1085. kde_qt_verstring="TQT_VERSION >= 222"
  1086. else
  1087. kde_qt_verstring="TQT_VERSION >= 200"
  1088. fi
  1089. fi
  1090. if test $kde_qtver = 1; then
  1091. kde_qt_verstring="TQT_VERSION >= 142 && TQT_VERSION < 200"
  1092. fi
  1093. else
  1094. kde_qt_verstring="$3"
  1095. fi
  1096. if test $kde_qtver = 4; then
  1097. kde_qt_dirs="$TQTDIR /usr/lib/qt4 /usr/lib/qt /usr/share/qt4"
  1098. fi
  1099. if test $kde_qtver = 3; then
  1100. kde_qt_dirs="$TQTDIR /usr/lib/qt3 /usr/lib/qt /usr/share/qt3 /usr/lib${tdelibsuff}/qt-3.3"
  1101. if test -z "$PKG_CONFIG"; then
  1102. AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
  1103. fi
  1104. if test "$PKG_CONFIG" != "no" ; then
  1105. if $PKG_CONFIG --exists qt-mt ; then
  1106. kde_qt_dirs="$kde_qt_dirs `$PKG_CONFIG --variable=prefix qt-mt`"
  1107. fi
  1108. fi
  1109. fi
  1110. if test $kde_qtver = 2; then
  1111. kde_qt_dirs="$TQTDIR /usr/lib/qt2 /usr/lib/qt"
  1112. fi
  1113. if test $kde_qtver = 1; then
  1114. kde_qt_dirs="$TQTDIR /usr/lib/qt"
  1115. fi
  1116. ])
  1117. AC_DEFUN([KDE_CHECK_QT_DIRECT],
  1118. [
  1119. AC_REQUIRE([KDE_USE_TQT])
  1120. AC_MSG_CHECKING([if Qt compiles without flags])
  1121. AC_CACHE_VAL(kde_cv_qt_direct,
  1122. [
  1123. AC_LANG_SAVE
  1124. AC_LANG_CPLUSPLUS
  1125. ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH
  1126. ac_LIBRARY_PATH="$LIBRARY_PATH"
  1127. ac_cxxflags_safe="$CXXFLAGS"
  1128. ac_ldflags_safe="$LDFLAGS"
  1129. ac_libs_safe="$LIBS"
  1130. CXXFLAGS="$CXXFLAGS -I$tqt_includes"
  1131. LDFLAGS="$LDFLAGS $X_LDFLAGS"
  1132. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  1133. LIBS="$LIBTQT -lXext -lX11 $LIBSOCKET"
  1134. else
  1135. LIBS="$LIBTQT $LIBSOCKET"
  1136. fi
  1137. LD_LIBRARY_PATH=
  1138. export LD_LIBRARY_PATH
  1139. LIBRARY_PATH=
  1140. export LIBRARY_PATH
  1141. KDE_PRINT_QT_PROGRAM
  1142. if AC_TRY_EVAL(ac_link) && test -s conftest; then
  1143. kde_cv_qt_direct="yes"
  1144. else
  1145. kde_cv_qt_direct="no"
  1146. echo "configure: failed program was:" >&AC_FD_CC
  1147. cat conftest.$ac_ext >&AC_FD_CC
  1148. fi
  1149. rm -f conftest*
  1150. CXXFLAGS="$ac_cxxflags_safe"
  1151. LDFLAGS="$ac_ldflags_safe"
  1152. LIBS="$ac_libs_safe"
  1153. LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe"
  1154. export LD_LIBRARY_PATH
  1155. LIBRARY_PATH="$ac_LIBRARY_PATH"
  1156. export LIBRARY_PATH
  1157. AC_LANG_RESTORE
  1158. ])
  1159. if test "$kde_cv_qt_direct" = "yes"; then
  1160. AC_MSG_RESULT(yes)
  1161. $1
  1162. else
  1163. AC_MSG_RESULT(no)
  1164. $2
  1165. fi
  1166. ])
  1167. dnl ------------------------------------------------------------------------
  1168. dnl Try to find the Qt headers and libraries.
  1169. dnl $(QT_LDFLAGS) will be -Ltqtliblocation (if needed)
  1170. dnl and $(TQT_INCLUDES) will be -Iqthdrlocation (if needed)
  1171. dnl ------------------------------------------------------------------------
  1172. dnl
  1173. AC_DEFUN([AC_PATH_TQT_1_3],
  1174. [
  1175. AC_REQUIRE([K_PATH_X])
  1176. AC_REQUIRE([KDE_USE_TQT])
  1177. AC_REQUIRE([KDE_CHECK_LIB64])
  1178. dnl ------------------------------------------------------------------------
  1179. dnl Add configure flag to enable linking to MT version of Qt library.
  1180. dnl ------------------------------------------------------------------------
  1181. AC_ARG_ENABLE(
  1182. mt,
  1183. AC_HELP_STRING([--disable-mt],[link to non-threaded Qt (deprecated)]),
  1184. kde_use_qt_mt=$enableval,
  1185. [
  1186. if test $kde_qtver = 3; then
  1187. kde_use_qt_mt=yes
  1188. else
  1189. kde_use_qt_mt=no
  1190. fi
  1191. ]
  1192. )
  1193. USING_QT_MT=""
  1194. dnl ------------------------------------------------------------------------
  1195. dnl If we not get --disable-qt-mt then adjust some vars for the host.
  1196. dnl ------------------------------------------------------------------------
  1197. KDE_MT_LDFLAGS=
  1198. KDE_MT_LIBS=
  1199. if test "x$kde_use_qt_mt" = "xyes"; then
  1200. KDE_CHECK_THREADING
  1201. if test "x$kde_use_threading" = "xyes"; then
  1202. CPPFLAGS="$USE_THREADS -DTQT_THREAD_SUPPORT $CPPFLAGS"
  1203. KDE_MT_LDFLAGS="$USE_THREADS"
  1204. KDE_MT_LIBS="$LIBPTHREAD"
  1205. else
  1206. kde_use_qt_mt=no
  1207. fi
  1208. fi
  1209. AC_SUBST(KDE_MT_LDFLAGS)
  1210. AC_SUBST(KDE_MT_LIBS)
  1211. kde_qt_was_given=yes
  1212. dnl ------------------------------------------------------------------------
  1213. dnl If we haven't been told how to link to Qt, we work it out for ourselves.
  1214. dnl ------------------------------------------------------------------------
  1215. if test -z "$LIBTQT_GLOB"; then
  1216. if test "x$kde_use_qt_emb" = "xyes"; then
  1217. LIBTQT_GLOB="libtqte.*"
  1218. else
  1219. LIBTQT_GLOB="libtqt.*"
  1220. fi
  1221. fi
  1222. dnl ------------------------------------------------------------
  1223. dnl If we got --enable-embedded then adjust the Qt library name.
  1224. dnl ------------------------------------------------------------
  1225. if test "x$kde_use_qt_emb" = "xyes"; then
  1226. tqtlib="qte"
  1227. else
  1228. tqtlib="qt"
  1229. fi
  1230. kde_int_qt="-l$tqtlib"
  1231. if test -z "$LIBQPE"; then
  1232. dnl ------------------------------------------------------------
  1233. dnl If we got --enable-palmtop then add -lqpe to the link line
  1234. dnl ------------------------------------------------------------
  1235. if test "x$kde_use_qt_emb" = "xyes"; then
  1236. if test "x$kde_use_qt_emb_palm" = "xyes"; then
  1237. LIB_QPE="-lqpe"
  1238. else
  1239. LIB_QPE=""
  1240. fi
  1241. else
  1242. LIB_QPE=""
  1243. fi
  1244. fi
  1245. dnl ------------------------------------------------------------------------
  1246. dnl If we got --enable-qt-mt then adjust the Qt library name for the host.
  1247. dnl ------------------------------------------------------------------------
  1248. if test "x$kde_use_qt_mt" = "xyes"; then
  1249. LIBTQT="-l$tqtlib-mt"
  1250. kde_int_qt="-l$tqtlib-mt"
  1251. LIBTQT_GLOB="lib$tqtlib-mt.*"
  1252. USING_QT_MT="using -mt"
  1253. else
  1254. LIBTQT="-l$tqtlib"
  1255. fi
  1256. if test $kde_qtver != 1; then
  1257. AC_REQUIRE([AC_FIND_PNG])
  1258. AC_REQUIRE([AC_FIND_JPEG])
  1259. LIBTQT="$LIBTQT $LIBPNG $LIBJPEG"
  1260. fi
  1261. if test $kde_qtver = 3; then
  1262. AC_REQUIRE([KDE_CHECK_LIBDL])
  1263. LIBTQT="$LIBTQT $LIBDL"
  1264. fi
  1265. AC_MSG_CHECKING([for Qt])
  1266. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  1267. LIBTQT="$LIBTQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET"
  1268. fi
  1269. ac_tqt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO
  1270. qt_libraries=""
  1271. tqt_includes=""
  1272. AC_ARG_WITH(qt-dir,
  1273. AC_HELP_STRING([--with-qt-dir=DIR],[where the root of Qt is installed ]),
  1274. [ ac_tqt_includes="$withval"/include
  1275. ac_qt_libraries="$withval"/lib${tdelibsuff}
  1276. ac_qt_bindir="$withval"/bin
  1277. ])
  1278. AC_ARG_WITH(qt-includes,
  1279. AC_HELP_STRING([--with-qt-includes=DIR],[where the Qt includes are. ]),
  1280. [
  1281. ac_tqt_includes="$withval"
  1282. ])
  1283. kde_qt_libs_given=no
  1284. AC_ARG_WITH(qt-libraries,
  1285. AC_HELP_STRING([--with-qt-libraries=DIR],[where the Qt library is installed.]),
  1286. [ ac_qt_libraries="$withval"
  1287. kde_qt_libs_given=yes
  1288. ])
  1289. AC_CACHE_VAL(ac_cv_have_qt,
  1290. [#try to guess Qt locations
  1291. qt_incdirs=""
  1292. for dir in $kde_qt_dirs; do
  1293. qt_incdirs="$qt_incdirs $dir/include $dir"
  1294. done
  1295. if test -z "$PKG_CONFIG"; then
  1296. AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
  1297. fi
  1298. if test "$PKG_CONFIG" != "no" ; then
  1299. if $PKG_CONFIG --exists qt-mt ; then
  1300. qt_incdirs="$qt_incdirs `$PKG_CONFIG --variable=includedir qt-mt`"
  1301. fi
  1302. fi
  1303. qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 /usr/include/qt3 $x_includes"
  1304. if test ! "$ac_tqt_includes" = "NO"; then
  1305. qt_incdirs="$ac_tqt_includes $qt_incdirs"
  1306. fi
  1307. if test "$kde_qtver" != "1"; then
  1308. kde_qt_header=qstyle.h
  1309. else
  1310. kde_qt_header=qglobal.h
  1311. fi
  1312. AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir)
  1313. ac_tqt_includes="$qt_incdir"
  1314. qt_libdirs=""
  1315. for dir in $kde_qt_dirs; do
  1316. qt_libdirs="$qt_libdirs $dir/lib${tdelibsuff} $dir/lib $dir"
  1317. done
  1318. if test -z "$PKG_CONFIG"; then
  1319. AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
  1320. fi
  1321. if test "$PKG_CONFIG" != "no" ; then
  1322. if $PKG_CONFIG --exists qt-mt ; then
  1323. qt_libdirs="$qt_incdirs `$PKG_CONFIG --variable=libdir qt-mt`"
  1324. fi
  1325. fi
  1326. qt_libdirs="$TQTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries"
  1327. if test ! "$ac_qt_libraries" = "NO"; then
  1328. qt_libdir=$ac_qt_libraries
  1329. else
  1330. qt_libdirs="$ac_qt_libraries $qt_libdirs"
  1331. # if the Qt was given, the chance is too big that libtqt.* doesn't exist
  1332. qt_libdir=NONE
  1333. for dir in $qt_libdirs; do
  1334. try="ls -1 $dir/${LIBTQT_GLOB}"
  1335. if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi
  1336. done
  1337. fi
  1338. for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
  1339. if test -e "$a"; then
  1340. LIBTQT="$LIBTQT ${kde_int_qt}_incremental"
  1341. break
  1342. fi
  1343. done
  1344. ac_qt_libraries="$qt_libdir"
  1345. AC_LANG_SAVE
  1346. AC_LANG_CPLUSPLUS
  1347. ac_cxxflags_safe="$CXXFLAGS"
  1348. ac_ldflags_safe="$LDFLAGS"
  1349. ac_libs_safe="$LIBS"
  1350. CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
  1351. LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
  1352. LIBS="$LIBS $LIBTQT $KDE_MT_LIBS"
  1353. KDE_PRINT_QT_PROGRAM
  1354. if AC_TRY_EVAL(ac_link) && test -s conftest; then
  1355. rm -f conftest*
  1356. else
  1357. echo "configure: failed program was:" >&AC_FD_CC
  1358. cat conftest.$ac_ext >&AC_FD_CC
  1359. ac_qt_libraries="NO"
  1360. fi
  1361. rm -f conftest*
  1362. CXXFLAGS="$ac_cxxflags_safe"
  1363. LDFLAGS="$ac_ldflags_safe"
  1364. LIBS="$ac_libs_safe"
  1365. AC_LANG_RESTORE
  1366. if test "$ac_tqt_includes" = NO || test "$ac_qt_libraries" = NO; then
  1367. ac_cv_have_qt="have_qt=no"
  1368. ac_qt_notfound=""
  1369. missing_qt_mt=""
  1370. if test "$ac_tqt_includes" = NO; then
  1371. if test "$ac_qt_libraries" = NO; then
  1372. ac_qt_notfound="(headers and libraries)";
  1373. else
  1374. ac_qt_notfound="(headers)";
  1375. fi
  1376. else
  1377. if test "x$kde_use_qt_mt" = "xyes"; then
  1378. missing_qt_mt="
  1379. Make sure that you have compiled Qt with thread support!"
  1380. ac_qt_notfound="(library $tqtlib-mt)";
  1381. else
  1382. ac_qt_notfound="(library $tqtlib)";
  1383. fi
  1384. fi
  1385. AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation!
  1386. For more details about this problem, look at the end of config.log.$missing_qt_mt])
  1387. else
  1388. have_qt="yes"
  1389. fi
  1390. ])
  1391. eval "$ac_cv_have_qt"
  1392. if test "$have_qt" != yes; then
  1393. AC_MSG_RESULT([$have_qt]);
  1394. else
  1395. ac_cv_have_qt="have_qt=yes \
  1396. ac_tqt_includes=$ac_tqt_includes ac_qt_libraries=$ac_qt_libraries"
  1397. AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_tqt_includes $USING_QT_MT])
  1398. qt_libraries="$ac_qt_libraries"
  1399. tqt_includes="$ac_tqt_includes"
  1400. fi
  1401. if test ! "$kde_qt_libs_given" = "yes" && test ! "$kde_qtver" = 3; then
  1402. KDE_CHECK_QT_DIRECT(qt_libraries= ,[])
  1403. fi
  1404. AC_SUBST(qt_libraries)
  1405. AC_SUBST(tqt_includes)
  1406. if test "$tqt_includes" = "$x_includes" || test -z "$tqt_includes"; then
  1407. TQT_INCLUDES=""
  1408. else
  1409. TQT_INCLUDES="-I$tqt_includes"
  1410. all_includes="$TQT_INCLUDES $all_includes"
  1411. fi
  1412. if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then
  1413. QT_LDFLAGS=""
  1414. else
  1415. QT_LDFLAGS="-L$qt_libraries"
  1416. all_libraries="$QT_LDFLAGS $all_libraries"
  1417. fi
  1418. test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS"
  1419. AC_SUBST(TQT_INCLUDES)
  1420. AC_SUBST(QT_LDFLAGS)
  1421. AC_PATH_TQT_MOC_UIC
  1422. KDE_CHECK_QT_JPEG
  1423. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  1424. LIB_TQT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)'
  1425. else
  1426. LIB_TQT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)'
  1427. fi
  1428. test -z "$KDE_MT_LIBS" || LIB_TQT="$LIB_TQT $KDE_MT_LIBS"
  1429. for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
  1430. if test -e "$a"; then
  1431. LIB_TQT="$LIB_TQT ${kde_int_qt}_incremental"
  1432. break
  1433. fi
  1434. done
  1435. AC_SUBST(LIB_TQT)
  1436. AC_SUBST(LIB_QPE)
  1437. AC_SUBST(kde_qtver)
  1438. ])
  1439. AC_DEFUN([AC_PATH_TQT],
  1440. [
  1441. AC_PATH_TQT_1_3
  1442. ])
  1443. AC_DEFUN([KDE_CHECK_UIC_PLUGINS],
  1444. [
  1445. AC_REQUIRE([AC_PATH_TQT_MOC_UIC])
  1446. if test x$ac_uic_supports_libpath = xyes; then
  1447. AC_MSG_CHECKING([if UIC has KDE plugins available])
  1448. AC_CACHE_VAL(kde_cv_uic_plugins,
  1449. [
  1450. cat > actest.ui << EOF
  1451. <!DOCTYPE UI><UI version="3.0" stdsetdef="1">
  1452. <class>NewConnectionDialog</class>
  1453. <widget class="QDialog">
  1454. <widget class="KLineEdit">
  1455. <property name="name">
  1456. <cstring>testInput</cstring>
  1457. </property>
  1458. </widget>
  1459. </widget>
  1460. </UI>
  1461. EOF
  1462. kde_cv_uic_plugins=no
  1463. kde_line="$UIC_PATH -L $kde_widgetdir"
  1464. if test x$ac_uic_supports_nounload = xyes; then
  1465. kde_line="$kde_line -nounload"
  1466. fi
  1467. kde_line="$kde_line -impl actest.h actest.ui > actest.cpp"
  1468. if AC_TRY_EVAL(kde_line); then
  1469. # if you're trying to debug this check and think it's incorrect,
  1470. # better check your installation. The check _is_ correct - your
  1471. # installation is not.
  1472. if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then
  1473. kde_cv_uic_plugins=yes
  1474. fi
  1475. fi
  1476. rm -f actest.ui actest.cpp
  1477. ])
  1478. AC_MSG_RESULT([$kde_cv_uic_plugins])
  1479. if test "$kde_cv_uic_plugins" != yes; then
  1480. AC_MSG_ERROR([
  1481. you need to install tdelibs first.
  1482. If you did install tdelibs, then the Qt version that is picked up by
  1483. this configure is not the same version you used to compile tdelibs.
  1484. The Qt Plugin installed by tdelibs is *ONLY* loadable if it is the
  1485. _same Qt version_, compiled with the _same compiler_ and the same Qt
  1486. configuration settings.
  1487. ])
  1488. fi
  1489. fi
  1490. ])
  1491. AC_DEFUN([KDE_CHECK_FINAL],
  1492. [
  1493. AC_ARG_ENABLE(final,
  1494. AC_HELP_STRING([--enable-final],
  1495. [build size optimized apps (experimental - needs lots of memory)]),
  1496. kde_use_final=$enableval, kde_use_final=no)
  1497. if test "x$kde_use_final" = "xyes"; then
  1498. KDE_USE_FINAL_TRUE=""
  1499. KDE_USE_FINAL_FALSE="#"
  1500. else
  1501. KDE_USE_FINAL_TRUE="#"
  1502. KDE_USE_FINAL_FALSE=""
  1503. fi
  1504. AC_SUBST(KDE_USE_FINAL_TRUE)
  1505. AC_SUBST(KDE_USE_FINAL_FALSE)
  1506. ])
  1507. AC_DEFUN([KDE_CHECK_CLOSURE],
  1508. [
  1509. AC_ARG_ENABLE(closure,
  1510. AC_HELP_STRING([--enable-closure],[delay template instantiation]),
  1511. kde_use_closure=$enableval, kde_use_closure=no)
  1512. KDE_NO_UNDEFINED=""
  1513. if test "x$kde_use_closure" = "xyes"; then
  1514. KDE_USE_CLOSURE_TRUE=""
  1515. KDE_USE_CLOSURE_FALSE="#"
  1516. # CXXFLAGS="$CXXFLAGS $REPO"
  1517. else
  1518. KDE_USE_CLOSURE_TRUE="#"
  1519. KDE_USE_CLOSURE_FALSE=""
  1520. KDE_NO_UNDEFINED=""
  1521. case $host in
  1522. *-*-linux-gnu)
  1523. KDE_CHECK_COMPILER_FLAG([Wl,--no-undefined],
  1524. [KDE_CHECK_COMPILER_FLAG([Wl,--allow-shlib-undefined],
  1525. [KDE_NO_UNDEFINED="-Wl,--no-undefined -Wl,--allow-shlib-undefined"],
  1526. [KDE_NO_UNDEFINED=""])],
  1527. [KDE_NO_UNDEFINED=""])
  1528. ;;
  1529. esac
  1530. fi
  1531. AC_SUBST(KDE_USE_CLOSURE_TRUE)
  1532. AC_SUBST(KDE_USE_CLOSURE_FALSE)
  1533. AC_SUBST(KDE_NO_UNDEFINED)
  1534. ])
  1535. dnl Check if the linker supports --enable-new-dtags and --as-needed
  1536. AC_DEFUN([KDE_CHECK_NEW_LDFLAGS],
  1537. [
  1538. AC_ARG_ENABLE(new_ldflags,
  1539. AC_HELP_STRING([--enable-new-ldflags],
  1540. [enable the new linker flags]),
  1541. kde_use_new_ldflags=$enableval,
  1542. kde_use_new_ldflags=no)
  1543. LDFLAGS_AS_NEEDED=""
  1544. LDFLAGS_NEW_DTAGS=""
  1545. if test "x$kde_use_new_ldflags" = "xyes"; then
  1546. LDFLAGS_NEW_DTAGS=""
  1547. KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags],
  1548. [LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],)
  1549. KDE_CHECK_COMPILER_FLAG([Wl,--as-needed],
  1550. [LDFLAGS_AS_NEEDED="-Wl,--as-needed"],)
  1551. fi
  1552. AC_SUBST(LDFLAGS_AS_NEEDED)
  1553. AC_SUBST(LDFLAGS_NEW_DTAGS)
  1554. ])
  1555. AC_DEFUN([KDE_CHECK_NMCHECK],
  1556. [
  1557. AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]),
  1558. kde_use_nmcheck=$enableval, kde_use_nmcheck=no)
  1559. if test "$kde_use_nmcheck" = "yes"; then
  1560. KDE_USE_NMCHECK_TRUE=""
  1561. KDE_USE_NMCHECK_FALSE="#"
  1562. else
  1563. KDE_USE_NMCHECK_TRUE="#"
  1564. KDE_USE_NMCHECK_FALSE=""
  1565. fi
  1566. AC_SUBST(KDE_USE_NMCHECK_TRUE)
  1567. AC_SUBST(KDE_USE_NMCHECK_FALSE)
  1568. ])
  1569. AC_DEFUN([KDE_EXPAND_MAKEVAR], [
  1570. savex=$exec_prefix
  1571. test "x$exec_prefix" = xNONE && exec_prefix=$prefix
  1572. tmp=$$2
  1573. while $1=`eval echo "$tmp"`; test "x$$1" != "x$tmp"; do tmp=$$1; done
  1574. exec_prefix=$savex
  1575. ])
  1576. dnl ------------------------------------------------------------------------
  1577. dnl Now, the same with KDE
  1578. dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed)
  1579. dnl and $(kde_includes) will be the kdehdrlocation (if needed)
  1580. dnl ------------------------------------------------------------------------
  1581. dnl
  1582. AC_DEFUN([AC_BASE_PATH_KDE],
  1583. [
  1584. AC_REQUIRE([KDE_CHECK_STL])
  1585. AC_REQUIRE([AC_PATH_TQT])dnl
  1586. AC_REQUIRE([KDE_CHECK_LIB64])
  1587. AC_CHECK_RPATH
  1588. AC_MSG_CHECKING([for KDE])
  1589. if test "${prefix}" != NONE; then
  1590. kde_includes=${includedir}
  1591. KDE_EXPAND_MAKEVAR(ac_kde_includes, includedir)
  1592. kde_libraries=${libdir}
  1593. KDE_EXPAND_MAKEVAR(ac_kde_libraries, libdir)
  1594. else
  1595. ac_kde_includes=
  1596. ac_kde_libraries=
  1597. kde_libraries=""
  1598. kde_includes=""
  1599. fi
  1600. AC_CACHE_VAL(ac_cv_have_kde,
  1601. [#try to guess kde locations
  1602. if test "$kde_qtver" = 1; then
  1603. kde_check_header="ksock.h"
  1604. kde_check_lib="libtdecore.la"
  1605. else
  1606. kde_check_header="ksharedptr.h"
  1607. kde_check_lib="libtdeio.la"
  1608. fi
  1609. if test -z "$1"; then
  1610. kde_incdirs="$kde_libs_prefix/include /usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/tde /usr/include /opt/trinity/include /opt/kde/include $x_includes $tqt_includes"
  1611. test -n "$TDEDIR" && kde_incdirs="$TDEDIR/include $TDEDIR/include/tde $TDEDIR $kde_incdirs"
  1612. kde_incdirs="$ac_kde_includes $kde_incdirs"
  1613. AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir)
  1614. ac_kde_includes="$kde_incdir"
  1615. if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then
  1616. AC_MSG_ERROR([
  1617. in the prefix, you've chosen, are no KDE headers installed. This will fail.
  1618. So, check this please and use another prefix!])
  1619. fi
  1620. kde_libdirs="$kde_libs_prefix/lib${tdelibsuff} /usr/lib/kde/lib${tdelibsuff} /usr/local/kde/lib${tdelibsuff} /usr/kde/lib${tdelibsuff} /usr/lib${tdelibsuff}/kde /usr/lib${tdelibsuff}/trinity /usr/lib${tdelibsuff} /usr/X11R6/lib${tdelibsuff} /usr/local/lib${tdelibsuff} /opt/trinity/lib${tdelibsuff} /opt/kde/lib${tdelibsuff} /usr/X11R6/kde/lib${tdelibsuff}"
  1621. test -n "$TDEDIR" && kde_libdirs="$TDEDIR/lib${tdelibsuff} $TDEDIR $kde_libdirs"
  1622. kde_libdirs="$ac_kde_libraries $libdir $kde_libdirs"
  1623. AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir)
  1624. ac_kde_libraries="$kde_libdir"
  1625. kde_widgetdir=NO
  1626. dnl this might be somewhere else
  1627. AC_FIND_FILE("trinity/plugins/designer/tdewidgets.la", $kde_libdirs, kde_widgetdir)
  1628. if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then
  1629. AC_MSG_ERROR([
  1630. in the prefix, you've chosen, are no KDE libraries installed. This will fail.
  1631. So, check this please and use another prefix!])
  1632. fi
  1633. if test -n "$kde_widgetdir" && test ! -r "$kde_widgetdir/trinity/plugins/designer/tdewidgets.la"; then
  1634. AC_MSG_ERROR([
  1635. I can't find the designer plugins. These are required and should have been installed
  1636. by tdelibs])
  1637. fi
  1638. if test -n "$kde_widgetdir"; then
  1639. kde_widgetdir="$kde_widgetdir/trinity/plugins/designer"
  1640. fi
  1641. if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO || test "$kde_widgetdir" = NO; then
  1642. ac_cv_have_kde="have_kde=no"
  1643. else
  1644. ac_cv_have_kde="have_kde=yes \
  1645. ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
  1646. fi
  1647. else dnl test -z $1, e.g. from tdelibs
  1648. ac_cv_have_kde="have_kde=no"
  1649. fi
  1650. ])dnl
  1651. eval "$ac_cv_have_kde"
  1652. if test "$have_kde" != "yes"; then
  1653. if test "${prefix}" = NONE; then
  1654. ac_kde_prefix="$ac_default_prefix"
  1655. else
  1656. ac_kde_prefix="$prefix"
  1657. fi
  1658. if test "$exec_prefix" = NONE; then
  1659. ac_kde_exec_prefix="$ac_kde_prefix"
  1660. AC_MSG_RESULT([will be installed in $ac_kde_prefix])
  1661. else
  1662. ac_kde_exec_prefix="$exec_prefix"
  1663. AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix])
  1664. fi
  1665. kde_libraries="${libdir}"
  1666. kde_includes="${includedir}"
  1667. else
  1668. ac_cv_have_kde="have_kde=yes \
  1669. ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries"
  1670. AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes])
  1671. kde_libraries="$ac_kde_libraries"
  1672. kde_includes="$ac_kde_includes"
  1673. fi
  1674. AC_SUBST(kde_libraries)
  1675. AC_SUBST(kde_includes)
  1676. if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$tqt_includes" || test "$kde_includes" = "/usr/include"; then
  1677. KDE_INCLUDES=""
  1678. else
  1679. KDE_INCLUDES="-I$kde_includes"
  1680. all_includes="$KDE_INCLUDES $all_includes"
  1681. fi
  1682. KDE_DEFAULT_CXXFLAGS="-DTQT_NO_ASCII_CAST -DTQT_NO_STL -DTQT_NO_COMPAT -DTQT_NO_TRANSLATION"
  1683. KDE_LDFLAGS="-L$kde_libraries"
  1684. if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then
  1685. all_libraries="$KDE_LDFLAGS $all_libraries"
  1686. fi
  1687. AC_SUBST(KDE_LDFLAGS)
  1688. AC_SUBST(KDE_INCLUDES)
  1689. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  1690. all_libraries="$all_libraries $USER_LDFLAGS"
  1691. all_includes="$all_includes $USER_INCLUDES"
  1692. AC_SUBST(all_includes)
  1693. AC_SUBST(all_libraries)
  1694. if test -z "$1"; then
  1695. KDE_CHECK_UIC_PLUGINS
  1696. fi
  1697. ac_kde_libraries="$kde_libdir"
  1698. AC_SUBST(AUTODIRS)
  1699. ])
  1700. AC_DEFUN([KDE_CHECK_EXTRA_LIBS],
  1701. [
  1702. AC_MSG_CHECKING(for extra includes)
  1703. AC_ARG_WITH(extra-includes,AC_HELP_STRING([--with-extra-includes=DIR],[adds non standard include paths]),
  1704. kde_use_extra_includes="$withval",
  1705. kde_use_extra_includes=NONE
  1706. )
  1707. kde_extra_includes=
  1708. if test -n "$kde_use_extra_includes" && \
  1709. test "$kde_use_extra_includes" != "NONE"; then
  1710. ac_save_ifs=$IFS
  1711. IFS=':'
  1712. for dir in $kde_use_extra_includes; do
  1713. kde_extra_includes="$kde_extra_includes $dir"
  1714. USER_INCLUDES="$USER_INCLUDES -I$dir"
  1715. done
  1716. IFS=$ac_save_ifs
  1717. kde_use_extra_includes="added"
  1718. else
  1719. kde_use_extra_includes="no"
  1720. fi
  1721. AC_SUBST(USER_INCLUDES)
  1722. AC_MSG_RESULT($kde_use_extra_includes)
  1723. kde_extra_libs=
  1724. AC_MSG_CHECKING(for extra libs)
  1725. AC_ARG_WITH(extra-libs,AC_HELP_STRING([--with-extra-libs=DIR],[adds non standard library paths]),
  1726. kde_use_extra_libs=$withval,
  1727. kde_use_extra_libs=NONE
  1728. )
  1729. if test -n "$kde_use_extra_libs" && \
  1730. test "$kde_use_extra_libs" != "NONE"; then
  1731. ac_save_ifs=$IFS
  1732. IFS=':'
  1733. for dir in $kde_use_extra_libs; do
  1734. kde_extra_libs="$kde_extra_libs $dir"
  1735. KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir"
  1736. USER_LDFLAGS="$USER_LDFLAGS -L$dir"
  1737. done
  1738. IFS=$ac_save_ifs
  1739. kde_use_extra_libs="added"
  1740. else
  1741. kde_use_extra_libs="no"
  1742. fi
  1743. AC_SUBST(USER_LDFLAGS)
  1744. AC_MSG_RESULT($kde_use_extra_libs)
  1745. ])
  1746. AC_DEFUN([KDE_1_CHECK_PATH_HEADERS],
  1747. [
  1748. AC_MSG_CHECKING([for KDE headers installed])
  1749. AC_LANG_SAVE
  1750. AC_LANG_CPLUSPLUS
  1751. cat > conftest.$ac_ext <<EOF
  1752. #ifdef STDC_HEADERS
  1753. # include <stdlib.h>
  1754. #endif
  1755. #include <stdio.h>
  1756. #include "confdefs.h"
  1757. #include <kapp.h>
  1758. int main() {
  1759. printf("kde_htmldir=\\"%s\\"\n", TDEApplication::kde_htmldir().data());
  1760. printf("kde_appsdir=\\"%s\\"\n", TDEApplication::kde_appsdir().data());
  1761. printf("kde_icondir=\\"%s\\"\n", TDEApplication::kde_icondir().data());
  1762. printf("kde_sounddir=\\"%s\\"\n", TDEApplication::kde_sounddir().data());
  1763. printf("kde_datadir=\\"%s\\"\n", TDEApplication::kde_datadir().data());
  1764. printf("kde_locale=\\"%s\\"\n", TDEApplication::kde_localedir().data());
  1765. printf("kde_cgidir=\\"%s\\"\n", TDEApplication::kde_cgidir().data());
  1766. printf("kde_confdir=\\"%s\\"\n", TDEApplication::kde_configdir().data());
  1767. printf("kde_mimedir=\\"%s\\"\n", TDEApplication::kde_mimedir().data());
  1768. printf("kde_toolbardir=\\"%s\\"\n", TDEApplication::kde_toolbardir().data());
  1769. printf("kde_wallpaperdir=\\"%s\\"\n",
  1770. TDEApplication::kde_wallpaperdir().data());
  1771. printf("kde_bindir=\\"%s\\"\n", TDEApplication::kde_bindir().data());
  1772. printf("kde_partsdir=\\"%s\\"\n", TDEApplication::kde_partsdir().data());
  1773. printf("kde_servicesdir=\\"/tmp/dummy\\"\n");
  1774. printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n");
  1775. printf("kde_moduledir=\\"/tmp/dummy\\"\n");
  1776. printf("kde_styledir=\\"/tmp/dummy\\"\n");
  1777. printf("kde_widgetdir=\\"/tmp/dummy\\"\n");
  1778. printf("xdg_appsdir=\\"/tmp/dummy\\"\n");
  1779. printf("xdg_menudir=\\"/tmp/dummy\\"\n");
  1780. printf("xdg_directorydir=\\"/tmp/dummy\\"\n");
  1781. printf("kde_kcfgdir=\\"/tmp/dummy\\"\n");
  1782. return 0;
  1783. }
  1784. EOF
  1785. ac_save_CPPFLAGS=$CPPFLAGS
  1786. CPPFLAGS="$all_includes $CPPFLAGS"
  1787. if AC_TRY_EVAL(ac_compile); then
  1788. AC_MSG_RESULT(yes)
  1789. else
  1790. AC_MSG_ERROR([your system is not able to compile a small KDE application!
  1791. Check, if you installed the KDE header files correctly.
  1792. For more details about this problem, look at the end of config.log.])
  1793. fi
  1794. CPPFLAGS=$ac_save_CPPFLAGS
  1795. AC_LANG_RESTORE
  1796. ])
  1797. AC_DEFUN([KDE_CHECK_KDEQTADDON],
  1798. [
  1799. AC_MSG_CHECKING(for kde-qt-addon)
  1800. AC_CACHE_VAL(kde_cv_have_kdetqtaddon,
  1801. [
  1802. kde_ldflags_safe="$LDFLAGS"
  1803. kde_libs_safe="$LIBS"
  1804. kde_cxxflags_safe="$CXXFLAGS"
  1805. LIBS="-lkde-qt-addon $LIBTQT $LIBS"
  1806. CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/tde $all_includes"
  1807. LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS"
  1808. AC_TRY_LINK([
  1809. #include <qdom.h>
  1810. ],
  1811. [
  1812. QDomDocument doc;
  1813. ],
  1814. kde_cv_have_kdetqtaddon=yes,
  1815. kde_cv_have_kdetqtaddon=no
  1816. )
  1817. LDFLAGS=$kde_ldflags_safe
  1818. LIBS=$kde_libs_safe
  1819. CXXFLAGS=$kde_cxxflags_safe
  1820. ])
  1821. AC_MSG_RESULT($kde_cv_have_kdetqtaddon)
  1822. if test "$kde_cv_have_kdetqtaddon" = "no"; then
  1823. AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first.
  1824. It is a separate package (and CVS module) named kde-qt-addon.])
  1825. fi
  1826. ])
  1827. AC_DEFUN([KDE_CREATE_LIBS_ALIASES],
  1828. [
  1829. AC_REQUIRE([KDE_MISC_TESTS])
  1830. AC_REQUIRE([KDE_CHECK_LIBDL])
  1831. AC_REQUIRE([K_PATH_X])
  1832. if test $kde_qtver = 3; then
  1833. case $host in
  1834. *cygwin*) lib_kded="-ltdeinit_kded" ;;
  1835. *) lib_kded="" ;;
  1836. esac
  1837. AC_SUBST(LIB_KDED, $lib_kded)
  1838. AC_SUBST(LIB_TDECORE, "-ltdecore")
  1839. AC_SUBST(LIB_TDEUI, "-ltdeui")
  1840. AC_SUBST(LIB_TDEIO, "-ltdeio")
  1841. AC_SUBST(LIB_KJS, "-lkjs")
  1842. AC_SUBST(LIB_SMB, "-lsmb")
  1843. AC_SUBST(LIB_KAB, "-lkab")
  1844. AC_SUBST(LIB_TDEABC, "-ltdeabc")
  1845. AC_SUBST(LIB_TDEHTML, "-ltdehtml")
  1846. AC_SUBST(LIB_TDESPELL, "-ltdespell")
  1847. AC_SUBST(LIB_TDEPARTS, "-ltdeparts")
  1848. AC_SUBST(LIB_TDEPRINT, "-ltdeprint")
  1849. AC_SUBST(LIB_TDEUTILS, "-ltdeutils")
  1850. AC_SUBST(LIB_TDEPIM, "-ltdepim")
  1851. AC_SUBST(LIB_TDEIMPROXY, "-ltdeimproxy")
  1852. AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff")
  1853. AC_SUBST(LIB_TDEDNSSD, "-ltdednssd")
  1854. AC_SUBST(LIB_TDEUNITTEST, "-ltdeunittest")
  1855. # these are for backward compatibility
  1856. AC_SUBST(LIB_TDESYCOCA, "-ltdeio")
  1857. AC_SUBST(LIB_TDEFILE, "-ltdeio")
  1858. elif test $kde_qtver = 2; then
  1859. AC_SUBST(LIB_TDECORE, "-ltdecore")
  1860. AC_SUBST(LIB_TDEUI, "-ltdeui")
  1861. AC_SUBST(LIB_TDEIO, "-ltdeio")
  1862. AC_SUBST(LIB_TDESYCOCA, "-ltdesycoca")
  1863. AC_SUBST(LIB_SMB, "-lsmb")
  1864. AC_SUBST(LIB_TDEFILE, "-ltdefile")
  1865. AC_SUBST(LIB_KAB, "-lkab")
  1866. AC_SUBST(LIB_TDEHTML, "-ltdehtml")
  1867. AC_SUBST(LIB_TDESPELL, "-ltdespell")
  1868. AC_SUBST(LIB_TDEPARTS, "-ltdeparts")
  1869. AC_SUBST(LIB_TDEPRINT, "-ltdeprint")
  1870. else
  1871. AC_SUBST(LIB_TDECORE, "-ltdecore -lXext $(LIB_TQT)")
  1872. AC_SUBST(LIB_TDEUI, "-ltdeui $(LIB_TDECORE)")
  1873. AC_SUBST(LIB_KFM, "-lkfm $(LIB_TDECORE)")
  1874. AC_SUBST(LIB_TDEFILE, "-ltdefile $(LIB_KFM) $(LIB_TDEUI)")
  1875. AC_SUBST(LIB_KAB, "-lkab $(LIB_KIMGIO) $(LIB_TDECORE)")
  1876. fi
  1877. ])
  1878. AC_DEFUN([AC_PATH_KDE],
  1879. [
  1880. AC_BASE_PATH_KDE
  1881. AC_ARG_ENABLE(path-check,AC_HELP_STRING([--disable-path-check],[don't try to find out, where to install]),
  1882. [
  1883. if test "$enableval" = "no";
  1884. then ac_use_path_checking="default"
  1885. else ac_use_path_checking=""
  1886. fi
  1887. ],
  1888. [
  1889. if test "$kde_qtver" = 1;
  1890. then ac_use_path_checking=""
  1891. else ac_use_path_checking="default"
  1892. fi
  1893. ]
  1894. )
  1895. AC_CREATE_KFSSTND($ac_use_path_checking)
  1896. AC_SUBST_KFSSTND
  1897. KDE_CREATE_LIBS_ALIASES
  1898. ])
  1899. dnl KDE_CHECK_FUNC_EXT(<func>, [headers], [sample-use], [C prototype], [autoheader define], [call if found])
  1900. AC_DEFUN([KDE_CHECK_FUNC_EXT],
  1901. [
  1902. AC_MSG_CHECKING(for $1)
  1903. AC_CACHE_VAL(kde_cv_func_$1,
  1904. [
  1905. AC_LANG_SAVE
  1906. AC_LANG_CPLUSPLUS
  1907. save_CXXFLAGS="$CXXFLAGS"
  1908. kde_safe_LIBS="$LIBS"
  1909. LIBS="$LIBS $X_EXTRA_LIBS"
  1910. if test "$GXX" = "yes"; then
  1911. CXXFLAGS="$CXXFLAGS -pedantic-errors"
  1912. fi
  1913. AC_TRY_COMPILE([
  1914. $2
  1915. ],
  1916. [
  1917. $3
  1918. ],
  1919. kde_cv_func_$1=yes,
  1920. kde_cv_func_$1=no)
  1921. CXXFLAGS="$save_CXXFLAGS"
  1922. LIBS="$kde_safe_LIBS"
  1923. AC_LANG_RESTORE
  1924. ])
  1925. AC_MSG_RESULT($kde_cv_func_$1)
  1926. AC_MSG_CHECKING([if $1 needs custom prototype])
  1927. AC_CACHE_VAL(kde_cv_proto_$1,
  1928. [
  1929. if test "x$kde_cv_func_$1" = xyes; then
  1930. kde_cv_proto_$1=no
  1931. else
  1932. case "$1" in
  1933. setenv|unsetenv|usleep|random|srandom|seteuid|mkstemps|mkstemp|revoke|vsnprintf|strlcpy|strlcat)
  1934. kde_cv_proto_$1="yes - in libtdefakes"
  1935. ;;
  1936. *)
  1937. kde_cv_proto_$1=unknown
  1938. ;;
  1939. esac
  1940. fi
  1941. if test "x$kde_cv_proto_$1" = xunknown; then
  1942. AC_LANG_SAVE
  1943. AC_LANG_CPLUSPLUS
  1944. kde_safe_libs=$LIBS
  1945. LIBS="$LIBS $X_EXTRA_LIBS"
  1946. AC_TRY_LINK([
  1947. $2
  1948. extern "C" $4;
  1949. ],
  1950. [
  1951. $3
  1952. ],
  1953. [ kde_cv_func_$1=yes
  1954. kde_cv_proto_$1=yes ],
  1955. [kde_cv_proto_$1="$1 unavailable"]
  1956. )
  1957. LIBS=$kde_safe_libs
  1958. AC_LANG_RESTORE
  1959. fi
  1960. ])
  1961. AC_MSG_RESULT($kde_cv_proto_$1)
  1962. if test "x$kde_cv_func_$1" = xyes; then
  1963. AC_DEFINE(HAVE_$5, 1, [Define if you have $1])
  1964. $6
  1965. fi
  1966. if test "x$kde_cv_proto_$1" = xno; then
  1967. AC_DEFINE(HAVE_$5_PROTO, 1,
  1968. [Define if you have the $1 prototype])
  1969. fi
  1970. AH_VERBATIM([_HAVE_$5_PROTO],
  1971. [
  1972. #if !defined(HAVE_$5_PROTO)
  1973. #ifdef __cplusplus
  1974. extern "C" {
  1975. #endif
  1976. $4;
  1977. #ifdef __cplusplus
  1978. }
  1979. #endif
  1980. #endif
  1981. ])
  1982. ])
  1983. AC_DEFUN([AC_CHECK_SETENV],
  1984. [
  1985. KDE_CHECK_FUNC_EXT(setenv, [
  1986. #include <stdlib.h>
  1987. ],
  1988. [setenv("VAR", "VALUE", 1);],
  1989. [int setenv (const char *, const char *, int)],
  1990. [SETENV])
  1991. ])
  1992. AC_DEFUN([AC_CHECK_UNSETENV],
  1993. [
  1994. KDE_CHECK_FUNC_EXT(unsetenv, [
  1995. #include <stdlib.h>
  1996. ],
  1997. [unsetenv("VAR");],
  1998. [void unsetenv (const char *)],
  1999. [UNSETENV])
  2000. ])
  2001. AC_DEFUN([AC_CHECK_GETDOMAINNAME],
  2002. [
  2003. KDE_CHECK_FUNC_EXT(getdomainname, [
  2004. #include <stdlib.h>
  2005. #include <unistd.h>
  2006. #include <netdb.h>
  2007. ],
  2008. [
  2009. char buffer[200];
  2010. getdomainname(buffer, 200);
  2011. ],
  2012. [#include <sys/types.h>
  2013. int getdomainname (char *, size_t)],
  2014. [GETDOMAINNAME])
  2015. ])
  2016. AC_DEFUN([AC_CHECK_GETHOSTNAME],
  2017. [
  2018. KDE_CHECK_FUNC_EXT(gethostname, [
  2019. #include <stdlib.h>
  2020. #include <unistd.h>
  2021. ],
  2022. [
  2023. char buffer[200];
  2024. gethostname(buffer, 200);
  2025. ],
  2026. [int gethostname (char *, unsigned int)],
  2027. [GETHOSTNAME])
  2028. ])
  2029. AC_DEFUN([AC_CHECK_USLEEP],
  2030. [
  2031. KDE_CHECK_FUNC_EXT(usleep, [
  2032. #include <unistd.h>
  2033. ],
  2034. [
  2035. usleep(200);
  2036. ],
  2037. [int usleep (unsigned int)],
  2038. [USLEEP])
  2039. ])
  2040. AC_DEFUN([AC_CHECK_RANDOM],
  2041. [
  2042. KDE_CHECK_FUNC_EXT(random, [
  2043. #include <stdlib.h>
  2044. ],
  2045. [
  2046. random();
  2047. ],
  2048. [long int random(void)],
  2049. [RANDOM])
  2050. KDE_CHECK_FUNC_EXT(srandom, [
  2051. #include <stdlib.h>
  2052. ],
  2053. [
  2054. srandom(27);
  2055. ],
  2056. [void srandom(unsigned int)],
  2057. [SRANDOM])
  2058. ])
  2059. AC_DEFUN([AC_CHECK_INITGROUPS],
  2060. [
  2061. KDE_CHECK_FUNC_EXT(initgroups, [
  2062. #include <sys/types.h>
  2063. #include <unistd.h>
  2064. #include <grp.h>
  2065. ],
  2066. [
  2067. char buffer[200];
  2068. initgroups(buffer, 27);
  2069. ],
  2070. [int initgroups(const char *, gid_t)],
  2071. [INITGROUPS])
  2072. ])
  2073. AC_DEFUN([AC_CHECK_MKSTEMPS],
  2074. [
  2075. KDE_CHECK_FUNC_EXT(mkstemps, [
  2076. #include <stdlib.h>
  2077. #include <unistd.h>
  2078. ],
  2079. [
  2080. mkstemps("/tmp/aaaXXXXXX", 6);
  2081. ],
  2082. [int mkstemps(char *, int)],
  2083. [MKSTEMPS])
  2084. ])
  2085. AC_DEFUN([AC_CHECK_MKSTEMP],
  2086. [
  2087. KDE_CHECK_FUNC_EXT(mkstemp, [
  2088. #include <stdlib.h>
  2089. #include <unistd.h>
  2090. ],
  2091. [
  2092. mkstemp("/tmp/aaaXXXXXX");
  2093. ],
  2094. [int mkstemp(char *)],
  2095. [MKSTEMP])
  2096. ])
  2097. AC_DEFUN([AC_CHECK_MKDTEMP],
  2098. [
  2099. KDE_CHECK_FUNC_EXT(mkdtemp, [
  2100. #include <stdlib.h>
  2101. #include <unistd.h>
  2102. ],
  2103. [
  2104. mkdtemp("/tmp/aaaXXXXXX");
  2105. ],
  2106. [char *mkdtemp(char *)],
  2107. [MKDTEMP])
  2108. ])
  2109. AC_DEFUN([AC_CHECK_RES_INIT],
  2110. [
  2111. AC_MSG_CHECKING([if res_init needs -lresolv])
  2112. kde_libs_safe="$LIBS"
  2113. LIBS="$LIBS $X_EXTRA_LIBS -lresolv"
  2114. AC_TRY_LINK(
  2115. [
  2116. #include <sys/types.h>
  2117. #include <netinet/in.h>
  2118. #include <arpa/nameser.h>
  2119. #include <resolv.h>
  2120. ],
  2121. [
  2122. res_init();
  2123. ],
  2124. [
  2125. LIBRESOLV="-lresolv"
  2126. AC_MSG_RESULT(yes)
  2127. AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function])
  2128. ],
  2129. [ AC_MSG_RESULT(no) ]
  2130. )
  2131. LIBS=$kde_libs_safe
  2132. AC_SUBST(LIBRESOLV)
  2133. KDE_CHECK_FUNC_EXT(res_init,
  2134. [
  2135. #include <sys/types.h>
  2136. #include <netinet/in.h>
  2137. #include <arpa/nameser.h>
  2138. #include <resolv.h>
  2139. ],
  2140. [res_init()],
  2141. [int res_init(void)],
  2142. [RES_INIT])
  2143. ])
  2144. AC_DEFUN([AC_CHECK_STRLCPY],
  2145. [
  2146. KDE_CHECK_FUNC_EXT(strlcpy, [
  2147. #include <string.h>
  2148. ],
  2149. [ char buf[20];
  2150. strlcpy(buf, "KDE function test", sizeof(buf));
  2151. ],
  2152. [unsigned long strlcpy(char*, const char*, unsigned long)],
  2153. [STRLCPY])
  2154. ])
  2155. AC_DEFUN([AC_CHECK_STRLCAT],
  2156. [
  2157. KDE_CHECK_FUNC_EXT(strlcat, [
  2158. #include <string.h>
  2159. ],
  2160. [ char buf[20];
  2161. buf[0]='\0';
  2162. strlcat(buf, "KDE function test", sizeof(buf));
  2163. ],
  2164. [unsigned long strlcat(char*, const char*, unsigned long)],
  2165. [STRLCAT])
  2166. ])
  2167. AC_DEFUN([AC_CHECK_RES_QUERY],
  2168. [
  2169. KDE_CHECK_FUNC_EXT(res_query, [
  2170. #include <sys/types.h>
  2171. #include <netinet/in.h>
  2172. #include <arpa/nameser.h>
  2173. #include <resolv.h>
  2174. #include <netdb.h>
  2175. ],
  2176. [
  2177. res_query(NULL, 0, 0, NULL, 0);
  2178. ],
  2179. [int res_query(const char *, int, int, unsigned char *, int)],
  2180. [RES_QUERY])
  2181. ])
  2182. AC_DEFUN([AC_CHECK_DN_SKIPNAME],
  2183. [
  2184. KDE_CHECK_FUNC_EXT(dn_skipname, [
  2185. #include <sys/types.h>
  2186. #include <netinet/in.h>
  2187. #include <arpa/nameser.h>
  2188. #include <resolv.h>
  2189. ],
  2190. [
  2191. dn_skipname (NULL, NULL);
  2192. ],
  2193. [int dn_skipname (unsigned char *, unsigned char *)],
  2194. [DN_SKIPNAME])
  2195. ])
  2196. AC_DEFUN([AC_FIND_GIF],
  2197. [AC_MSG_CHECKING([for giflib])
  2198. AC_CACHE_VAL(ac_cv_lib_gif,
  2199. [ac_save_LIBS="$LIBS"
  2200. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  2201. LIBS="$all_libraries -lgif -lX11 $LIBSOCKET"
  2202. else
  2203. LIBS="$all_libraries -lgif"
  2204. fi
  2205. AC_TRY_LINK(dnl
  2206. [
  2207. #ifdef __cplusplus
  2208. extern "C" {
  2209. #endif
  2210. int GifLastError(void);
  2211. #ifdef __cplusplus
  2212. }
  2213. #endif
  2214. /* We use char because int might match the return type of a gcc2
  2215. builtin and then its argument prototype would still apply. */
  2216. ],
  2217. [return GifLastError();],
  2218. eval "ac_cv_lib_gif=yes",
  2219. eval "ac_cv_lib_gif=no")
  2220. LIBS="$ac_save_LIBS"
  2221. ])dnl
  2222. if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then
  2223. AC_MSG_RESULT(yes)
  2224. AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif])
  2225. else
  2226. AC_MSG_ERROR(You need giflib30. Please install the tdesupport package)
  2227. fi
  2228. ])
  2229. AC_DEFUN([KDE_FIND_JPEG_HELPER],
  2230. [
  2231. AC_MSG_CHECKING([for libjpeg$2])
  2232. AC_CACHE_VAL(ac_cv_lib_jpeg_$1,
  2233. [
  2234. ac_save_LIBS="$LIBS"
  2235. LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm"
  2236. ac_save_CFLAGS="$CFLAGS"
  2237. CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
  2238. AC_TRY_LINK(
  2239. [
  2240. #ifdef __cplusplus
  2241. extern "C" {
  2242. #endif
  2243. void jpeg_CreateDecompress();
  2244. #ifdef __cplusplus
  2245. }
  2246. #endif
  2247. ],
  2248. [jpeg_CreateDecompress();],
  2249. eval "ac_cv_lib_jpeg_$1=-ljpeg$2",
  2250. eval "ac_cv_lib_jpeg_$1=no")
  2251. LIBS="$ac_save_LIBS"
  2252. CFLAGS="$ac_save_CFLAGS"
  2253. ])
  2254. if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then
  2255. LIBJPEG="$ac_cv_lib_jpeg_$1"
  2256. AC_MSG_RESULT($ac_cv_lib_jpeg_$1)
  2257. else
  2258. AC_MSG_RESULT(no)
  2259. $3
  2260. fi
  2261. ])
  2262. AC_DEFUN([AC_FIND_JPEG],
  2263. [
  2264. dnl first look for libraries
  2265. KDE_FIND_JPEG_HELPER(6b, 6b,
  2266. KDE_FIND_JPEG_HELPER(normal, [],
  2267. [
  2268. LIBJPEG=
  2269. ]
  2270. )
  2271. )
  2272. dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h
  2273. dnl requires system dependent includes loaded before it)
  2274. jpeg_incdirs="$includedir /usr/include /usr/local/include $kde_extra_includes"
  2275. AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir)
  2276. test "x$jpeg_incdir" = xNO && jpeg_incdir=
  2277. dnl if headers _and_ libraries are missing, this is no error, and we
  2278. dnl continue with a warning (the user will get no jpeg support in tdehtml)
  2279. dnl if only one is missing, it means a configuration error, but we still
  2280. dnl only warn
  2281. if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then
  2282. AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg])
  2283. else
  2284. if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then
  2285. AC_MSG_WARN([
  2286. There is an installation error in jpeg support. You seem to have only one
  2287. of either the headers _or_ the libraries installed. You may need to either
  2288. provide correct --with-extra-... options, or the development package of
  2289. libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/
  2290. Disabling JPEG support.
  2291. ])
  2292. else
  2293. AC_MSG_WARN([libjpeg not found. disable JPEG support.])
  2294. fi
  2295. jpeg_incdir=
  2296. LIBJPEG=
  2297. fi
  2298. AC_SUBST(LIBJPEG)
  2299. AH_VERBATIM(_AC_CHECK_JPEG,
  2300. [/*
  2301. * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
  2302. * headers and I'm too lazy to write a configure test as long as only
  2303. * unixware is related
  2304. */
  2305. #ifdef _UNIXWARE
  2306. #define HAVE_BOOLEAN
  2307. #endif
  2308. ])
  2309. ])
  2310. AC_DEFUN([KDE_CHECK_QT_JPEG],
  2311. [
  2312. if test -n "$LIBJPEG"; then
  2313. AC_MSG_CHECKING([if Qt needs $LIBJPEG])
  2314. AC_CACHE_VAL(kde_cv_qt_jpeg,
  2315. [
  2316. AC_LANG_SAVE
  2317. AC_LANG_CPLUSPLUS
  2318. ac_save_LIBS="$LIBS"
  2319. LIBS="$all_libraries $USER_LDFLAGS $LIBTQT"
  2320. LIBS=`echo $LIBS | sed "s/$LIBJPEG//"`
  2321. ac_save_CXXFLAGS="$CXXFLAGS"
  2322. CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
  2323. AC_TRY_LINK(
  2324. [#include <qapplication.h>],
  2325. [
  2326. int argc;
  2327. char** argv;
  2328. QApplication app(argc, argv);],
  2329. eval "kde_cv_qt_jpeg=no",
  2330. eval "kde_cv_qt_jpeg=yes")
  2331. LIBS="$ac_save_LIBS"
  2332. CXXFLAGS="$ac_save_CXXFLAGS"
  2333. AC_LANG_RESTORE
  2334. fi
  2335. ])
  2336. if eval "test ! \"`echo $kde_cv_qt_jpeg`\" = no"; then
  2337. AC_MSG_RESULT(yes)
  2338. LIBJPEG_QT='$(LIBJPEG)'
  2339. else
  2340. AC_MSG_RESULT(no)
  2341. LIBJPEG_QT=
  2342. fi
  2343. ])
  2344. AC_DEFUN([AC_FIND_ZLIB],
  2345. [
  2346. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  2347. AC_MSG_CHECKING([for libz])
  2348. AC_CACHE_VAL(ac_cv_lib_z,
  2349. [
  2350. kde_save_LIBS="$LIBS"
  2351. LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET"
  2352. kde_save_CFLAGS="$CFLAGS"
  2353. CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
  2354. AC_TRY_LINK(dnl
  2355. [
  2356. #include<zlib.h>
  2357. #include<string.h>
  2358. ],
  2359. [
  2360. char buf[42];
  2361. gzFile f = (gzFile) 0;
  2362. /* this would segfault.. but we only link, don't run */
  2363. (void) gzgets(f, buf, sizeof(buf));
  2364. return (strcmp(zlibVersion(), ZLIB_VERSION) == 0);
  2365. ],
  2366. eval "ac_cv_lib_z='-lz'",
  2367. eval "ac_cv_lib_z=no")
  2368. LIBS="$kde_save_LIBS"
  2369. CFLAGS="$kde_save_CFLAGS"
  2370. ])dnl
  2371. if test ! "$ac_cv_lib_z" = no; then
  2372. AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz])
  2373. LIBZ="$ac_cv_lib_z"
  2374. AC_MSG_RESULT($ac_cv_lib_z)
  2375. else
  2376. AC_MSG_ERROR(not found.
  2377. Possibly configure picks up an outdated version
  2378. installed by XFree86. Remove it from your system.
  2379. Check your installation and look into config.log)
  2380. LIBZ=""
  2381. fi
  2382. AC_SUBST(LIBZ)
  2383. ])
  2384. AC_DEFUN([KDE_TRY_TIFFLIB],
  2385. [
  2386. AC_MSG_CHECKING([for libtiff $1])
  2387. AC_CACHE_VAL(kde_cv_libtiff_$1,
  2388. [
  2389. AC_LANG_SAVE
  2390. AC_LANG_CPLUSPLUS
  2391. kde_save_LIBS="$LIBS"
  2392. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  2393. LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm"
  2394. else
  2395. LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm"
  2396. fi
  2397. kde_save_CXXFLAGS="$CXXFLAGS"
  2398. CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
  2399. AC_TRY_LINK(dnl
  2400. [
  2401. #include<tiffio.h>
  2402. ],
  2403. [return (TIFFOpen( "", "r") == 0); ],
  2404. [
  2405. kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ"
  2406. ], [
  2407. kde_cv_libtiff_$1=no
  2408. ])
  2409. LIBS="$kde_save_LIBS"
  2410. CXXFLAGS="$kde_save_CXXFLAGS"
  2411. AC_LANG_RESTORE
  2412. ])
  2413. if test "$kde_cv_libtiff_$1" = "no"; then
  2414. AC_MSG_RESULT(no)
  2415. LIBTIFF=""
  2416. $3
  2417. else
  2418. LIBTIFF="$kde_cv_libtiff_$1"
  2419. AC_MSG_RESULT(yes)
  2420. AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff])
  2421. $2
  2422. fi
  2423. ])
  2424. AC_DEFUN([AC_FIND_TIFF],
  2425. [
  2426. AC_REQUIRE([K_PATH_X])
  2427. AC_REQUIRE([AC_FIND_ZLIB])
  2428. AC_REQUIRE([AC_FIND_JPEG])
  2429. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  2430. KDE_TRY_TIFFLIB(tiff, [],
  2431. KDE_TRY_TIFFLIB(tiff34))
  2432. AC_SUBST(LIBTIFF)
  2433. ])
  2434. AC_DEFUN([KDE_FIND_LIBEXR],
  2435. [
  2436. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  2437. AC_REQUIRE([AC_FIND_ZLIB])
  2438. AC_CACHE_VAL(ac_cv_libexr,
  2439. [
  2440. if test -z "$PKG_CONFIG"; then
  2441. AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
  2442. fi
  2443. AC_MSG_CHECKING([for OpenEXR libraries])
  2444. if test "$PKG_CONFIG" = "no" ; then
  2445. AC_MSG_RESULT(no)
  2446. echo "*** The pkg-config script could not be found. Make sure it is"
  2447. echo "*** in your path, or set the PKG_CONFIG environment variable"
  2448. echo "*** to the full path to pkg-config."
  2449. echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
  2450. else
  2451. if ! $PKG_CONFIG --exists OpenEXR ; then
  2452. AC_MSG_RESULT(no)
  2453. EXRSTATUS=no
  2454. else
  2455. if ! $PKG_CONFIG --atleast-version="1.1.1" OpenEXR ; then
  2456. AC_MSG_RESULT(no)
  2457. EXRSTATUS=old
  2458. else
  2459. kde_save_LIBS="$LIBS"
  2460. LIBS="$LIBS $all_libraries $USER_LDFLAGS `pkg-config --libs OpenEXR` $LIBZ"
  2461. AC_LANG_SAVE
  2462. AC_LANG_CPLUSPLUS
  2463. kde_save_CXXFLAGS="$CXXFLAGS"
  2464. EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR`
  2465. CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS"
  2466. AC_TRY_LINK(dnl
  2467. [
  2468. #include <ImfRgbaFile.h>
  2469. ],
  2470. [
  2471. using namespace Imf;
  2472. RgbaInputFile file ("dummy");
  2473. return 0;
  2474. ],
  2475. eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'",
  2476. eval "ac_cv_libexr=no"
  2477. )
  2478. LIBS="$kde_save_LIBS"
  2479. CXXFLAGS="$kde_save_CXXFLAGS"
  2480. AC_LANG_RESTORE
  2481. ])dnl
  2482. if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then
  2483. AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR])
  2484. LIB_EXR="$ac_cv_libexr"
  2485. AC_MSG_RESULT($ac_cv_libexr)
  2486. else
  2487. AC_MSG_RESULT(no)
  2488. LIB_EXR=""
  2489. fi
  2490. fi
  2491. fi
  2492. fi
  2493. AC_SUBST(LIB_EXR)
  2494. AC_SUBST(EXR_FLAGS)
  2495. ])
  2496. AC_DEFUN([AC_FIND_PNG],
  2497. [
  2498. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  2499. AC_REQUIRE([AC_FIND_ZLIB])
  2500. AC_MSG_CHECKING([for libpng])
  2501. AC_CACHE_VAL(ac_cv_lib_png,
  2502. [
  2503. kde_save_LIBS="$LIBS"
  2504. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  2505. LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET"
  2506. else
  2507. LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm"
  2508. fi
  2509. kde_save_CFLAGS="$CFLAGS"
  2510. CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
  2511. AC_TRY_LINK(dnl
  2512. [
  2513. #include<png.h>
  2514. ],
  2515. [
  2516. png_structp png_ptr = png_create_read_struct( /* image ptr */
  2517. PNG_LIBPNG_VER_STRING, 0, 0, 0 );
  2518. return( png_ptr != 0 );
  2519. ],
  2520. eval "ac_cv_lib_png='-lpng $LIBZ -lm'",
  2521. eval "ac_cv_lib_png=no"
  2522. )
  2523. LIBS="$kde_save_LIBS"
  2524. CFLAGS="$kde_save_CFLAGS"
  2525. ])dnl
  2526. if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then
  2527. AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng])
  2528. LIBPNG="$ac_cv_lib_png"
  2529. AC_SUBST(LIBPNG)
  2530. AC_MSG_RESULT($ac_cv_lib_png)
  2531. else
  2532. AC_MSG_RESULT(no)
  2533. LIBPNG=""
  2534. AC_SUBST(LIBPNG)
  2535. fi
  2536. ])
  2537. AC_DEFUN([AC_FIND_JASPER],
  2538. [
  2539. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  2540. AC_REQUIRE([AC_FIND_JPEG])
  2541. AC_MSG_CHECKING([for jasper])
  2542. AC_CACHE_VAL(ac_cv_jasper,
  2543. [
  2544. kde_save_LIBS="$LIBS"
  2545. LIBS="$LIBS $all_libraries $USER_LDFLAGS -ljasper $LIBJPEG -lm"
  2546. kde_save_CFLAGS="$CFLAGS"
  2547. CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
  2548. AC_TRY_LINK(dnl
  2549. [
  2550. #include<jasper/jasper.h>
  2551. ],
  2552. [
  2553. return( jas_init() );
  2554. ],
  2555. eval "ac_cv_jasper='-ljasper $LIBJPEG -lm'",
  2556. eval "ac_cv_jasper=no"
  2557. )
  2558. LIBS="$kde_save_LIBS"
  2559. CFLAGS="$kde_save_CFLAGS"
  2560. ])dnl
  2561. if eval "test ! \"`echo $ac_cv_jasper`\" = no"; then
  2562. AC_DEFINE_UNQUOTED(HAVE_JASPER, 1, [Define if you have jasper])
  2563. LIB_JASPER="$ac_cv_jasper"
  2564. AC_MSG_RESULT($ac_cv_jasper)
  2565. else
  2566. AC_MSG_RESULT(no)
  2567. LIB_JASPER=""
  2568. fi
  2569. AC_SUBST(LIB_JASPER)
  2570. ])
  2571. AC_DEFUN([AC_CHECK_BOOL],
  2572. [
  2573. AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool])
  2574. ])
  2575. AC_DEFUN([KDE_CHECK_COMPILER_FLAG],
  2576. [
  2577. AC_MSG_CHECKING([whether $CXX supports -$1])
  2578. kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'`
  2579. AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache,
  2580. [
  2581. AC_LANG_SAVE
  2582. AC_LANG_CPLUSPLUS
  2583. save_CXXFLAGS="$CXXFLAGS"
  2584. CXXFLAGS="$CXXFLAGS -$1"
  2585. AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], [])
  2586. CXXFLAGS="$save_CXXFLAGS"
  2587. AC_LANG_RESTORE
  2588. ])
  2589. if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then
  2590. AC_MSG_RESULT(yes)
  2591. :
  2592. $2
  2593. else
  2594. AC_MSG_RESULT(no)
  2595. :
  2596. $3
  2597. fi
  2598. ])
  2599. AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG],
  2600. [
  2601. AC_MSG_CHECKING([whether $CC supports -$1])
  2602. kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'`
  2603. AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache,
  2604. [
  2605. AC_LANG_SAVE
  2606. AC_LANG_C
  2607. save_CFLAGS="$CFLAGS"
  2608. CFLAGS="$CFLAGS -$1"
  2609. AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], [])
  2610. CFLAGS="$save_CFLAGS"
  2611. AC_LANG_RESTORE
  2612. ])
  2613. if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then
  2614. AC_MSG_RESULT(yes)
  2615. :
  2616. $2
  2617. else
  2618. AC_MSG_RESULT(no)
  2619. :
  2620. $3
  2621. fi
  2622. ])
  2623. dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables
  2624. dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever])
  2625. dnl it's all white-space separated
  2626. AC_DEFUN([AC_REMOVE_FORBIDDEN],
  2627. [ __val=$$1
  2628. __forbid=" $2 "
  2629. if test -n "$__val"; then
  2630. __new=""
  2631. ac_save_IFS=$IFS
  2632. IFS=" "
  2633. for i in $__val; do
  2634. case "$__forbid" in
  2635. *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;;
  2636. *) # Careful to not add spaces, where there were none, because otherwise
  2637. # libtool gets confused, if we change e.g. CXX
  2638. if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;;
  2639. esac
  2640. done
  2641. IFS=$ac_save_IFS
  2642. $1=$__new
  2643. fi
  2644. ])
  2645. AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER],
  2646. [
  2647. AC_MSG_CHECKING([whether $CC is blacklisted])
  2648. dnl In theory we have tu run this test against $CC and $CXX
  2649. dnl in C and in C++ mode, because its perfectly legal for
  2650. dnl the user to mix compiler versions, since C has a defined
  2651. dnl ABI.
  2652. dnl
  2653. dnl For now, we assume the user is not on crack.
  2654. AC_TRY_COMPILE([
  2655. #ifdef __GNUC__
  2656. #if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0
  2657. choke me
  2658. #endif
  2659. #endif
  2660. ], ,
  2661. kde_bad_compiler=no,
  2662. kde_bad_compiler=yes
  2663. )
  2664. AC_MSG_RESULT($kde_bad_compiler)
  2665. if test "$kde_bad_compiler" = "yes"; then
  2666. AC_MSG_ERROR([
  2667. This particular compiler version is blacklisted because it
  2668. is known to miscompile KDE. Please use a newer version, or
  2669. if that is not yet available, choose an older version.
  2670. Please do not report a bug or bother us reporting this
  2671. configure error. We know about it, and we introduced
  2672. it by intention to avoid untraceable bugs or crashes in KDE.
  2673. ])
  2674. fi
  2675. ])
  2676. AC_DEFUN([KDE_CHECK_FOR_OPT_NOINLINE_MATCH],
  2677. [
  2678. AC_CACHE_CHECK([whether system headers can cope with -O2 -fno-inline],
  2679. kde_cv_opt_noinline_match,
  2680. [
  2681. kde_cv_opt_noinline_match=irrelevant
  2682. dnl if we don't use both -O2 and -fno-inline, this check is moot
  2683. if echo "$CFLAGS" | grep -e -O2 >/dev/null 2>/dev/null \
  2684. && echo "$CFLAGS" | grep -e -fno-inline >/dev/null 2>/dev/null ; then
  2685. ac_cflags_save="$CFLAGS"
  2686. CFLAGS="$CFLAGS -D_USE_GNU"
  2687. AC_TRY_LINK([
  2688. #include <string.h>
  2689. ], [ const char *pt, *et;
  2690. et = __extension__ ({ char __a0, __a1, __a2; (__builtin_constant_p ( ";," ) && ((size_t)(const void *)(( ";," )+ 1) - (size_t)(const void *)( ";," ) == 1) ? ((__a0 =((__const char *) ( ";," ))[0], __a0 == '\0') ? ((void) ( pt ),((void *)0) ) : ((__a1 = ((__const char *) ( ";," ))[1], __a1== '\0') ? (__extension__ (__builtin_constant_p ( __a0 ) && ( __a0 ) == '\0' ? (char *) __rawmemchr ( pt , __a0) : strchr( pt , __a0 ))) : ((__a2 = ((__const char *) ( ";," ))[2], __a2 == '\0') ? __strpbrk_c2 ( pt , __a0, __a1) :(((__const char *) ( ";," ))[3] == '\0' ? __strpbrk_c3 ( pt ,__a0, __a1, __a2): strpbrk ( pt , ";," ))))) : strpbrk ( pt , ";," )); }) ;
  2691. ],
  2692. kde_cv_opt_noinline_match=yes,
  2693. kde_cv_opt_noinline_match=no
  2694. )
  2695. CFLAGS="$ac_cflags_save"
  2696. fi
  2697. ])
  2698. ])
  2699. dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given
  2700. AC_DEFUN([AC_VALIDIFY_CXXFLAGS],
  2701. [dnl
  2702. if test "x$kde_use_qt_emb" != "xyes"; then
  2703. AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath])
  2704. AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath])
  2705. else
  2706. AC_REMOVE_FORBIDDEN(CXX, [-rpath])
  2707. AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath])
  2708. fi
  2709. ])
  2710. AC_DEFUN([AC_CHECK_COMPILERS],
  2711. [
  2712. AC_ARG_ENABLE(debug,
  2713. AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]),
  2714. [
  2715. case $enableval in
  2716. yes)
  2717. kde_use_debug_code="yes"
  2718. kde_use_debug_define=no
  2719. ;;
  2720. full)
  2721. kde_use_debug_code="full"
  2722. kde_use_debug_define=no
  2723. ;;
  2724. *)
  2725. kde_use_debug_code="no"
  2726. kde_use_debug_define=yes
  2727. ;;
  2728. esac
  2729. ],
  2730. [kde_use_debug_code="no"
  2731. kde_use_debug_define=no
  2732. ])
  2733. dnl Just for configure --help
  2734. AC_ARG_ENABLE(dummyoption,
  2735. AC_HELP_STRING([--disable-debug],
  2736. [disables debug output and debug symbols [default=no]]),
  2737. [],[])
  2738. AC_ARG_ENABLE(strict,
  2739. AC_HELP_STRING([--enable-strict],
  2740. [compiles with strict compiler options (may not work!)]),
  2741. [
  2742. if test $enableval = "no"; then
  2743. kde_use_strict_options="no"
  2744. else
  2745. kde_use_strict_options="yes"
  2746. fi
  2747. ], [kde_use_strict_options="no"])
  2748. AC_ARG_ENABLE(warnings,AC_HELP_STRING([--disable-warnings],[disables compilation with -Wall and similar]),
  2749. [
  2750. if test $enableval = "no"; then
  2751. kde_use_warnings="no"
  2752. else
  2753. kde_use_warnings="yes"
  2754. fi
  2755. ], [kde_use_warnings="yes"])
  2756. dnl enable warnings for debug build
  2757. if test "$kde_use_debug_code" != "no"; then
  2758. kde_use_warnings=yes
  2759. fi
  2760. AC_ARG_ENABLE(profile,AC_HELP_STRING([--enable-profile],[creates profiling infos [default=no]]),
  2761. [kde_use_profiling=$enableval],
  2762. [kde_use_profiling="no"]
  2763. )
  2764. dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
  2765. CFLAGS=" $CFLAGS"
  2766. AC_PROG_CC
  2767. AC_PROG_CPP
  2768. if test "$GCC" = "yes"; then
  2769. if test "$kde_use_debug_code" != "no"; then
  2770. if test $kde_use_debug_code = "full"; then
  2771. CFLAGS="-g3 -fno-inline $CFLAGS"
  2772. else
  2773. CFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CFLAGS"
  2774. fi
  2775. else
  2776. CFLAGS="-O2 $CFLAGS"
  2777. fi
  2778. fi
  2779. if test "$kde_use_debug_define" = "yes"; then
  2780. CFLAGS="-DNDEBUG $CFLAGS"
  2781. fi
  2782. case "$host" in
  2783. *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";;
  2784. *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";;
  2785. esac
  2786. if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then
  2787. LDFLAGS=""
  2788. fi
  2789. CXXFLAGS=" $CXXFLAGS"
  2790. AC_PROG_CXX
  2791. KDE_CHECK_FOR_BAD_COMPILER
  2792. if test "$GXX" = "yes" || test "$CXX" = "KCC"; then
  2793. if test "$kde_use_debug_code" != "no"; then
  2794. if test "$CXX" = "KCC"; then
  2795. CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wwrite-strings $CXXFLAGS"
  2796. else
  2797. if test "$kde_use_debug_code" = "full"; then
  2798. CXXFLAGS="-g3 -fno-inline $CXXFLAGS"
  2799. else
  2800. CXXFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CXXFLAGS"
  2801. fi
  2802. fi
  2803. KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"])
  2804. dnl convenience compiler flags
  2805. KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""])
  2806. AC_SUBST(WOVERLOADED_VIRTUAL)
  2807. else
  2808. if test "$CXX" = "KCC"; then
  2809. CXXFLAGS="+K3 $CXXFLAGS"
  2810. else
  2811. CXXFLAGS="-O2 $CXXFLAGS"
  2812. fi
  2813. fi
  2814. fi
  2815. if test "$kde_use_debug_define" = "yes"; then
  2816. CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS"
  2817. fi
  2818. if test "$kde_use_profiling" = "yes"; then
  2819. KDE_CHECK_COMPILER_FLAG(pg,
  2820. [
  2821. CFLAGS="-pg $CFLAGS"
  2822. CXXFLAGS="-pg $CXXFLAGS"
  2823. ])
  2824. fi
  2825. if test "$kde_use_warnings" = "yes"; then
  2826. if test "$GCC" = "yes"; then
  2827. CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS"
  2828. case $host in
  2829. *-*-linux-gnu)
  2830. CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_DEFAULT_SOURCE $CFLAGS"
  2831. CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_DEFAULT_SOURCE -Wcast-align -Wchar-subscripts $CXXFLAGS"
  2832. KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"])
  2833. KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"])
  2834. ;;
  2835. esac
  2836. KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"])
  2837. KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"])
  2838. dnl ### FIXME: revert for KDE 4
  2839. KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"])
  2840. fi
  2841. fi
  2842. if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then
  2843. CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS"
  2844. fi
  2845. AC_ARG_ENABLE(pch,
  2846. AC_HELP_STRING([--enable-pch],
  2847. [enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]),
  2848. [ kde_use_pch=$enableval ],[ kde_use_pch=no ])
  2849. HAVE_GCC_VISIBILITY=0
  2850. AC_SUBST([HAVE_GCC_VISIBILITY])
  2851. if test "$GXX" = "yes"; then
  2852. gcc_no_reorder_blocks=NO
  2853. KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES])
  2854. if test $kde_use_debug_code != "no" && \
  2855. test $kde_use_debug_code != "full" && \
  2856. test "YES" = "$gcc_no_reorder_blocks" ; then
  2857. CXXFLAGS="$CXXFLAGS -fno-reorder-blocks"
  2858. CFLAGS="$CFLAGS -fno-reorder-blocks"
  2859. fi
  2860. KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"])
  2861. KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"])
  2862. KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"])
  2863. KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= )
  2864. ENABLE_PERMISSIVE_FLAG="-fpermissive"
  2865. if test "$kde_use_pch" = "yes"; then
  2866. AC_MSG_CHECKING(whether gcc supports precompiling c header files)
  2867. echo >conftest.h
  2868. if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then
  2869. kde_gcc_supports_pch=yes
  2870. AC_MSG_RESULT(yes)
  2871. else
  2872. kde_gcc_supports_pch=no
  2873. AC_MSG_RESULT(no)
  2874. fi
  2875. if test "$kde_gcc_supports_pch" = "yes"; then
  2876. AC_MSG_CHECKING(whether gcc supports precompiling c++ header files)
  2877. if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then
  2878. kde_gcc_supports_pch=yes
  2879. AC_MSG_RESULT(yes)
  2880. else
  2881. kde_gcc_supports_pch=no
  2882. AC_MSG_RESULT(no)
  2883. fi
  2884. fi
  2885. rm -f conftest.h conftest.h.gch
  2886. fi
  2887. KDE_CHECK_FOR_OPT_NOINLINE_MATCH
  2888. if test "x$kde_cv_opt_noinline_match" = "xno" ; then
  2889. CFLAGS="`echo "$CFLAGS" | sed "s/ -fno-inline//"`"
  2890. fi
  2891. fi
  2892. AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes")
  2893. if test "$CXX" = "KCC"; then
  2894. dnl unfortunately we currently cannot disable exception support in KCC
  2895. dnl because doing so is binary incompatible and Qt by default links with exceptions :-(
  2896. dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"])
  2897. dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= )
  2898. if test "$kde_use_pch" = "yes"; then
  2899. dnl TODO: support --pch-dir!
  2900. KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"])
  2901. dnl the below works (but the dir must exist), but it's
  2902. dnl useless for a whole package.
  2903. dnl The are precompiled headers for each source file, so when compiling
  2904. dnl from scratch, it doesn't make a difference, and they take up
  2905. dnl around ~5Mb _per_ sourcefile.
  2906. dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp,
  2907. dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"])
  2908. fi
  2909. dnl this flag controls inlining. by default KCC inlines in optimisation mode
  2910. dnl all implementations that are defined inside the class {} declaration.
  2911. dnl because of templates-compatibility with broken gcc compilers, this
  2912. dnl can cause excessive inlining. This flag limits it to a sane level
  2913. KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"])
  2914. KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"])
  2915. KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"])
  2916. KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"])
  2917. dnl Some source files are shared between multiple executables
  2918. dnl (or libraries) and some of those need template instantiations.
  2919. dnl In that case KCC needs to compile those sources with
  2920. dnl --one_instantiation_per_object. To make it easy for us we compile
  2921. dnl _all_ objects with that flag (--one_per is a shorthand).
  2922. KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"])
  2923. fi
  2924. AC_SUBST(USE_EXCEPTIONS)
  2925. dnl obsolete macro - provided to keep things going
  2926. USE_RTTI=
  2927. AC_SUBST(USE_RTTI)
  2928. case "$host" in
  2929. *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;;
  2930. *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";;
  2931. *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";;
  2932. *-*-solaris*)
  2933. if test "$GXX" = yes; then
  2934. libstdcpp=`$CXX -print-file-name=libstdc++.so`
  2935. if test ! -f $libstdcpp; then
  2936. AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so])
  2937. fi
  2938. fi
  2939. ;;
  2940. esac
  2941. AC_VALIDIFY_CXXFLAGS
  2942. AC_PROG_CXXCPP
  2943. if test "$GCC" = yes; then
  2944. NOOPT_CFLAGS=-O0
  2945. fi
  2946. KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0])
  2947. AC_ARG_ENABLE(coverage,
  2948. AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [
  2949. if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then
  2950. ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
  2951. ac_coverage_linker="-lgcc"
  2952. elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then
  2953. ac_coverage_compiler="-fprofile-arcs -ftest-coverage"
  2954. ac_coverage_linker=""
  2955. else
  2956. AC_MSG_ERROR([coverage with your compiler is not supported])
  2957. fi
  2958. CFLAGS="$CFLAGS $ac_coverage_compiler"
  2959. CXXFLAGS="$CXXFLAGS $ac_coverage_compiler"
  2960. LDFLAGS="$LDFLAGS $ac_coverage_linker"
  2961. ])
  2962. AC_SUBST(NOOPT_CXXFLAGS)
  2963. AC_SUBST(NOOPT_CFLAGS)
  2964. AC_SUBST(ENABLE_PERMISSIVE_FLAG)
  2965. KDE_CHECK_NEW_LDFLAGS
  2966. KDE_CHECK_FINAL
  2967. KDE_CHECK_CLOSURE
  2968. KDE_CHECK_NMCHECK
  2969. ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), [])
  2970. ])
  2971. AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG],
  2972. [
  2973. AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug,
  2974. [
  2975. AC_LANG_SAVE
  2976. AC_LANG_CPLUSPLUS
  2977. safe_CXXFLAGS=$CXXFLAGS
  2978. safe_LDFLAGS=$LDFLAGS
  2979. CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0"
  2980. LDFLAGS="$LDFLAGS -shared -fPIC"
  2981. AC_TRY_LINK(
  2982. [
  2983. /* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */
  2984. #include <string>
  2985. int some_function( void ) __attribute__ ((visibility("default")));
  2986. int some_function( void )
  2987. {
  2988. std::string s("blafasel");
  2989. return 0;
  2990. }
  2991. ], [/* elvis is alive */],
  2992. kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes)
  2993. CXXFLAGS=$safe_CXXFLAGS
  2994. LDFLAGS=$safe_LDFLAGS
  2995. AC_LANG_RESTORE
  2996. ]
  2997. )
  2998. if test x$kde_cv_val_gcc_visibility_bug = xno; then
  2999. CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden"
  3000. fi
  3001. ]
  3002. )
  3003. AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY],
  3004. [
  3005. AC_BEFORE([AC_PATH_TQT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY])
  3006. AC_MSG_CHECKING([grepping for visibility push/pop in headers])
  3007. if test "x$GXX" = "xyes"; then
  3008. AC_LANG_SAVE
  3009. AC_LANG_CPLUSPLUS
  3010. AC_EGREP_CPP(
  3011. [GCC visibility push],
  3012. [ #include <exception>
  3013. ],
  3014. [
  3015. AC_MSG_RESULT(yes)
  3016. kde_stdc_visibility_patched=yes ],
  3017. [
  3018. AC_MSG_RESULT(no)
  3019. AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for
  3020. visibility support. Disabling -fvisibility=hidden])
  3021. kde_stdc_visibility_patched=no ])
  3022. AC_LANG_RESTORE
  3023. kde_have_gcc_visibility=no
  3024. KDE_CHECK_COMPILER_FLAG(fvisibility=hidden,
  3025. [
  3026. kde_have_gcc_visibility=yes
  3027. dnl the whole toolchain is just a mess, gcc is just too buggy
  3028. dnl to handle STL with visibility enabled. Lets reconsider
  3029. dnl when gcc 4.2 is out or when things get fixed in the compiler.
  3030. dnl Contact mueller@kde.org for details.
  3031. AC_ARG_ENABLE(gcc-hidden-visibility,
  3032. AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]),
  3033. [kde_have_gcc_visibility=$enableval],
  3034. [kde_have_gcc_visibility=no])
  3035. AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched,
  3036. [
  3037. AC_LANG_SAVE
  3038. AC_LANG_CPLUSPLUS
  3039. safe_CXXFLAGS=$CXXFLAGS
  3040. CXXFLAGS="$CXXFLAGS $all_includes"
  3041. AC_TRY_COMPILE(
  3042. [
  3043. #include <qglobal.h>
  3044. #if Q_EXPORT - 0 != 0
  3045. /* if this compiles, then Q_EXPORT is undefined */
  3046. /* if Q_EXPORT is nonempty, this will break compilation */
  3047. #endif
  3048. ], [/* elvis is alive */],
  3049. kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes)
  3050. CXXFLAGS=$safe_CXXFLAGS
  3051. AC_LANG_RESTORE
  3052. ]
  3053. )
  3054. if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then
  3055. CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
  3056. KDE_CHECK_VISIBILITY_GCC_BUG
  3057. HAVE_GCC_VISIBILITY=1
  3058. AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported])
  3059. fi
  3060. ])
  3061. fi
  3062. ])
  3063. AC_DEFUN([KDE_ADD_DEPENDENCIES],
  3064. [
  3065. [A]M_DEPENDENCIES(CC)
  3066. [A]M_DEPENDENCIES(CXX)
  3067. ])
  3068. dnl just a wrapper to clean up configure.in
  3069. AC_DEFUN([KDE_PROG_LIBTOOL],
  3070. [
  3071. AC_REQUIRE([AC_CHECK_COMPILERS])
  3072. AC_REQUIRE([AC_ENABLE_SHARED])
  3073. AC_REQUIRE([AC_ENABLE_STATIC])
  3074. AC_REQUIRE([AC_LIBTOOL_DLOPEN])
  3075. AC_REQUIRE([KDE_CHECK_LIB64])
  3076. AC_OBJEXT
  3077. AC_EXEEXT
  3078. AM_PROG_LIBTOOL
  3079. AC_LIBTOOL_CXX
  3080. LIBTOOL_SHELL="/bin/sh ./libtool"
  3081. # LIBTOOL="$LIBTOOL --silent"
  3082. KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)"
  3083. AC_SUBST(KDE_PLUGIN)
  3084. # This hack ensures that libtool creates shared libs for tdeunittest plugins. By default check_LTLIBRARIES makes static libs.
  3085. KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)"
  3086. AC_SUBST(KDE_CHECK_PLUGIN)
  3087. # we patch configure quite some so we better keep that consistent for incremental runs
  3088. AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure')
  3089. ])
  3090. AC_DEFUN([KDE_CHECK_LIB64],
  3091. [
  3092. AC_ARG_ENABLE(libsuffix,
  3093. AC_HELP_STRING([--enable-libsuffix],
  3094. [/lib directory suffix (64,32,none,auto[=default])]),
  3095. tdelibsuff=$enableval, tdelibsuff="auto")
  3096. if test "$tdelibsuff" = "auto"; then
  3097. cat > conftest.c << EOF
  3098. #include <stdio.h>
  3099. int main() {
  3100. return 0;
  3101. }
  3102. EOF
  3103. tdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out |sed -ne '/libc.so/{
  3104. s,.*/lib\([[^\/]]*\)/.*,\1,
  3105. p
  3106. }'`
  3107. rm -rf conftest.*
  3108. fi
  3109. if test "$tdelibsuff" = "no" || test "$tdelibsuff" = "none"; then
  3110. tdelibsuff=
  3111. fi
  3112. if test -z "$tdelibsuff"; then
  3113. AC_MSG_RESULT([not using lib directory suffix])
  3114. AC_DEFINE(KDELIBSUFF, [""], Suffix for lib directories)
  3115. else
  3116. if test "$libdir" = '${exec_prefix}/lib'; then
  3117. libdir="$libdir${tdelibsuff}"
  3118. AC_SUBST([libdir], ["$libdir"]) dnl ugly hack for lib64 platforms
  3119. fi
  3120. AC_DEFINE_UNQUOTED(KDELIBSUFF, ["${tdelibsuff}"], Suffix for lib directories)
  3121. AC_MSG_RESULT([using lib directory suffix $tdelibsuff])
  3122. fi
  3123. ])
  3124. AC_DEFUN([KDE_CHECK_TYPES],
  3125. [ AC_CHECK_SIZEOF(int, 4)dnl
  3126. AC_CHECK_SIZEOF(short)dnl
  3127. AC_CHECK_SIZEOF(long, 4)dnl
  3128. AC_CHECK_SIZEOF(char *, 4)dnl
  3129. ])dnl
  3130. dnl Not used - kept for compat only?
  3131. AC_DEFUN([KDE_DO_IT_ALL],
  3132. [
  3133. AC_CANONICAL_SYSTEM
  3134. AC_ARG_PROGRAM
  3135. AM_INIT_AUTOMAKE($1, $2)
  3136. AM_DISABLE_LIBRARIES
  3137. AC_PREFIX_DEFAULT(${TDEDIR:-/usr/local/kde})
  3138. AC_CHECK_COMPILERS
  3139. KDE_PROG_LIBTOOL
  3140. AM_KDE_WITH_NLS
  3141. AC_PATH_KDE
  3142. ])
  3143. AC_DEFUN([AC_CHECK_RPATH],
  3144. [
  3145. AC_MSG_CHECKING(for rpath)
  3146. AC_ARG_ENABLE(rpath,
  3147. AC_HELP_STRING([--disable-rpath],[do not use the rpath feature of ld]),
  3148. USE_RPATH=$enableval, USE_RPATH=yes)
  3149. if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then
  3150. KDE_RPATH="-R \$(libdir)"
  3151. if test "$kde_libraries" != "$libdir"; then
  3152. KDE_RPATH="$KDE_RPATH -R \$(kde_libraries)"
  3153. fi
  3154. if test -n "$qt_libraries"; then
  3155. KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)"
  3156. fi
  3157. dnl $x_libraries is set to /usr/lib in case
  3158. if test -n "$X_LDFLAGS"; then
  3159. X_RPATH="-R \$(x_libraries)"
  3160. KDE_RPATH="$KDE_RPATH $X_RPATH"
  3161. fi
  3162. if test -n "$KDE_EXTRA_RPATH"; then
  3163. KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)"
  3164. fi
  3165. fi
  3166. AC_SUBST(KDE_EXTRA_RPATH)
  3167. AC_SUBST(KDE_RPATH)
  3168. AC_SUBST(X_RPATH)
  3169. AC_MSG_RESULT($USE_RPATH)
  3170. ])
  3171. dnl Check for the type of the third argument of getsockname
  3172. AC_DEFUN([AC_CHECK_SOCKLEN_T],
  3173. [
  3174. AC_MSG_CHECKING(for socklen_t)
  3175. AC_CACHE_VAL(kde_cv_socklen_t,
  3176. [
  3177. AC_LANG_PUSH(C++)
  3178. kde_cv_socklen_t=no
  3179. AC_TRY_COMPILE([
  3180. #include <sys/types.h>
  3181. #include <sys/socket.h>
  3182. ],
  3183. [
  3184. socklen_t len;
  3185. getpeername(0,0,&len);
  3186. ],
  3187. [
  3188. kde_cv_socklen_t=yes
  3189. kde_cv_socklen_t_equiv=socklen_t
  3190. ])
  3191. AC_LANG_POP(C++)
  3192. ])
  3193. AC_MSG_RESULT($kde_cv_socklen_t)
  3194. if test $kde_cv_socklen_t = no; then
  3195. AC_MSG_CHECKING([for socklen_t equivalent for socket functions])
  3196. AC_CACHE_VAL(kde_cv_socklen_t_equiv,
  3197. [
  3198. kde_cv_socklen_t_equiv=int
  3199. AC_LANG_PUSH(C++)
  3200. for t in int size_t unsigned long "unsigned long"; do
  3201. AC_TRY_COMPILE([
  3202. #include <sys/types.h>
  3203. #include <sys/socket.h>
  3204. ],
  3205. [
  3206. $t len;
  3207. getpeername(0,0,&len);
  3208. ],
  3209. [
  3210. kde_cv_socklen_t_equiv="$t"
  3211. break
  3212. ])
  3213. done
  3214. AC_LANG_POP(C++)
  3215. ])
  3216. AC_MSG_RESULT($kde_cv_socklen_t_equiv)
  3217. fi
  3218. AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv,
  3219. [type to use in place of socklen_t if not defined])
  3220. AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv,
  3221. [type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)])
  3222. ])
  3223. dnl This is a merge of some macros out of the gettext aclocal.m4
  3224. dnl since we don't need anything, I took the things we need
  3225. dnl the copyright for them is:
  3226. dnl >
  3227. dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
  3228. dnl This Makefile.in is free software; the Free Software Foundation
  3229. dnl gives unlimited permission to copy and/or distribute it,
  3230. dnl with or without modifications, as long as this notice is preserved.
  3231. dnl This program is distributed in the hope that it will be useful,
  3232. dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
  3233. dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  3234. dnl PARTICULAR PURPOSE.
  3235. dnl >
  3236. dnl for this file it is relicensed under LGPL
  3237. AC_DEFUN([AM_KDE_WITH_NLS],
  3238. [
  3239. dnl If we use NLS figure out what method
  3240. AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt,
  3241. [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt)
  3242. AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
  3243. if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then
  3244. AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it])
  3245. GMSGFMT=":"
  3246. fi
  3247. MSGFMT=$GMSGFMT
  3248. AC_SUBST(GMSGFMT)
  3249. AC_SUBST(MSGFMT)
  3250. AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext,
  3251. [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
  3252. dnl Test whether we really found GNU xgettext.
  3253. if test "$XGETTEXT" != ":"; then
  3254. dnl If it is no GNU xgettext we define it as : so that the
  3255. dnl Makefiles still can work.
  3256. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
  3257. : ;
  3258. else
  3259. AC_MSG_RESULT(
  3260. [found xgettext programs is not GNU xgettext; ignore it])
  3261. XGETTEXT=":"
  3262. fi
  3263. fi
  3264. AC_SUBST(XGETTEXT)
  3265. ])
  3266. # Search path for a program which passes the given test.
  3267. # Ulrich Drepper <drepper@cygnus.com>, 1996.
  3268. # serial 1
  3269. # Stephan Kulow: I appended a _KDE against name conflicts
  3270. dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR,
  3271. dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
  3272. AC_DEFUN([AM_PATH_PROG_WITH_TEST_KDE],
  3273. [# Extract the first word of "$2", so it can be a program name with args.
  3274. set dummy $2; ac_word=[$]2
  3275. AC_MSG_CHECKING([for $ac_word])
  3276. AC_CACHE_VAL(ac_cv_path_$1,
  3277. [case "[$]$1" in
  3278. /*)
  3279. ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
  3280. ;;
  3281. *)
  3282. IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
  3283. for ac_dir in ifelse([$5], , $PATH, [$5]); do
  3284. test -z "$ac_dir" && ac_dir=.
  3285. if test -f $ac_dir/$ac_word; then
  3286. if [$3]; then
  3287. ac_cv_path_$1="$ac_dir/$ac_word"
  3288. break
  3289. fi
  3290. fi
  3291. done
  3292. IFS="$ac_save_ifs"
  3293. dnl If no 4th arg is given, leave the cache variable unset,
  3294. dnl so AC_PATH_PROGS will keep looking.
  3295. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
  3296. ])dnl
  3297. ;;
  3298. esac])dnl
  3299. $1="$ac_cv_path_$1"
  3300. if test -n "[$]$1"; then
  3301. AC_MSG_RESULT([$]$1)
  3302. else
  3303. AC_MSG_RESULT(no)
  3304. fi
  3305. AC_SUBST($1)dnl
  3306. ])
  3307. # Check whether LC_MESSAGES is available in <locale.h>.
  3308. # Ulrich Drepper <drepper@cygnus.com>, 1995.
  3309. # serial 1
  3310. AC_DEFUN([AM_LC_MESSAGES],
  3311. [if test $ac_cv_header_locale_h = yes; then
  3312. AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
  3313. [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
  3314. am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
  3315. if test $am_cv_val_LC_MESSAGES = yes; then
  3316. AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES])
  3317. fi
  3318. fi])
  3319. dnl From Jim Meyering.
  3320. dnl FIXME: migrate into libit.
  3321. AC_DEFUN([AM_FUNC_OBSTACK],
  3322. [AC_CACHE_CHECK([for obstacks], am_cv_func_obstack,
  3323. [AC_TRY_LINK([#include "obstack.h"],
  3324. [struct obstack *mem;obstack_free(mem,(char *) 0)],
  3325. am_cv_func_obstack=yes,
  3326. am_cv_func_obstack=no)])
  3327. if test $am_cv_func_obstack = yes; then
  3328. AC_DEFINE(HAVE_OBSTACK)
  3329. else
  3330. LIBOBJS="$LIBOBJS obstack.o"
  3331. fi
  3332. ])
  3333. dnl From Jim Meyering. Use this if you use the GNU error.[ch].
  3334. dnl FIXME: Migrate into libit
  3335. AC_DEFUN([AM_FUNC_ERROR_AT_LINE],
  3336. [AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line,
  3337. [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");],
  3338. am_cv_lib_error_at_line=yes,
  3339. am_cv_lib_error_at_line=no)])
  3340. if test $am_cv_lib_error_at_line = no; then
  3341. LIBOBJS="$LIBOBJS error.o"
  3342. fi
  3343. AC_SUBST(LIBOBJS)dnl
  3344. ])
  3345. # Macro to add for using GNU gettext.
  3346. # Ulrich Drepper <drepper@cygnus.com>, 1995.
  3347. # serial 1
  3348. # Stephan Kulow: I put a KDE in it to avoid name conflicts
  3349. AC_DEFUN([AM_KDE_GNU_GETTEXT],
  3350. [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
  3351. AC_REQUIRE([AC_PROG_RANLIB])dnl
  3352. AC_REQUIRE([AC_HEADER_STDC])dnl
  3353. AC_REQUIRE([AC_TYPE_OFF_T])dnl
  3354. AC_REQUIRE([AC_TYPE_SIZE_T])dnl
  3355. AC_REQUIRE([AC_FUNC_ALLOCA])dnl
  3356. AC_REQUIRE([AC_FUNC_MMAP])dnl
  3357. AC_REQUIRE([AM_KDE_WITH_NLS])dnl
  3358. AC_CHECK_HEADERS([limits.h locale.h nl_types.h string.h values.h alloca.h])
  3359. AC_CHECK_FUNCS([getcwd munmap putenv setlocale strchr strcasecmp \
  3360. __argz_count __argz_stringify __argz_next])
  3361. AC_MSG_CHECKING(for stpcpy)
  3362. AC_CACHE_VAL(kde_cv_func_stpcpy,
  3363. [
  3364. kde_safe_cxxflags=$CXXFLAGS
  3365. CXXFLAGS="-Werror"
  3366. AC_LANG_SAVE
  3367. AC_LANG_CPLUSPLUS
  3368. AC_TRY_COMPILE([
  3369. #include <string.h>
  3370. ],
  3371. [
  3372. char buffer[200];
  3373. stpcpy(buffer, buffer);
  3374. ],
  3375. kde_cv_func_stpcpy=yes,
  3376. kde_cv_func_stpcpy=no)
  3377. AC_LANG_RESTORE
  3378. CXXFLAGS=$kde_safe_cxxflags
  3379. ])
  3380. AC_MSG_RESULT($kde_cv_func_stpcpy)
  3381. if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then
  3382. AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy])
  3383. fi
  3384. AM_LC_MESSAGES
  3385. if test "x$CATOBJEXT" != "x"; then
  3386. if test "x$ALL_LINGUAS" = "x"; then
  3387. LINGUAS=
  3388. else
  3389. AC_MSG_CHECKING(for catalogs to be installed)
  3390. NEW_LINGUAS=
  3391. for lang in ${LINGUAS=$ALL_LINGUAS}; do
  3392. case "$ALL_LINGUAS" in
  3393. *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
  3394. esac
  3395. done
  3396. LINGUAS=$NEW_LINGUAS
  3397. AC_MSG_RESULT($LINGUAS)
  3398. fi
  3399. dnl Construct list of names of catalog files to be constructed.
  3400. if test -n "$LINGUAS"; then
  3401. for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
  3402. fi
  3403. fi
  3404. ])
  3405. AC_DEFUN([AC_HAVE_XPM],
  3406. [AC_REQUIRE_CPP()dnl
  3407. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  3408. test -z "$XPM_LDFLAGS" && XPM_LDFLAGS=
  3409. test -z "$XPM_INCLUDE" && XPM_INCLUDE=
  3410. AC_ARG_WITH(xpm,AC_HELP_STRING([--without-xpm],[disable color pixmap XPM tests]),
  3411. xpm_test=$withval, xpm_test="yes")
  3412. if test "x$xpm_test" = xno; then
  3413. ac_cv_have_xpm=no
  3414. else
  3415. AC_MSG_CHECKING(for XPM)
  3416. AC_CACHE_VAL(ac_cv_have_xpm,
  3417. [
  3418. ac_save_ldflags="$LDFLAGS"
  3419. ac_save_cflags="$CFLAGS"
  3420. if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
  3421. LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET"
  3422. else
  3423. LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET"
  3424. fi
  3425. CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES"
  3426. test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS"
  3427. AC_TRY_LINK([#include <X11/xpm.h>],[],
  3428. ac_cv_have_xpm="yes",ac_cv_have_xpm="no")
  3429. LDFLAGS="$ac_save_ldflags"
  3430. CFLAGS="$ac_save_cflags"
  3431. ])dnl
  3432. if test "$ac_cv_have_xpm" = no; then
  3433. AC_MSG_RESULT(no)
  3434. XPM_LDFLAGS=""
  3435. XPMINC=""
  3436. $2
  3437. else
  3438. AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support])
  3439. if test "$XPM_LDFLAGS" = ""; then
  3440. XPMLIB='-lXpm $(LIB_X11)'
  3441. else
  3442. XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)'
  3443. fi
  3444. if test "$XPM_INCLUDE" = ""; then
  3445. XPMINC=""
  3446. else
  3447. XPMINC="-I$XPM_INCLUDE"
  3448. fi
  3449. AC_MSG_RESULT(yes)
  3450. $1
  3451. fi
  3452. fi
  3453. AC_SUBST(XPMINC)
  3454. AC_SUBST(XPMLIB)
  3455. ])
  3456. AC_DEFUN([AC_HAVE_DPMS],
  3457. [AC_REQUIRE_CPP()dnl
  3458. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  3459. test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS=
  3460. test -z "$DPMS_INCLUDE" && DPMS_INCLUDE=
  3461. DPMS_LIB=
  3462. AC_ARG_WITH(dpms,AC_HELP_STRING([--without-dpms],[disable DPMS power saving]),
  3463. dpms_test=$withval, dpms_test="yes")
  3464. if test "x$dpms_test" = xno; then
  3465. ac_cv_have_dpms=no
  3466. else
  3467. AC_MSG_CHECKING(for DPMS)
  3468. dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms.
  3469. dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms".
  3470. AC_CACHE_VAL(ac_cv_have_dpms,
  3471. [
  3472. if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then
  3473. AC_MSG_RESULT(no)
  3474. ac_cv_have_dpms="no"
  3475. else
  3476. ac_save_ldflags="$LDFLAGS"
  3477. ac_save_cflags="$CFLAGS"
  3478. ac_save_libs="$LIBS"
  3479. LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries"
  3480. LIBS="-lX11 -lXext $LIBSOCKET"
  3481. CFLAGS="$CFLAGS $X_INCLUDES"
  3482. test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
  3483. AC_TRY_LINK([
  3484. #include <X11/Xproto.h>
  3485. #include <X11/X.h>
  3486. #include <X11/Xlib.h>
  3487. #include <X11/extensions/dpms.h>
  3488. int foo_test_dpms()
  3489. { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
  3490. ac_cv_have_dpms="yes", [
  3491. LIBS="-lXdpms $LIBS"
  3492. AC_TRY_LINK([
  3493. #include <X11/Xproto.h>
  3494. #include <X11/X.h>
  3495. #include <X11/Xlib.h>
  3496. #include <X11/extensions/dpms.h>
  3497. int foo_test_dpms()
  3498. { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[],
  3499. [
  3500. ac_cv_have_dpms="-lXdpms"
  3501. ],ac_cv_have_dpms="no")
  3502. ])
  3503. LDFLAGS="$ac_save_ldflags"
  3504. CFLAGS="$ac_save_cflags"
  3505. LIBS="$ac_save_libs"
  3506. fi
  3507. ])dnl
  3508. if test "$ac_cv_have_dpms" = no; then
  3509. AC_MSG_RESULT(no)
  3510. DPMS_LDFLAGS=""
  3511. DPMSINC=""
  3512. $2
  3513. else
  3514. AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support])
  3515. if test "$ac_cv_have_dpms" = "-lXdpms"; then
  3516. DPMS_LIB="-lXdpms"
  3517. fi
  3518. if test "$DPMS_LDFLAGS" = ""; then
  3519. DPMSLIB="$DPMS_LIB "'$(LIB_X11)'
  3520. else
  3521. DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)'
  3522. fi
  3523. if test "$DPMS_INCLUDE" = ""; then
  3524. DPMSINC=""
  3525. else
  3526. DPMSINC="-I$DPMS_INCLUDE"
  3527. fi
  3528. AC_MSG_RESULT(yes)
  3529. $1
  3530. fi
  3531. fi
  3532. ac_save_cflags="$CFLAGS"
  3533. CFLAGS="$CFLAGS $X_INCLUDES"
  3534. test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS"
  3535. AH_TEMPLATE(HAVE_DPMSCAPABLE_PROTO,
  3536. [Define if you have the DPMSCapable prototype in <X11/extensions/dpms.h>])
  3537. AC_CHECK_DECL(DPMSCapable,
  3538. AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),,
  3539. [#include <X11/Xlib.h>
  3540. #include <X11/extensions/dpms.h>])
  3541. AH_TEMPLATE(HAVE_DPMSINFO_PROTO,
  3542. [Define if you have the DPMSInfo prototype in <X11/extensions/dpms.h>])
  3543. AC_CHECK_DECL(DPMSInfo,
  3544. AC_DEFINE(HAVE_DPMSINFO_PROTO),,
  3545. [#include <X11/Xlib.h>
  3546. #include <X11/extensions/dpms.h>])
  3547. CFLAGS="$ac_save_cflags"
  3548. AC_SUBST(DPMSINC)
  3549. AC_SUBST(DPMSLIB)
  3550. ])
  3551. AC_DEFUN([AC_HAVE_GL],
  3552. [AC_REQUIRE_CPP()dnl
  3553. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  3554. test -z "$GL_LDFLAGS" && GL_LDFLAGS=
  3555. test -z "$GL_INCLUDE" && GL_INCLUDE=
  3556. AC_ARG_WITH(gl,AC_HELP_STRING([--without-gl],[disable 3D GL modes]),
  3557. gl_test=$withval, gl_test="yes")
  3558. if test "x$kde_use_qt_emb" = "xyes"; then
  3559. # GL and Qt Embedded is a no-go for now.
  3560. ac_cv_have_gl=no
  3561. elif test "x$gl_test" = xno; then
  3562. ac_cv_have_gl=no
  3563. else
  3564. AC_MSG_CHECKING(for GL)
  3565. AC_CACHE_VAL(ac_cv_have_gl,
  3566. [
  3567. AC_LANG_SAVE
  3568. AC_LANG_CPLUSPLUS
  3569. ac_save_ldflags=$LDFLAGS
  3570. ac_save_cxxflags=$CXXFLAGS
  3571. ac_save_libs=$LIBS
  3572. LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries"
  3573. LIBS="$LIBS -lGL -lGLU"
  3574. test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11"
  3575. LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET"
  3576. CXXFLAGS="$CFLAGS $X_INCLUDES"
  3577. test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
  3578. AC_TRY_LINK([#include <GL/gl.h>
  3579. #include <GL/glu.h>
  3580. ], [],
  3581. ac_cv_have_gl="yes", ac_cv_have_gl="no")
  3582. AC_LANG_RESTORE
  3583. LDFLAGS=$ac_save_ldflags
  3584. CXXFLAGS=$ac_save_cxxflags
  3585. LIBS=$ac_save_libs
  3586. ])dnl
  3587. if test "$ac_cv_have_gl" = "no"; then
  3588. AC_MSG_RESULT(no)
  3589. GL_LDFLAGS=""
  3590. GLINC=""
  3591. $2
  3592. else
  3593. AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)])
  3594. if test "$GL_LDFLAGS" = ""; then
  3595. GLLIB='-lGLU -lGL $(LIB_X11)'
  3596. else
  3597. GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)'
  3598. fi
  3599. if test "$GL_INCLUDE" = ""; then
  3600. GLINC=""
  3601. else
  3602. GLINC="-I$GL_INCLUDE"
  3603. fi
  3604. AC_MSG_RESULT($ac_cv_have_gl)
  3605. $1
  3606. fi
  3607. fi
  3608. AC_SUBST(GLINC)
  3609. AC_SUBST(GLLIB)
  3610. ])
  3611. dnl shadow password and PAM magic - maintained by ossi@kde.org
  3612. AC_DEFUN([KDE_PAM], [
  3613. AC_REQUIRE([KDE_CHECK_LIBDL])
  3614. want_pam=
  3615. AC_ARG_WITH(pam,
  3616. AC_HELP_STRING([--with-pam[=ARG]],[enable support for PAM: ARG=[yes|no|service name]]),
  3617. [ if test "x$withval" = "xyes"; then
  3618. want_pam=yes
  3619. pam_service=kde
  3620. elif test "x$withval" = "xno"; then
  3621. want_pam=no
  3622. else
  3623. want_pam=yes
  3624. pam_service=$withval
  3625. fi
  3626. ], [ pam_service=kde ])
  3627. use_pam=
  3628. PAMLIBS=
  3629. if test "x$want_pam" != xno; then
  3630. AC_CHECK_LIB(pam, pam_start, [
  3631. AC_CHECK_HEADER(security/pam_appl.h,
  3632. [ pam_header=security/pam_appl.h ],
  3633. [ AC_CHECK_HEADER(pam/pam_appl.h,
  3634. [ pam_header=pam/pam_appl.h ],
  3635. [
  3636. AC_MSG_WARN([PAM detected, but no headers found!
  3637. Make sure you have the necessary development packages installed.])
  3638. ]
  3639. )
  3640. ]
  3641. )
  3642. ], , $LIBDL)
  3643. if test -z "$pam_header"; then
  3644. if test "x$want_pam" = xyes; then
  3645. AC_MSG_ERROR([--with-pam was specified, but cannot compile with PAM!])
  3646. fi
  3647. else
  3648. AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)])
  3649. PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL"
  3650. use_pam=yes
  3651. dnl darwin claims to be something special
  3652. if test "$pam_header" = "pam/pam_appl.h"; then
  3653. AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your PAM headers are in pam/ instead of security/])
  3654. fi
  3655. dnl test whether struct pam_message is const (Linux) or not (Sun)
  3656. AC_MSG_CHECKING(for const pam_message)
  3657. AC_EGREP_HEADER([struct pam_message], $pam_header,
  3658. [ AC_EGREP_HEADER([const struct pam_message], $pam_header,
  3659. [AC_MSG_RESULT([const: Linux-type PAM])],
  3660. [AC_MSG_RESULT([nonconst: Sun-type PAM])
  3661. AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])]
  3662. )],
  3663. [AC_MSG_RESULT([not found - assume const, Linux-type PAM])])
  3664. fi
  3665. fi
  3666. AC_SUBST(PAMLIBS)
  3667. ])
  3668. dnl DEF_PAM_SERVICE(arg name, full name, define name)
  3669. AC_DEFUN([DEF_PAM_SERVICE], [
  3670. AC_ARG_WITH($1-pam,
  3671. AC_HELP_STRING([--with-$1-pam=[val]],[override PAM service from --with-pam for $2]),
  3672. [ if test "x$use_pam" = xyes; then
  3673. $3_PAM_SERVICE=$withval
  3674. else
  3675. AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected.
  3676. You may want to enforce it by using --with-pam.])
  3677. fi
  3678. ],
  3679. [ if test "x$use_pam" = xyes; then
  3680. $3_PAM_SERVICE="$pam_service"
  3681. fi
  3682. ])
  3683. if test -n "$$3_PAM_SERVICE"; then
  3684. AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE])
  3685. AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2])
  3686. fi
  3687. AC_SUBST($3_PAM_SERVICE)
  3688. ])
  3689. AC_DEFUN([KDE_SHADOWPASSWD], [
  3690. AC_REQUIRE([KDE_PAM])
  3691. AC_CHECK_LIB(shadow, getspent,
  3692. [ LIBSHADOW="-lshadow"
  3693. ac_use_shadow=yes
  3694. ],
  3695. [ dnl for UnixWare
  3696. AC_CHECK_LIB(gen, getspent,
  3697. [ LIBGEN="-lgen"
  3698. ac_use_shadow=yes
  3699. ],
  3700. [ AC_CHECK_FUNC(getspent,
  3701. [ ac_use_shadow=yes ],
  3702. [ ac_use_shadow=no ])
  3703. ])
  3704. ])
  3705. AC_SUBST(LIBSHADOW)
  3706. AC_SUBST(LIBGEN)
  3707. AC_MSG_CHECKING([for shadow passwords])
  3708. AC_ARG_WITH(shadow,
  3709. AC_HELP_STRING([--with-shadow],[If you want shadow password support]),
  3710. [ if test "x$withval" != "xno"; then
  3711. use_shadow=yes
  3712. else
  3713. use_shadow=no
  3714. fi
  3715. ], [
  3716. use_shadow="$ac_use_shadow"
  3717. ])
  3718. if test "x$use_shadow" = xyes; then
  3719. AC_MSG_RESULT(yes)
  3720. AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords])
  3721. else
  3722. AC_MSG_RESULT(no)
  3723. LIBSHADOW=
  3724. LIBGEN=
  3725. fi
  3726. dnl finally make the relevant binaries setuid root, if we have shadow passwds.
  3727. dnl this still applies, if we could use it indirectly through pam.
  3728. if test "x$use_shadow" = xyes ||
  3729. ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then
  3730. case $host in
  3731. *-*-freebsd* | *-*-netbsd* | *-*-openbsd*)
  3732. SETUIDFLAGS="-m 4755 -o root";;
  3733. *)
  3734. SETUIDFLAGS="-m 4755";;
  3735. esac
  3736. fi
  3737. AC_SUBST(SETUIDFLAGS)
  3738. ])
  3739. AC_DEFUN([KDE_PASSWDLIBS], [
  3740. AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT
  3741. AC_REQUIRE([KDE_PAM])
  3742. AC_REQUIRE([KDE_SHADOWPASSWD])
  3743. if test "x$use_pam" = "xyes"; then
  3744. PASSWDLIBS="$PAMLIBS"
  3745. else
  3746. PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN"
  3747. fi
  3748. dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but
  3749. dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires
  3750. dnl root to read, so kcheckpass needs to be root (even when using pam, since pam
  3751. dnl may need to read /etc/master.passwd).
  3752. case $host in
  3753. *-*-freebsd*)
  3754. SETUIDFLAGS="-m 4755 -o root"
  3755. ;;
  3756. *)
  3757. ;;
  3758. esac
  3759. AC_SUBST(PASSWDLIBS)
  3760. ])
  3761. AC_DEFUN([KDE_CHECK_LIBDL],
  3762. [
  3763. AC_CHECK_LIB(dl, dlopen, [
  3764. LIBDL="-ldl"
  3765. ac_cv_have_dlfcn=yes
  3766. ])
  3767. AC_CHECK_LIB(dld, shl_unload, [
  3768. LIBDL="-ldld"
  3769. ac_cv_have_shload=yes
  3770. ])
  3771. AC_SUBST(LIBDL)
  3772. ])
  3773. AC_DEFUN([KDE_CHECK_DLOPEN],
  3774. [
  3775. KDE_CHECK_LIBDL
  3776. AC_CHECK_HEADERS(dlfcn.h dl.h)
  3777. if test "$ac_cv_header_dlfcn_h" = "no"; then
  3778. ac_cv_have_dlfcn=no
  3779. fi
  3780. if test "$ac_cv_header_dl_h" = "no"; then
  3781. ac_cv_have_shload=no
  3782. fi
  3783. dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE
  3784. dnl (MM)
  3785. AC_ARG_ENABLE(dlopen,
  3786. AC_HELP_STRING([--disable-dlopen],[link statically [default=no]]),
  3787. enable_dlopen=$enableval,
  3788. enable_dlopen=yes)
  3789. # override the user's opinion, if we know it better ;)
  3790. if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then
  3791. enable_dlopen=no
  3792. fi
  3793. if test "$ac_cv_have_dlfcn" = "yes"; then
  3794. AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn])
  3795. fi
  3796. if test "$ac_cv_have_shload" = "yes"; then
  3797. AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload])
  3798. fi
  3799. if test "$enable_dlopen" = no ; then
  3800. test -n "$1" && eval $1
  3801. else
  3802. test -n "$2" && eval $2
  3803. fi
  3804. ])
  3805. AC_DEFUN([KDE_CHECK_DYNAMIC_LOADING],
  3806. [
  3807. KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no)
  3808. KDE_PROG_LIBTOOL
  3809. AC_MSG_CHECKING([dynamic loading])
  3810. eval "`egrep '^build_libtool_libs=' libtool`"
  3811. if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then
  3812. dynamic_loading=yes
  3813. AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING)
  3814. else
  3815. dynamic_loading=no
  3816. fi
  3817. AC_MSG_RESULT($dynamic_loading)
  3818. if test "$dynamic_loading" = "yes"; then
  3819. $1
  3820. else
  3821. $2
  3822. fi
  3823. ])
  3824. AC_DEFUN([KDE_ADD_INCLUDES],
  3825. [
  3826. if test -z "$1"; then
  3827. test_include="Pix.h"
  3828. else
  3829. test_include="$1"
  3830. fi
  3831. AC_MSG_CHECKING([for libg++ ($test_include)])
  3832. AC_CACHE_VAL(kde_cv_libgpp_includes,
  3833. [
  3834. kde_cv_libgpp_includes=no
  3835. for ac_dir in \
  3836. \
  3837. /usr/include/g++ \
  3838. /usr/include \
  3839. /usr/unsupported/include \
  3840. /opt/include \
  3841. $extra_include \
  3842. ; \
  3843. do
  3844. if test -r "$ac_dir/$test_include"; then
  3845. kde_cv_libgpp_includes=$ac_dir
  3846. break
  3847. fi
  3848. done
  3849. ])
  3850. AC_MSG_RESULT($kde_cv_libgpp_includes)
  3851. if test "$kde_cv_libgpp_includes" != "no"; then
  3852. all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES"
  3853. fi
  3854. ])
  3855. ])
  3856. AC_DEFUN([KDE_CHECK_LIBPTHREAD],
  3857. [
  3858. dnl This code is here specifically to handle the
  3859. dnl various flavors of threading library on FreeBSD
  3860. dnl 4-, 5-, and 6-, and the (weird) rules around it.
  3861. dnl There may be an environment PTHREAD_LIBS that
  3862. dnl specifies what to use; otherwise, search for it.
  3863. dnl -pthread is special cased and unsets LIBPTHREAD
  3864. dnl below if found.
  3865. LIBPTHREAD=""
  3866. if test -n "$PTHREAD_LIBS"; then
  3867. if test "x$PTHREAD_LIBS" = "x-pthread" ; then
  3868. LIBPTHREAD="PTHREAD"
  3869. else
  3870. PTHREAD_LIBS_save="$PTHREAD_LIBS"
  3871. PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'`
  3872. AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS])
  3873. KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [
  3874. LIBPTHREAD="$PTHREAD_LIBS_save"])
  3875. PTHREAD_LIBS="$PTHREAD_LIBS_save"
  3876. fi
  3877. fi
  3878. dnl Is this test really needed, in the face of the Tru64 test below?
  3879. if test -z "$LIBPTHREAD"; then
  3880. AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"])
  3881. fi
  3882. dnl This is a special Tru64 check, see BR 76171 issue #18.
  3883. if test -z "$LIBPTHREAD" ; then
  3884. AC_MSG_CHECKING([for pthread_create in -lpthread])
  3885. kde_safe_libs=$LIBS
  3886. LIBS="$LIBS -lpthread"
  3887. AC_TRY_LINK([#include <pthread.h>],[(void)pthread_create(0,0,0,0);],[
  3888. AC_MSG_RESULT(yes)
  3889. LIBPTHREAD="-lpthread"],[
  3890. AC_MSG_RESULT(no)])
  3891. LIBS=$kde_safe_libs
  3892. fi
  3893. dnl Un-special-case for FreeBSD.
  3894. if test "x$LIBPTHREAD" = "xPTHREAD" ; then
  3895. LIBPTHREAD=""
  3896. fi
  3897. AC_SUBST(LIBPTHREAD)
  3898. ])
  3899. AC_DEFUN([KDE_CHECK_PTHREAD_OPTION],
  3900. [
  3901. USE_THREADS=""
  3902. if test -z "$LIBPTHREAD"; then
  3903. KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-D_THREAD_SAFE -pthread"])
  3904. fi
  3905. AH_VERBATIM(__svr_define, [
  3906. #if defined(__SVR4) && !defined(__svr4__)
  3907. #define __svr4__ 1
  3908. #endif
  3909. ])
  3910. case $host_os in
  3911. solaris*)
  3912. KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"])
  3913. CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4"
  3914. ;;
  3915. freebsd*)
  3916. CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE $PTHREAD_CFLAGS"
  3917. ;;
  3918. aix*)
  3919. CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE"
  3920. LIBPTHREAD="$LIBPTHREAD -lc_r"
  3921. ;;
  3922. linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT"
  3923. if test "$CXX" = "KCC"; then
  3924. CXXFLAGS="$CXXFLAGS --thread_safe"
  3925. NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe"
  3926. fi
  3927. ;;
  3928. *)
  3929. ;;
  3930. esac
  3931. AC_SUBST(USE_THREADS)
  3932. AC_SUBST(LIBPTHREAD)
  3933. ])
  3934. AC_DEFUN([KDE_CHECK_THREADING],
  3935. [
  3936. AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
  3937. AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION])
  3938. dnl default is yes if libpthread is found and no if no libpthread is available
  3939. if test -z "$LIBPTHREAD"; then
  3940. if test -z "$USE_THREADS"; then
  3941. kde_check_threading_default=no
  3942. else
  3943. kde_check_threading_default=yes
  3944. fi
  3945. else
  3946. kde_check_threading_default=yes
  3947. fi
  3948. AC_ARG_ENABLE(threading,AC_HELP_STRING([--disable-threading],[disables threading even if libpthread found]),
  3949. kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default)
  3950. if test "x$kde_use_threading" = "xyes"; then
  3951. AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)])
  3952. fi
  3953. ])
  3954. AC_DEFUN([KDE_TRY_LINK_PYTHON],
  3955. [
  3956. if test "$kde_python_link_found" = no; then
  3957. if test "$1" = normal; then
  3958. AC_MSG_CHECKING(if a Python application links)
  3959. else
  3960. AC_MSG_CHECKING(if Python depends on $2)
  3961. fi
  3962. AC_CACHE_VAL(kde_cv_try_link_python_$1,
  3963. [
  3964. kde_save_cflags="$CFLAGS"
  3965. CFLAGS="$CFLAGS $PYTHONINC"
  3966. kde_save_libs="$LIBS"
  3967. LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET"
  3968. kde_save_ldflags="$LDFLAGS"
  3969. LDFLAGS="$LDFLAGS $PYTHONLIB"
  3970. AC_TRY_LINK(
  3971. [
  3972. #include <Python.h>
  3973. ],[
  3974. PySys_SetArgv(1, 0);
  3975. ],
  3976. [kde_cv_try_link_python_$1=yes],
  3977. [kde_cv_try_link_python_$1=no]
  3978. )
  3979. CFLAGS="$kde_save_cflags"
  3980. LIBS="$kde_save_libs"
  3981. LDFLAGS="$kde_save_ldflags"
  3982. ])
  3983. if test "$kde_cv_try_link_python_$1" = "yes"; then
  3984. AC_MSG_RESULT(yes)
  3985. kde_python_link_found=yes
  3986. if test ! "$1" = normal; then
  3987. LIBPYTHON="$LIBPYTHON $2"
  3988. fi
  3989. $3
  3990. else
  3991. AC_MSG_RESULT(no)
  3992. $4
  3993. fi
  3994. fi
  3995. ])
  3996. AC_DEFUN([KDE_CHECK_PYTHON_DIR],
  3997. [
  3998. AC_MSG_CHECKING([for Python directory])
  3999. AC_CACHE_VAL(kde_cv_pythondir,
  4000. [
  4001. if test -z "$PYTHONDIR"; then
  4002. kde_cv_pythondir=/usr/local
  4003. else
  4004. kde_cv_pythondir="$PYTHONDIR"
  4005. fi
  4006. ])
  4007. AC_ARG_WITH(pythondir,
  4008. AC_HELP_STRING([--with-pythondir=pythondir],[use python installed in pythondir]),
  4009. [
  4010. ac_python_dir=$withval
  4011. ], ac_python_dir=$kde_cv_pythondir
  4012. )
  4013. AC_MSG_RESULT($ac_python_dir)
  4014. ])
  4015. AC_DEFUN([KDE_CHECK_PYTHON_INTERN],
  4016. [
  4017. AC_REQUIRE([KDE_CHECK_LIBDL])
  4018. AC_REQUIRE([KDE_CHECK_LIBPTHREAD])
  4019. AC_REQUIRE([KDE_CHECK_PYTHON_DIR])
  4020. if test -z "$1"; then
  4021. version="1.5"
  4022. else
  4023. version="$1"
  4024. fi
  4025. AC_MSG_CHECKING([for Python$version])
  4026. python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes"
  4027. AC_FIND_FILE(Python.h, $python_incdirs, python_incdir)
  4028. if test ! -r $python_incdir/Python.h; then
  4029. AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir)
  4030. python_incdir=$python_incdir/python$version
  4031. if test ! -r $python_incdir/Python.h; then
  4032. python_incdir=no
  4033. fi
  4034. fi
  4035. PYTHONINC=-I$python_incdir
  4036. python_libdirs="$ac_python_dir/lib$tdelibsuff /usr/lib$tdelibsuff /usr/local /usr/lib$tdelibsuff $kde_extra_libs"
  4037. AC_FIND_FILE(libpython$version.so, $python_libdirs, python_libdir)
  4038. if test ! -r $python_libdir/libpython$version.so; then
  4039. AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir)
  4040. if test ! -r $python_libdir/libpython$version.a; then
  4041. AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir)
  4042. python_libdir=$python_libdir/python$version/config
  4043. if test ! -r $python_libdir/libpython$version.a; then
  4044. python_libdir=no
  4045. fi
  4046. fi
  4047. fi
  4048. PYTHONLIB=-L$python_libdir
  4049. kde_orig_LIBPYTHON=$LIBPYTHON
  4050. if test -z "$LIBPYTHON"; then
  4051. LIBPYTHON=-lpython$version
  4052. fi
  4053. AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir)
  4054. python_moddir=$python_moddir/python$version
  4055. if test ! -r $python_moddir/copy.py; then
  4056. python_moddir=no
  4057. fi
  4058. PYTHONMODDIR=$python_moddir
  4059. AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir)
  4060. if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then
  4061. LIBPYTHON=$kde_orig_LIBPYTHON
  4062. test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB=""
  4063. test "x$PYTHONINC" = "x-Ino" && PYTHONINC=""
  4064. $2
  4065. else
  4066. dnl Note: this test is very weak
  4067. kde_python_link_found=no
  4068. KDE_TRY_LINK_PYTHON(normal)
  4069. KDE_TRY_LINK_PYTHON(m, -lm)
  4070. KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD)
  4071. KDE_TRY_LINK_PYTHON(tcl, -ltcl)
  4072. KDE_TRY_LINK_PYTHON(db2, -ldb2)
  4073. KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm])
  4074. KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil])
  4075. KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil])
  4076. KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3])
  4077. KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil])
  4078. KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm])
  4079. KDE_TRY_LINK_PYTHON(pthread_and_panel_curses, [$LIBPTHREAD $LIBDL -lm -lpanel -lcurses])
  4080. KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [],
  4081. [AC_MSG_WARN([it seems, Python depends on another library.
  4082. Please set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this
  4083. and contact the authors to let them know about this problem])
  4084. ])
  4085. LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET"
  4086. AC_SUBST(PYTHONINC)
  4087. AC_SUBST(PYTHONLIB)
  4088. AC_SUBST(LIBPYTHON)
  4089. AC_SUBST(PYTHONMODDIR)
  4090. AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python])
  4091. fi
  4092. ])
  4093. AC_DEFUN([KDE_CHECK_PYTHON],
  4094. [
  4095. KDE_CHECK_PYTHON_INTERN("2.5",
  4096. [KDE_CHECK_PYTHON_INTERN("2.4",
  4097. [KDE_CHECK_PYTHON_INTERN("2.3",
  4098. [KDE_CHECK_PYTHON_INTERN("2.2",
  4099. [KDE_CHECK_PYTHON_INTERN("2.1",
  4100. [KDE_CHECK_PYTHON_INTERN("2.0",
  4101. [KDE_CHECK_PYTHON_INTERN($1, $2) ])
  4102. ])
  4103. ])
  4104. ])
  4105. ])
  4106. ])
  4107. ])
  4108. AC_DEFUN([KDE_CHECK_STL],
  4109. [
  4110. AC_LANG_SAVE
  4111. AC_LANG_CPLUSPLUS
  4112. ac_save_CXXFLAGS="$CXXFLAGS"
  4113. CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`"
  4114. AC_MSG_CHECKING([if C++ programs can be compiled])
  4115. AC_CACHE_VAL(kde_cv_stl_works,
  4116. [
  4117. AC_TRY_COMPILE([
  4118. #include <string>
  4119. using namespace std;
  4120. ],[
  4121. string astring="Hallo Welt.";
  4122. astring.erase(0, 6); // now astring is "Welt"
  4123. return 0;
  4124. ], kde_cv_stl_works=yes,
  4125. kde_cv_stl_works=no)
  4126. ])
  4127. AC_MSG_RESULT($kde_cv_stl_works)
  4128. if test "$kde_cv_stl_works" = "yes"; then
  4129. # back compatible
  4130. AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI])
  4131. else
  4132. AC_MSG_ERROR([Your Installation isn't able to compile simple C++ programs.
  4133. Check config.log for details - if you're using a Linux distribution you might miss
  4134. a package named similar to libstdc++-dev.])
  4135. fi
  4136. CXXFLAGS="$ac_save_CXXFLAGS"
  4137. AC_LANG_RESTORE
  4138. ])
  4139. AC_DEFUN([AC_FIND_QIMGIO],
  4140. [AC_REQUIRE([AC_FIND_JPEG])
  4141. AC_REQUIRE([KDE_CHECK_EXTRA_LIBS])
  4142. AC_MSG_CHECKING([for qimgio])
  4143. AC_CACHE_VAL(ac_cv_lib_qimgio,
  4144. [
  4145. AC_LANG_SAVE
  4146. AC_LANG_CPLUSPLUS
  4147. ac_save_LIBS="$LIBS"
  4148. ac_save_CXXFLAGS="$CXXFLAGS"
  4149. LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBTQT"
  4150. CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes"
  4151. AC_TRY_RUN(dnl
  4152. [
  4153. #include <qimageio.h>
  4154. #include <qstring.h>
  4155. int main() {
  4156. QString t = "hallo";
  4157. t.fill('t');
  4158. qInitImageIO();
  4159. }
  4160. ],
  4161. ac_cv_lib_qimgio=yes,
  4162. ac_cv_lib_qimgio=no,
  4163. ac_cv_lib_qimgio=no)
  4164. LIBS="$ac_save_LIBS"
  4165. CXXFLAGS="$ac_save_CXXFLAGS"
  4166. AC_LANG_RESTORE
  4167. ])dnl
  4168. if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then
  4169. LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG"
  4170. AC_MSG_RESULT(yes)
  4171. AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available])
  4172. AC_SUBST(LIBQIMGIO)
  4173. else
  4174. AC_MSG_RESULT(not found)
  4175. fi
  4176. ])
  4177. AC_DEFUN([AM_DISABLE_LIBRARIES],
  4178. [
  4179. AC_PROVIDE([AM_ENABLE_STATIC])
  4180. AC_PROVIDE([AM_ENABLE_SHARED])
  4181. enable_static=no
  4182. enable_shared=yes
  4183. ])
  4184. AC_DEFUN([AC_CHECK_UTMP_FILE],
  4185. [
  4186. AC_MSG_CHECKING([for utmp file])
  4187. AC_CACHE_VAL(kde_cv_utmp_file,
  4188. [
  4189. kde_cv_utmp_file=no
  4190. for ac_file in \
  4191. \
  4192. /var/run/utmp \
  4193. /var/adm/utmp \
  4194. /etc/utmp \
  4195. ; \
  4196. do
  4197. if test -r "$ac_file"; then
  4198. kde_cv_utmp_file=$ac_file
  4199. break
  4200. fi
  4201. done
  4202. ])
  4203. if test "$kde_cv_utmp_file" != "no"; then
  4204. AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries])
  4205. $1
  4206. AC_MSG_RESULT($kde_cv_utmp_file)
  4207. else
  4208. $2
  4209. AC_MSG_RESULT([non found])
  4210. fi
  4211. ])
  4212. AC_DEFUN([KDE_CREATE_SUBDIRSLIST],
  4213. [
  4214. DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin"
  4215. TOPSUBDIRS=""
  4216. if test ! -s $srcdir/subdirs; then
  4217. dnl Note: Makefile.common creates subdirs, so this is just a fallback
  4218. files=`cd $srcdir && ls -1`
  4219. dirs=`for i in $files; do if test -d $i; then echo $i; fi; done`
  4220. for i in $dirs; do
  4221. echo $i >> $srcdir/subdirs
  4222. done
  4223. fi
  4224. ac_topsubdirs=
  4225. if test -s $srcdir/inst-apps; then
  4226. ac_topsubdirs="`cat $srcdir/inst-apps`"
  4227. elif test -s $srcdir/subdirs; then
  4228. ac_topsubdirs="`cat $srcdir/subdirs`"
  4229. fi
  4230. for i in $ac_topsubdirs; do
  4231. AC_MSG_CHECKING([if $i should be compiled])
  4232. if test -d $srcdir/$i; then
  4233. install_it="yes"
  4234. for j in $DO_NOT_COMPILE; do
  4235. if test $i = $j; then
  4236. install_it="no"
  4237. fi
  4238. done
  4239. else
  4240. install_it="no"
  4241. fi
  4242. AC_MSG_RESULT($install_it)
  4243. vari=`echo $i | sed -e 's,[[-+.@]],_,g'`
  4244. if test $install_it = "yes"; then
  4245. TOPSUBDIRS="$TOPSUBDIRS $i"
  4246. eval "$vari""_SUBDIR_included=yes"
  4247. else
  4248. eval "$vari""_SUBDIR_included=no"
  4249. fi
  4250. done
  4251. AC_SUBST(TOPSUBDIRS)
  4252. ])
  4253. AC_DEFUN([KDE_CHECK_NAMESPACES],
  4254. [
  4255. AC_MSG_CHECKING(whether C++ compiler supports namespaces)
  4256. AC_LANG_SAVE
  4257. AC_LANG_CPLUSPLUS
  4258. AC_TRY_COMPILE([
  4259. ],
  4260. [
  4261. namespace Foo {
  4262. extern int i;
  4263. namespace Bar {
  4264. extern int i;
  4265. }
  4266. }
  4267. int Foo::i = 0;
  4268. int Foo::Bar::i = 1;
  4269. ],[
  4270. AC_MSG_RESULT(yes)
  4271. AC_DEFINE(HAVE_NAMESPACES)
  4272. ], [
  4273. AC_MSG_RESULT(no)
  4274. ])
  4275. AC_LANG_RESTORE
  4276. ])
  4277. dnl ------------------------------------------------------------------------
  4278. dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org
  4279. dnl ------------------------------------------------------------------------
  4280. dnl
  4281. AC_DEFUN([AC_CHECK_S_ISSOCK],
  4282. [
  4283. AC_MSG_CHECKING(for S_ISSOCK)
  4284. AC_CACHE_VAL(ac_cv_have_s_issock,
  4285. [
  4286. AC_TRY_LINK(
  4287. [
  4288. #include <sys/stat.h>
  4289. ],
  4290. [
  4291. struct stat buff;
  4292. int b = S_ISSOCK( buff.st_mode );
  4293. ],
  4294. ac_cv_have_s_issock=yes,
  4295. ac_cv_have_s_issock=no)
  4296. ])
  4297. AC_MSG_RESULT($ac_cv_have_s_issock)
  4298. if test "$ac_cv_have_s_issock" = "yes"; then
  4299. AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.])
  4300. fi
  4301. AH_VERBATIM(_ISSOCK,
  4302. [
  4303. #ifndef HAVE_S_ISSOCK
  4304. #define HAVE_S_ISSOCK
  4305. #define S_ISSOCK(mode) (1==0)
  4306. #endif
  4307. ])
  4308. ])
  4309. dnl ------------------------------------------------------------------------
  4310. dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org
  4311. dnl ------------------------------------------------------------------------
  4312. dnl
  4313. AC_DEFUN([AC_CHECK_KDEMAXPATHLEN],
  4314. [
  4315. AC_MSG_CHECKING(for MAXPATHLEN)
  4316. AC_CACHE_VAL(ac_cv_maxpathlen,
  4317. [
  4318. cat > conftest.$ac_ext <<EOF
  4319. #ifdef STDC_HEADERS
  4320. # include <stdlib.h>
  4321. #endif
  4322. #include <stdio.h>
  4323. #include <sys/param.h>
  4324. #ifndef MAXPATHLEN
  4325. #define MAXPATHLEN 1024
  4326. #endif
  4327. KDE_HELLO MAXPATHLEN
  4328. EOF
  4329. ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out"
  4330. if AC_TRY_EVAL(ac_try) && test -s conftest.out; then
  4331. ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out`
  4332. else
  4333. ac_cv_maxpathlen=1024
  4334. fi
  4335. rm conftest.*
  4336. ])
  4337. AC_MSG_RESULT($ac_cv_maxpathlen)
  4338. AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] )
  4339. ])
  4340. AC_DEFUN([KDE_CHECK_HEADER],
  4341. [
  4342. kde_safe_cppflags=$CPPFLAGS
  4343. CPPFLAGS="$CPPFLAGS $all_includes"
  4344. AC_LANG_SAVE
  4345. AC_LANG_CPLUSPLUS
  4346. AC_CHECK_HEADER([$1], [$2], [$3], [$4])
  4347. AC_LANG_RESTORE
  4348. CPPFLAGS=$kde_safe_cppflags
  4349. ])
  4350. AC_DEFUN([KDE_CHECK_HEADERS],
  4351. [
  4352. AH_CHECK_HEADERS([$1])
  4353. AC_LANG_SAVE
  4354. kde_safe_cppflags=$CPPFLAGS
  4355. CPPFLAGS="$CPPFLAGS $all_includes"
  4356. AC_LANG_CPLUSPLUS
  4357. AC_CHECK_HEADERS([$1], [$2], [$3], [$4])
  4358. CPPFLAGS=$kde_safe_cppflags
  4359. AC_LANG_RESTORE
  4360. ])
  4361. AC_DEFUN([KDE_FAST_CONFIGURE],
  4362. [
  4363. dnl makes configure fast (needs perl)
  4364. AC_ARG_ENABLE(fast-perl, AC_HELP_STRING([--disable-fast-perl],[disable fast Makefile generation (needs perl)]),
  4365. with_fast_perl=$enableval, with_fast_perl=yes)
  4366. ])
  4367. AC_DEFUN([KDE_CONF_FILES],
  4368. [
  4369. val=
  4370. if test -f $srcdir/configure.files ; then
  4371. val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files`
  4372. fi
  4373. CONF_FILES=
  4374. if test -n "$val" ; then
  4375. for i in $val ; do
  4376. CONF_FILES="$CONF_FILES $i"
  4377. done
  4378. fi
  4379. AC_SUBST(CONF_FILES)
  4380. ])dnl
  4381. dnl This sets the prefix, for arts and tdelibs
  4382. dnl Do NOT use in any other module.
  4383. dnl It only looks at --prefix, TDEDIR and falls back to /usr/local/kde
  4384. AC_DEFUN([KDE_SET_PREFIX_CORE],
  4385. [
  4386. unset CDPATH
  4387. dnl make $TDEDIR the default for the installation
  4388. AC_PREFIX_DEFAULT(${TDEDIR:-/usr/local/kde})
  4389. if test "x$prefix" = "xNONE"; then
  4390. prefix=$ac_default_prefix
  4391. ac_configure_args="$ac_configure_args --prefix=$prefix"
  4392. fi
  4393. # And delete superfluous '/' to make compares easier
  4394. prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
  4395. exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
  4396. kde_libs_prefix='$(prefix)'
  4397. kde_libs_htmldir='$(kde_htmldir)'
  4398. AC_SUBST(kde_libs_prefix)
  4399. AC_SUBST(kde_libs_htmldir)
  4400. KDE_FAST_CONFIGURE
  4401. KDE_CONF_FILES
  4402. ])
  4403. AC_DEFUN([KDE_SET_PREFIX],
  4404. [
  4405. unset CDPATH
  4406. dnl We can't give real code to that macro, only a value.
  4407. dnl It only matters for --help, since we set the prefix in this function anyway.
  4408. AC_PREFIX_DEFAULT(${TDEDIR:-the kde prefix})
  4409. KDE_SET_DEFAULT_BINDIRS
  4410. if test "x$prefix" = "xNONE"; then
  4411. dnl no prefix given: look for tde-config in the PATH and deduce the prefix from it
  4412. KDE_FIND_PATH(tde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(tde-config)], [], prepend)
  4413. else
  4414. dnl prefix given: look for tde-config, preferrably in prefix, otherwise in PATH
  4415. kde_save_PATH="$PATH"
  4416. PATH="$exec_prefix/bin:$prefix/bin:$PATH"
  4417. KDE_FIND_PATH(tde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(tde-config)], [], prepend)
  4418. PATH="$kde_save_PATH"
  4419. fi
  4420. kde_libs_prefix=`$KDECONFIG --prefix`
  4421. if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then
  4422. AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for tdelibs.
  4423. This means it has been moved since you installed it.
  4424. This won't work. Please recompile tdelibs for the new prefix.
  4425. ])
  4426. fi
  4427. kde_libs_htmldir=`$KDECONFIG --install html --expandvars`
  4428. AC_MSG_CHECKING([where to install])
  4429. if test "x$prefix" = "xNONE"; then
  4430. prefix=$kde_libs_prefix
  4431. AC_MSG_RESULT([$prefix (as returned by tde-config)])
  4432. else
  4433. dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different
  4434. given_prefix=$prefix
  4435. AC_MSG_RESULT([$prefix (as requested)])
  4436. fi
  4437. # And delete superfluous '/' to make compares easier
  4438. prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
  4439. exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
  4440. given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'`
  4441. AC_SUBST(KDECONFIG)
  4442. AC_SUBST(kde_libs_prefix)
  4443. AC_SUBST(kde_libs_htmldir)
  4444. KDE_FAST_CONFIGURE
  4445. KDE_CONF_FILES
  4446. ])
  4447. pushdef([AC_PROG_INSTALL],
  4448. [
  4449. dnl our own version, testing for a -p flag
  4450. popdef([AC_PROG_INSTALL])
  4451. dnl as AC_PROG_INSTALL works as it works we first have
  4452. dnl to save if the user didn't specify INSTALL, as the
  4453. dnl autoconf one overwrites INSTALL and we have no chance to find
  4454. dnl out afterwards
  4455. test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL
  4456. test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM
  4457. test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT
  4458. AC_PROG_INSTALL
  4459. if test -z "$kde_save_INSTALL_given" ; then
  4460. # OK, user hasn't given any INSTALL, autoconf found one for us
  4461. # now we test, if it supports the -p flag
  4462. AC_MSG_CHECKING(for -p flag to install)
  4463. rm -f confinst.$$.* > /dev/null 2>&1
  4464. echo "Testtest" > confinst.$$.orig
  4465. ac_res=no
  4466. if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then
  4467. if test -f confinst.$$.new ; then
  4468. # OK, -p seems to do no harm to install
  4469. INSTALL="${INSTALL} -p"
  4470. ac_res=yes
  4471. fi
  4472. fi
  4473. rm -f confinst.$$.*
  4474. AC_MSG_RESULT($ac_res)
  4475. fi
  4476. dnl the following tries to resolve some signs and wonders coming up
  4477. dnl with different autoconf/automake versions
  4478. dnl e.g.:
  4479. dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s
  4480. dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS)
  4481. dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s
  4482. dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has
  4483. dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the
  4484. dnl install-@DIR@PROGRAMS targets to explicitly use that flag
  4485. dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as
  4486. dnl INSTALL_SCRIPT, which breaks with automake <= 1.4
  4487. dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure
  4488. dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from
  4489. dnl automake (due to broken Makefile.am or whatever) to install programs,
  4490. dnl and so does not see the -s flag in automake > 1.4
  4491. dnl to clean up that mess we:
  4492. dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG
  4493. dnl which cleans KDE's program with automake > 1.4;
  4494. dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems
  4495. dnl with automake<=1.4
  4496. dnl note that dues to this sometimes two '-s' flags are used (if KDE
  4497. dnl properly uses install-@DIR@PROGRAMS, but I don't care
  4498. dnl
  4499. dnl And to all this comes, that I even can't write in comments variable
  4500. dnl names used by automake, because it is so stupid to think I wanted to
  4501. dnl _use_ them, therefor I have written A_M_... instead of AM_
  4502. dnl hmm, I wanted to say something ... ahh yes: Arghhh.
  4503. if test -z "$kde_save_INSTALL_PROGRAM_given" ; then
  4504. INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)'
  4505. fi
  4506. if test -z "$kde_save_INSTALL_SCRIPT_given" ; then
  4507. INSTALL_SCRIPT='${INSTALL}'
  4508. fi
  4509. ])dnl
  4510. AC_DEFUN([KDE_LANG_CPLUSPLUS],
  4511. [AC_LANG_CPLUSPLUS
  4512. ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC'
  4513. pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS])
  4514. ])
  4515. pushdef([AC_LANG_CPLUSPLUS],
  4516. [popdef([AC_LANG_CPLUSPLUS])
  4517. KDE_LANG_CPLUSPLUS
  4518. ])
  4519. AC_DEFUN([KDE_CHECK_LONG_LONG],
  4520. [
  4521. AC_MSG_CHECKING(for long long)
  4522. AC_CACHE_VAL(kde_cv_c_long_long,
  4523. [
  4524. AC_LANG_SAVE
  4525. AC_LANG_CPLUSPLUS
  4526. AC_TRY_LINK([], [
  4527. long long foo = 0;
  4528. foo = foo+1;
  4529. ],
  4530. kde_cv_c_long_long=yes, kde_cv_c_long_long=no)
  4531. AC_LANG_RESTORE
  4532. ])
  4533. AC_MSG_RESULT($kde_cv_c_long_long)
  4534. if test "$kde_cv_c_long_long" = yes; then
  4535. AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype])
  4536. fi
  4537. ])
  4538. AC_DEFUN([KDE_CHECK_LIB],
  4539. [
  4540. kde_save_LDFLAGS="$LDFLAGS"
  4541. dnl AC_CHECK_LIB modifies LIBS, so save it here
  4542. kde_save_LIBS="$LIBS"
  4543. LDFLAGS="$LDFLAGS $all_libraries"
  4544. case $host_os in
  4545. aix*) LDFLAGS="-brtl $LDFLAGS"
  4546. test "$GCC" = yes && LDFLAGS="-Wl,$LDFLAGS"
  4547. ;;
  4548. esac
  4549. AC_CHECK_LIB($1, $2, $3, $4, $5)
  4550. LDFLAGS="$kde_save_LDFLAGS"
  4551. LIBS="$kde_save_LIBS"
  4552. ])
  4553. AC_DEFUN([KDE_JAVA_PREFIX],
  4554. [
  4555. dir=`dirname "$1"`
  4556. base=`basename "$1"`
  4557. list=`ls -1 $dir 2> /dev/null`
  4558. for entry in $list; do
  4559. if test -d $dir/$entry/bin; then
  4560. case $entry in
  4561. $base)
  4562. javadirs="$javadirs $dir/$entry/bin"
  4563. ;;
  4564. esac
  4565. elif test -d $dir/$entry/jre/bin; then
  4566. case $entry in
  4567. $base)
  4568. javadirs="$javadirs $dir/$entry/jre/bin"
  4569. ;;
  4570. esac
  4571. fi
  4572. done
  4573. ])
  4574. dnl KDE_CHEC_JAVA_DIR(onlyjre)
  4575. AC_DEFUN([KDE_CHECK_JAVA_DIR],
  4576. [
  4577. AC_ARG_WITH(java,
  4578. AC_HELP_STRING([--with-java=javadir],[use java installed in javadir, --without-java disables]),
  4579. [ ac_java_dir=$withval
  4580. ], ac_java_dir=""
  4581. )
  4582. AC_MSG_CHECKING([for Java])
  4583. dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH
  4584. if test "x$ac_java_dir" = "xno"; then
  4585. kde_java_bindir=no
  4586. kde_java_includedir=no
  4587. kde_java_libjvmdir=no
  4588. kde_java_libgcjdir=no
  4589. kde_java_libhpidir=no
  4590. else
  4591. if test "x$ac_java_dir" = "x"; then
  4592. dnl No option set -> collect list of candidate paths
  4593. if test -n "$JAVA_HOME"; then
  4594. KDE_JAVA_PREFIX($JAVA_HOME)
  4595. fi
  4596. KDE_JAVA_PREFIX(/usr/j2se)
  4597. KDE_JAVA_PREFIX(/usr/lib/j2se)
  4598. KDE_JAVA_PREFIX(/usr/j*dk*)
  4599. KDE_JAVA_PREFIX(/usr/lib/j*dk*)
  4600. KDE_JAVA_PREFIX(/opt/j*sdk*)
  4601. KDE_JAVA_PREFIX(/usr/lib/java*)
  4602. KDE_JAVA_PREFIX(/usr/java*)
  4603. KDE_JAVA_PREFIX(/usr/java/j*dk*)
  4604. KDE_JAVA_PREFIX(/usr/java/j*re*)
  4605. KDE_JAVA_PREFIX(/usr/lib/SunJava2*)
  4606. KDE_JAVA_PREFIX(/usr/lib/SunJava*)
  4607. KDE_JAVA_PREFIX(/usr/lib/IBMJava2*)
  4608. KDE_JAVA_PREFIX(/usr/lib/IBMJava*)
  4609. KDE_JAVA_PREFIX(/opt/java*)
  4610. kde_cv_path="NONE"
  4611. kde_save_IFS=$IFS
  4612. IFS=':'
  4613. for dir in $PATH; do
  4614. if test -d "$dir"; then
  4615. javadirs="$javadirs $dir"
  4616. fi
  4617. done
  4618. IFS=$kde_save_IFS
  4619. jredirs=
  4620. dnl Now javadirs contains a list of paths that exist, all ending with bin/
  4621. for dir in $javadirs; do
  4622. dnl Check for the java executable
  4623. if test -x "$dir/java"; then
  4624. sane_path=$(cd $dir; /bin/pwd)
  4625. dnl And also check for a libjvm.so somewhere under there
  4626. dnl Since we have to go to the parent dir, /usr/bin is excluded, /usr is too big.
  4627. if test "$sane_path" != "/usr/bin"; then
  4628. libjvmdir=`find $dir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1`
  4629. if test ! -f $libjvmdir/libjvm.so; then continue; fi
  4630. jredirs="$jredirs $dir"
  4631. fi
  4632. fi
  4633. done
  4634. dnl Now jredirs contains a reduced list, of paths where both java and ../**/libjvm.so was found
  4635. JAVAC=
  4636. JAVA=
  4637. kde_java_bindir=no
  4638. for dir in $jredirs; do
  4639. JAVA="$dir/java"
  4640. kde_java_bindir=$dir
  4641. if test -x "$dir/javac"; then
  4642. JAVAC="$dir/javac"
  4643. break
  4644. fi
  4645. done
  4646. if test -n "$JAVAC"; then
  4647. dnl this substitution might not work - well, we test for jni.h below
  4648. kde_java_includedir=`echo $JAVAC | sed -e 's,bin/javac$,include/,'`
  4649. else
  4650. kde_java_includedir=no
  4651. fi
  4652. else
  4653. dnl config option set
  4654. kde_java_bindir=$ac_java_dir/bin
  4655. if test -x $ac_java_dir/bin/java && test ! -x $ac_java_dir/bin/javac; then
  4656. kde_java_includedir=no
  4657. else
  4658. kde_java_includedir=$ac_java_dir/include
  4659. fi
  4660. fi
  4661. fi
  4662. dnl At this point kde_java_bindir and kde_java_includedir are either set or "no"
  4663. if test "x$kde_java_bindir" != "xno"; then
  4664. dnl Look for libjvm.so
  4665. kde_java_libjvmdir=`find $kde_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1`
  4666. dnl Look for libgcj.so
  4667. kde_java_libgcjdir=`find $kde_java_bindir/.. -name libgcj.so | sed 's,libgcj.so,,'|head -n 1`
  4668. dnl Look for libhpi.so and avoid green threads
  4669. kde_java_libhpidir=`find $kde_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,' | head -n 1`
  4670. dnl Now check everything's fine under there
  4671. dnl the include dir is our flag for having the JDK
  4672. if test -d "$kde_java_includedir"; then
  4673. if test ! -x "$kde_java_bindir/javac"; then
  4674. AC_MSG_ERROR([javac not found under $kde_java_bindir - it seems you passed a wrong --with-java.])
  4675. fi
  4676. if test ! -x "$kde_java_bindir/javah"; then
  4677. AC_MSG_ERROR([javah not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
  4678. fi
  4679. if test ! -x "$kde_java_bindir/jar"; then
  4680. AC_MSG_ERROR([jar not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
  4681. fi
  4682. if test ! -r "$kde_java_includedir/jni.h"; then
  4683. AC_MSG_ERROR([jni.h not found under $kde_java_includedir. Use --with-java or --without-java.])
  4684. fi
  4685. jni_includes="-I$kde_java_includedir"
  4686. dnl Strange thing, jni.h requires jni_md.h which is under genunix here..
  4687. dnl and under linux here..
  4688. dnl not needed for gcj
  4689. if test "x$kde_java_libgcjdir" = "x"; then
  4690. test -d "$kde_java_includedir/linux" && jni_includes="$jni_includes -I$kde_java_includedir/linux"
  4691. test -d "$kde_java_includedir/solaris" && jni_includes="$jni_includes -I$kde_java_includedir/solaris"
  4692. test -d "$kde_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_java_includedir/genunix"
  4693. fi
  4694. else
  4695. JAVAC=
  4696. jni_includes=
  4697. fi
  4698. if test "x$kde_java_libgcjdir" = "x"; then
  4699. if test ! -r "$kde_java_libjvmdir/libjvm.so"; then
  4700. AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.])
  4701. fi
  4702. else
  4703. if test ! -r "$kde_java_libgcjdir/libgcj.so"; then
  4704. AC_MSG_ERROR([libgcj.so not found under $kde_java_libgcjdir. Use --without-java.])
  4705. fi
  4706. fi
  4707. if test ! -x "$kde_java_bindir/java"; then
  4708. AC_MSG_ERROR([java not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.])
  4709. fi
  4710. dnl not needed for gcj compile
  4711. if test "x$kde_java_libgcjdir" = "x"; then
  4712. if test ! -r "$kde_java_libhpidir/libhpi.so"; then
  4713. AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.])
  4714. fi
  4715. fi
  4716. if test -n "$jni_includes"; then
  4717. dnl Check for JNI version
  4718. AC_LANG_SAVE
  4719. AC_LANG_CPLUSPLUS
  4720. ac_cxxflags_safe="$CXXFLAGS"
  4721. CXXFLAGS="$CXXFLAGS $all_includes $jni_includes"
  4722. AC_TRY_COMPILE([
  4723. #include <jni.h>
  4724. ],
  4725. [
  4726. #ifndef JNI_VERSION_1_2
  4727. Syntax Error
  4728. #endif
  4729. ],[ kde_jni_works=yes ],
  4730. [ kde_jni_works=no ])
  4731. if test $kde_jni_works = no; then
  4732. AC_MSG_ERROR([Incorrect version of $kde_java_includedir/jni.h.
  4733. You need to have Java Development Kit (JDK) version 1.2.
  4734. Use --with-java to specify another location.
  4735. Use --without-java to configure without java support.
  4736. Or download a newer JDK and try again.
  4737. See e.g. http://java.sun.com/products/jdk/1.2 ])
  4738. fi
  4739. CXXFLAGS="$ac_cxxflags_safe"
  4740. AC_LANG_RESTORE
  4741. dnl All tests ok, inform and subst the variables
  4742. JAVAC=$kde_java_bindir/javac
  4743. JAVAH=$kde_java_bindir/javah
  4744. JAR=$kde_java_bindir/jar
  4745. AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
  4746. if test "x$kde_java_libgcjdir" = "x"; then
  4747. JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_java_libhpidir -lhpi"
  4748. else
  4749. JVMLIBS="-L$kde_java_libgcjdir -lgcj"
  4750. fi
  4751. AC_MSG_RESULT([java JDK in $kde_java_bindir])
  4752. else
  4753. AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
  4754. AC_MSG_RESULT([java JRE in $kde_java_bindir])
  4755. fi
  4756. elif test -d "/Library/Java/Home"; then
  4757. kde_java_bindir="/Library/Java/Home/bin"
  4758. jni_includes="-I/Library/Java/Home/include"
  4759. JAVAC=$kde_java_bindir/javac
  4760. JAVAH=$kde_java_bindir/javah
  4761. JAR=$kde_java_bindir/jar
  4762. JVMLIBS="-Wl,-framework,JavaVM"
  4763. AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is])
  4764. AC_MSG_RESULT([Apple Java Framework])
  4765. else
  4766. AC_MSG_RESULT([none found])
  4767. fi
  4768. AC_SUBST(JAVAC)
  4769. AC_SUBST(JAVAH)
  4770. AC_SUBST(JAR)
  4771. AC_SUBST(JVMLIBS)
  4772. AC_SUBST(jni_includes)
  4773. # for backward compat
  4774. kde_cv_java_includedir=$kde_java_includedir
  4775. kde_cv_java_bindir=$kde_java_bindir
  4776. ])
  4777. dnl this is a redefinition of autoconf 2.5x's AC_FOREACH.
  4778. dnl When the argument list becomes big, as in KDE for AC_OUTPUT in
  4779. dnl big packages, m4_foreach is dog-slow. So use our own version of
  4780. dnl it. (matz@kde.org)
  4781. m4_define([mm_foreach],
  4782. [m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])])
  4783. m4_define([mm_car], [[$1]])
  4784. m4_define([mm_car2], [[$@]])
  4785. m4_define([_mm_foreach],
  4786. [m4_if(m4_quote($2), [], [],
  4787. [m4_define([$1], mm_car($2))$3[]_mm_foreach([$1],
  4788. mm_car2(m4_shift($2)),
  4789. [$3])])])
  4790. m4_define([AC_FOREACH],
  4791. [mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])])
  4792. AC_DEFUN([KDE_NEED_FLEX],
  4793. [
  4794. kde_libs_safe=$LIBS
  4795. LIBS="$LIBS $USER_LDFLAGS"
  4796. AM_PROG_LEX
  4797. LIBS=$kde_libs_safe
  4798. if test -z "$LEXLIB"; then
  4799. AC_MSG_ERROR([You need to have flex installed.])
  4800. fi
  4801. AC_SUBST(LEXLIB)
  4802. ])
  4803. AC_DEFUN([AC_PATH_TQTOPIA],
  4804. [
  4805. dnl TODO: use AC_CACHE_VAL
  4806. if test -z "$1"; then
  4807. qtopia_minver_maj=1
  4808. qtopia_minver_min=5
  4809. qtopia_minver_pat=0
  4810. else
  4811. qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"`
  4812. qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"`
  4813. qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"`
  4814. fi
  4815. qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat"
  4816. qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat"
  4817. AC_REQUIRE([AC_PATH_TQT])
  4818. AC_MSG_CHECKING([for Qtopia])
  4819. LIB_TQTOPIA="-lqpe"
  4820. AC_SUBST(LIB_TQTOPIA)
  4821. kde_qtopia_dirs="$QPEDIR /opt/Qtopia"
  4822. ac_qtopia_incdir=NO
  4823. AC_ARG_WITH(qtopia-dir,
  4824. AC_HELP_STRING([--with-qtopia-dir=DIR],[where the root of Qtopia is installed]),
  4825. [ ac_qtopia_incdir="$withval"/include] )
  4826. qtopia_incdirs=""
  4827. for dir in $kde_qtopia_dirs; do
  4828. qtopia_incdirs="$qtopia_incdirs $dir/include"
  4829. done
  4830. if test ! "$ac_qtopia_incdir" = "NO"; then
  4831. qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs"
  4832. fi
  4833. qtopia_incdir=""
  4834. AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir)
  4835. ac_qtopia_incdir="$qtopia_incdir"
  4836. if test -z "$qtopia_incdir"; then
  4837. AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.])
  4838. fi
  4839. qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`;
  4840. qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`;
  4841. qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`;
  4842. qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat"
  4843. qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat"
  4844. if test "$qtopia_ver" -lt "$qtopia_minver"; then
  4845. AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr
  4846. is required.])
  4847. fi
  4848. AC_LANG_SAVE
  4849. AC_LANG_CPLUSPLUS
  4850. ac_cxxflags_safe="$CXXFLAGS"
  4851. ac_ldflags_safe="$LDFLAGS"
  4852. ac_libs_safe="$LIBS"
  4853. CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes"
  4854. LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS"
  4855. LIBS="$LIBS $LIB_TQTOPIA $LIBTQT"
  4856. cat > conftest.$ac_ext <<EOF
  4857. #include "confdefs.h"
  4858. #include <qpe/qpeapplication.h>
  4859. #include <qpe/version.h>
  4860. int main( int argc, char **argv )
  4861. {
  4862. QPEApplication app( argc, argv );
  4863. return 0;
  4864. }
  4865. EOF
  4866. if AC_TRY_EVAL(ac_link) && test -s conftest; then
  4867. rm -f conftest*
  4868. else
  4869. rm -f conftest*
  4870. AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at
  4871. the end of config.log])
  4872. fi
  4873. CXXFLAGS="$ac_cxxflags_safe"
  4874. LDFLAGS="$ac_ldflags_safe"
  4875. LIBS="$ac_libs_safe"
  4876. AC_LANG_RESTORE
  4877. QTOPIA_INCLUDES="-I$qtopia_incdir"
  4878. AC_SUBST(QTOPIA_INCLUDES)
  4879. AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir])
  4880. ])
  4881. AC_DEFUN([KDE_INIT_DOXYGEN],
  4882. [
  4883. AC_MSG_CHECKING([for Qt docs])
  4884. kde_qtdir=
  4885. if test "${with_qt_dir+set}" = set; then
  4886. kde_qtdir="$with_qt_dir"
  4887. fi
  4888. AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html $TQTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc /usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3 /usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ], TQTDOCDIR)
  4889. AC_MSG_RESULT($TQTDOCDIR)
  4890. AC_SUBST(TQTDOCDIR)
  4891. KDE_FIND_PATH(dot, DOT, [], [])
  4892. if test -n "$DOT"; then
  4893. KDE_HAVE_DOT="YES"
  4894. else
  4895. KDE_HAVE_DOT="NO"
  4896. fi
  4897. AC_SUBST(KDE_HAVE_DOT)
  4898. KDE_FIND_PATH(doxygen, DOXYGEN, [], [])
  4899. AC_SUBST(DOXYGEN)
  4900. DOXYGEN_PROJECT_NAME="$1"
  4901. DOXYGEN_PROJECT_NUMBER="$2"
  4902. AC_SUBST(DOXYGEN_PROJECT_NAME)
  4903. AC_SUBST(DOXYGEN_PROJECT_NUMBER)
  4904. KDE_HAS_DOXYGEN=no
  4905. if test -n "$DOXYGEN" && test -x "$DOXYGEN" && test -f $TQTDOCDIR/qsql.html; then
  4906. KDE_HAS_DOXYGEN=yes
  4907. fi
  4908. AC_SUBST(KDE_HAS_DOXYGEN)
  4909. ])
  4910. AC_DEFUN([AC_FIND_BZIP2],
  4911. [
  4912. AC_MSG_CHECKING([for bzDecompress in libbz2])
  4913. AC_CACHE_VAL(ac_cv_lib_bzip2,
  4914. [
  4915. AC_LANG_SAVE
  4916. AC_LANG_CPLUSPLUS
  4917. kde_save_LIBS="$LIBS"
  4918. LIBS="$all_libraries $USER_LDFLAGS -lbz2 $LIBSOCKET"
  4919. kde_save_CXXFLAGS="$CXXFLAGS"
  4920. CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES"
  4921. AC_TRY_LINK(dnl
  4922. [
  4923. #define BZ_NO_STDIO
  4924. #include<bzlib.h>
  4925. ],
  4926. [ bz_stream s; (void) bzDecompress(&s); ],
  4927. eval "ac_cv_lib_bzip2='-lbz2'",
  4928. eval "ac_cv_lib_bzip2=no")
  4929. LIBS="$kde_save_LIBS"
  4930. CXXFLAGS="$kde_save_CXXFLAGS"
  4931. AC_LANG_RESTORE
  4932. ])dnl
  4933. AC_MSG_RESULT($ac_cv_lib_bzip2)
  4934. if test ! "$ac_cv_lib_bzip2" = no; then
  4935. BZIP2DIR=bzip2
  4936. LIBBZ2="$ac_cv_lib_bzip2"
  4937. AC_SUBST(LIBBZ2)
  4938. else
  4939. cxx_shared_flag=
  4940. ld_shared_flag=
  4941. KDE_CHECK_COMPILER_FLAG(shared, [
  4942. ld_shared_flag="-shared"
  4943. ])
  4944. KDE_CHECK_COMPILER_FLAG(fPIC, [
  4945. cxx_shared_flag="-fPIC"
  4946. ])
  4947. AC_MSG_CHECKING([for BZ2_bzDecompress in (shared) libbz2])
  4948. AC_CACHE_VAL(ac_cv_lib_bzip2_prefix,
  4949. [
  4950. AC_LANG_SAVE
  4951. AC_LANG_CPLUSPLUS
  4952. kde_save_LIBS="$LIBS"
  4953. LIBS="$all_libraries $USER_LDFLAGS $ld_shared_flag -lbz2 $LIBSOCKET"
  4954. kde_save_CXXFLAGS="$CXXFLAGS"
  4955. CXXFLAGS="$CFLAGS $cxx_shared_flag $all_includes $USER_INCLUDES"
  4956. AC_TRY_LINK(dnl
  4957. [
  4958. #define BZ_NO_STDIO
  4959. #include<bzlib.h>
  4960. ],
  4961. [ bz_stream s; (void) BZ2_bzDecompress(&s); ],
  4962. eval "ac_cv_lib_bzip2_prefix='-lbz2'",
  4963. eval "ac_cv_lib_bzip2_prefix=no")
  4964. LIBS="$kde_save_LIBS"
  4965. CXXFLAGS="$kde_save_CXXFLAGS"
  4966. AC_LANG_RESTORE
  4967. ])dnl
  4968. AC_MSG_RESULT($ac_cv_lib_bzip2_prefix)
  4969. if test ! "$ac_cv_lib_bzip2_prefix" = no; then
  4970. BZIP2DIR=bzip2
  4971. LIBBZ2="$ac_cv_lib_bzip2_prefix"
  4972. AC_SUBST(LIBBZ2)
  4973. AC_DEFINE(NEED_BZ2_PREFIX, 1, [Define if the libbz2 functions need the BZ2_ prefix])
  4974. dnl else, we just ignore this
  4975. fi
  4976. fi
  4977. AM_CONDITIONAL(include_BZIP2, test -n "$BZIP2DIR")
  4978. ])
  4979. dnl ------------------------------------------------------------------------
  4980. dnl Try to find the SSL headers and libraries.
  4981. dnl $(SSL_LDFLAGS) will be -Lsslliblocation (if needed)
  4982. dnl and $(SSL_INCLUDES) will be -Isslhdrlocation (if needed)
  4983. dnl ------------------------------------------------------------------------
  4984. dnl
  4985. AC_DEFUN([KDE_CHECK_SSL],
  4986. [
  4987. LIBSSL="-lssl -lcrypto"
  4988. AC_REQUIRE([KDE_CHECK_LIB64])
  4989. ac_ssl_includes=NO ac_ssl_libraries=NO
  4990. ssl_libraries=""
  4991. ssl_includes=""
  4992. AC_ARG_WITH(ssl-dir,
  4993. AC_HELP_STRING([--with-ssl-dir=DIR],[where the root of OpenSSL is installed]),
  4994. [ ac_ssl_includes="$withval"/include
  4995. ac_ssl_libraries="$withval"/lib$tdelibsuff
  4996. ])
  4997. want_ssl=yes
  4998. AC_ARG_WITH(ssl,
  4999. AC_HELP_STRING([--without-ssl],[disable SSL checks]),
  5000. [want_ssl=$withval])
  5001. if test $want_ssl = yes; then
  5002. AC_MSG_CHECKING(for OpenSSL)
  5003. AC_CACHE_VAL(ac_cv_have_ssl,
  5004. [#try to guess OpenSSL locations
  5005. ssl_incdirs="/usr/include /usr/local/include /usr/ssl/include /usr/local/ssl/include $prefix/include $kde_extra_includes"
  5006. ssl_incdirs="$ac_ssl_includes $ssl_incdirs"
  5007. AC_FIND_FILE(openssl/ssl.h, $ssl_incdirs, ssl_incdir)
  5008. ac_ssl_includes="$ssl_incdir"
  5009. ssl_libdirs="/usr/lib$tdelibsuff /usr/local/lib$tdelibsuff /usr/ssl/lib$tdelibsuff /usr/local/ssl/lib$tdelibsuff $libdir $prefix/lib$tdelibsuff $exec_prefix/lib$tdelibsuff $kde_extra_libs"
  5010. if test ! "$ac_ssl_libraries" = "NO"; then
  5011. ssl_libdirs="$ac_ssl_libraries $ssl_libdirs"
  5012. fi
  5013. test=NONE
  5014. ssl_libdir=NONE
  5015. for dir in $ssl_libdirs; do
  5016. try="ls -1 $dir/libssl*"
  5017. if test=`eval $try 2> /dev/null`; then ssl_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi
  5018. done
  5019. ac_ssl_libraries="$ssl_libdir"
  5020. ac_ldflags_safe="$LDFLAGS"
  5021. ac_libs_safe="$LIBS"
  5022. LDFLAGS="$LDFLAGS -L$ssl_libdir $all_libraries"
  5023. LIBS="$LIBS $LIBSSL -lRSAglue -lrsaref"
  5024. AC_TRY_LINK(,void RSAPrivateEncrypt(void);RSAPrivateEncrypt();,
  5025. ac_ssl_rsaref="yes"
  5026. ,
  5027. ac_ssl_rsaref="no"
  5028. )
  5029. LDFLAGS="$ac_ldflags_safe"
  5030. LIBS="$ac_libs_safe"
  5031. if test "$ac_ssl_includes" = NO || test "$ac_ssl_libraries" = NO; then
  5032. have_ssl=no
  5033. else
  5034. have_ssl=yes;
  5035. fi
  5036. ])
  5037. eval "$ac_cv_have_ssl"
  5038. AC_MSG_RESULT([libraries $ac_ssl_libraries, headers $ac_ssl_includes])
  5039. AC_MSG_CHECKING([whether OpenSSL uses rsaref])
  5040. AC_MSG_RESULT($ac_ssl_rsaref)
  5041. AC_MSG_CHECKING([for easter eggs])
  5042. AC_MSG_RESULT([none found])
  5043. else
  5044. have_ssl=no
  5045. fi
  5046. if test "$have_ssl" = yes; then
  5047. AC_MSG_CHECKING(for OpenSSL version)
  5048. dnl Check for SSL version
  5049. AC_CACHE_VAL(ac_cv_ssl_version,
  5050. [
  5051. cat >conftest.$ac_ext <<EOF
  5052. #include <openssl/opensslv.h>
  5053. #include <stdio.h>
  5054. int main() {
  5055. #ifndef OPENSSL_VERSION_NUMBER
  5056. printf("ssl_version=\\"error\\"\n");
  5057. #else
  5058. if (OPENSSL_VERSION_NUMBER < 0x00906000)
  5059. printf("ssl_version=\\"old\\"\n");
  5060. else
  5061. printf("ssl_version=\\"ok\\"\n");
  5062. #endif
  5063. return (0);
  5064. }
  5065. EOF
  5066. ac_save_CPPFLAGS=$CPPFLAGS
  5067. if test "$ac_ssl_includes" != "/usr/include"; then
  5068. CPPFLAGS="$CPPFLAGS -I$ac_ssl_includes"
  5069. fi
  5070. if AC_TRY_EVAL(ac_link); then
  5071. if eval `./conftest 2>&5`; then
  5072. if test $ssl_version = error; then
  5073. AC_MSG_ERROR([$ssl_incdir/openssl/opensslv.h doesn't define OPENSSL_VERSION_NUMBER !])
  5074. else
  5075. if test $ssl_version = old; then
  5076. AC_MSG_WARN([OpenSSL version too old. Upgrade to 0.9.6 at least, see http://www.openssl.org. SSL support disabled.])
  5077. have_ssl=no
  5078. fi
  5079. fi
  5080. ac_cv_ssl_version="ssl_version=$ssl_version"
  5081. else
  5082. AC_MSG_ERROR([Your system couldn't run a small SSL test program.
  5083. Check config.log, and if you can't figure it out, send a mail to
  5084. David Faure <faure@kde.org>, attaching your config.log])
  5085. fi
  5086. else
  5087. AC_MSG_ERROR([Your system couldn't link a small SSL test program.
  5088. Check config.log, and if you can't figure it out, send a mail to
  5089. David Faure <faure@kde.org>, attaching your config.log])
  5090. fi
  5091. CPPFLAGS=$ac_save_CPPFLAGS
  5092. ])
  5093. eval "$ac_cv_ssl_version"
  5094. AC_MSG_RESULT($ssl_version)
  5095. fi
  5096. if test "$have_ssl" != yes; then
  5097. LIBSSL="";
  5098. else
  5099. AC_DEFINE(HAVE_SSL, 1, [If we are going to use OpenSSL])
  5100. ac_cv_have_ssl="have_ssl=yes \
  5101. ac_ssl_includes=$ac_ssl_includes ac_ssl_libraries=$ac_ssl_libraries ac_ssl_rsaref=$ac_ssl_rsaref"
  5102. ssl_libraries="$ac_ssl_libraries"
  5103. ssl_includes="$ac_ssl_includes"
  5104. if test "$ac_ssl_rsaref" = yes; then
  5105. LIBSSL="-lssl -lcrypto -lRSAglue -lrsaref"
  5106. fi
  5107. if test $ssl_version = "old"; then
  5108. AC_DEFINE(HAVE_OLD_SSL_API, 1, [Define if you have OpenSSL < 0.9.6])
  5109. fi
  5110. fi
  5111. SSL_INCLUDES=
  5112. if test "$ssl_includes" = "/usr/include"; then
  5113. if test -f /usr/kerberos/include/krb5.h; then
  5114. SSL_INCLUDES="-I/usr/kerberos/include"
  5115. fi
  5116. elif test "$ssl_includes" != "/usr/local/include" && test -n "$ssl_includes"; then
  5117. SSL_INCLUDES="-I$ssl_includes"
  5118. fi
  5119. if test "$ssl_libraries" = "/usr/lib" || test "$ssl_libraries" = "/usr/local/lib" || test -z "$ssl_libraries" || test "$ssl_libraries" = "NONE"; then
  5120. SSL_LDFLAGS=""
  5121. else
  5122. SSL_LDFLAGS="-L$ssl_libraries -R$ssl_libraries"
  5123. fi
  5124. AC_SUBST(SSL_INCLUDES)
  5125. AC_SUBST(SSL_LDFLAGS)
  5126. AC_SUBST(LIBSSL)
  5127. ])
  5128. AC_DEFUN([KDE_CHECK_STRLCPY],
  5129. [
  5130. AC_REQUIRE([AC_CHECK_STRLCAT])
  5131. AC_REQUIRE([AC_CHECK_STRLCPY])
  5132. AC_CHECK_SIZEOF(size_t)
  5133. AC_CHECK_SIZEOF(unsigned long)
  5134. AC_MSG_CHECKING([sizeof size_t == sizeof unsigned long])
  5135. AC_TRY_COMPILE(,[
  5136. #if SIZEOF_SIZE_T != SIZEOF_UNSIGNED_LONG
  5137. choke me
  5138. #endif
  5139. ],AC_MSG_RESULT([yes]),[
  5140. AC_MSG_RESULT(no)
  5141. AC_MSG_ERROR([
  5142. Apparently on your system our assumption sizeof size_t == sizeof unsigned long
  5143. does not apply. Please mail kde-devel@kde.org with a description of your system!
  5144. ])
  5145. ])
  5146. ])
  5147. AC_DEFUN([KDE_CHECK_BINUTILS],
  5148. [
  5149. AC_MSG_CHECKING([if ld supports unversioned version maps])
  5150. kde_save_LDFLAGS="$LDFLAGS"
  5151. LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
  5152. echo "{ local: extern \"C++\" { foo }; };" > conftest.map
  5153. AC_TRY_LINK([int foo;],
  5154. [
  5155. #ifdef __INTEL_COMPILER
  5156. icc apparently does not support libtools version-info and version-script
  5157. at the same time. Dunno where the bug is, but until somebody figured out,
  5158. better disable the optional version scripts.
  5159. #endif
  5160. foo = 42;
  5161. ], kde_supports_versionmaps=yes, kde_supports_versionmaps=no)
  5162. LDFLAGS="$kde_save_LDFLAGS"
  5163. rm -f conftest.map
  5164. AM_CONDITIONAL(include_VERSION_SCRIPT,
  5165. [test "$kde_supports_versionmaps" = "yes" && test "$kde_use_debug_code" = "no"])
  5166. AC_MSG_RESULT($kde_supports_versionmaps)
  5167. ])
  5168. AC_DEFUN([AM_PROG_OBJC],[
  5169. AC_CHECK_PROGS(OBJC, gcc, gcc)
  5170. test -z "$OBJC" && AC_MSG_ERROR([no acceptable objective-c gcc found in \$PATH])
  5171. if test "x${OBJCFLAGS-unset}" = xunset; then
  5172. OBJCFLAGS="-g -O2"
  5173. fi
  5174. AC_SUBST(OBJCFLAGS)
  5175. _AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(OBJC)])
  5176. ])
  5177. AC_DEFUN([KDE_CHECK_PERL],
  5178. [
  5179. KDE_FIND_PATH(perl, PERL, [$bindir $exec_prefix/bin $prefix/bin], [
  5180. AC_MSG_ERROR([No Perl found in your $PATH.
  5181. We need perl to generate some code.])
  5182. ])
  5183. AC_SUBST(PERL)
  5184. ])
  5185. AC_DEFUN([KDE_CHECK_LARGEFILE],
  5186. [
  5187. AC_SYS_LARGEFILE
  5188. if test "$ac_cv_sys_file_offset_bits" != no; then
  5189. CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
  5190. fi
  5191. if test "x$ac_cv_sys_large_files" != "xno"; then
  5192. CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1"
  5193. fi
  5194. ])
  5195. dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in)
  5196. dnl which allows to search for libs that get installed into the KDE prefix.
  5197. dnl
  5198. dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not)
  5199. dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page
  5200. dnl also defines KSTUFF_PKG_ERRORS on error
  5201. AC_DEFUN([KDE_PKG_CHECK_MODULES], [
  5202. PKG_CONFIG_PATH="$prefix/lib${tdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
  5203. if test "$prefix" != "$kde_libs_prefix"; then
  5204. PKG_CONFIG_PATH="$kde_libs_prefix/lib${tdelibsuff}/pkgconfig:$PKG_CONFIG_PATH"
  5205. fi
  5206. export PKG_CONFIG_PATH
  5207. PKG_CHECK_MODULES([$1],[$2],[$3],[$4])
  5208. ])
  5209. dnl Check for PIE support in the compiler and linker
  5210. AC_DEFUN([KDE_CHECK_PIE_SUPPORT],
  5211. [
  5212. AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support,
  5213. [
  5214. AC_LANG_SAVE
  5215. AC_LANG_CPLUSPLUS
  5216. safe_CXXFLAGS=$CXXFLAGS
  5217. safe_LDFLAGS=$LDFLAGS
  5218. CXXFLAGS="$CXXFLAGS -fPIE"
  5219. LDFLAGS="$LDFLAGS -pie"
  5220. AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no])
  5221. CXXFLAGS=$safe_CXXFLAGS
  5222. LDFLAGS=$safe_LDFLAGS
  5223. AC_LANG_RESTORE
  5224. ])
  5225. AC_MSG_CHECKING(if enabling -pie/fPIE support)
  5226. AC_ARG_ENABLE(pie,
  5227. AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]),
  5228. [kde_has_pie_support=$enableval],
  5229. [kde_has_pie_support=detect])
  5230. if test "$kde_has_pie_support" = "detect"; then
  5231. kde_has_pie_support=$kde_cv_val_pie_support
  5232. fi
  5233. AC_MSG_RESULT([$kde_has_pie_support])
  5234. KDE_USE_FPIE=""
  5235. KDE_USE_PIE=""
  5236. AC_SUBST([KDE_USE_FPIE])
  5237. AC_SUBST([KDE_USE_PIE])
  5238. if test "$kde_has_pie_support" = "yes"; then
  5239. KDE_USE_FPIE="-fPIE"
  5240. KDE_USE_PIE="-pie"
  5241. fi
  5242. ])
  5243. # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
  5244. ## Copyright 1996, 1997, 1998, 1999, 2000, 2001
  5245. ## Free Software Foundation, Inc.
  5246. ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  5247. ##
  5248. ## This program is free software; you can redistribute it and/or modify
  5249. ## it under the terms of the GNU General Public License as published by
  5250. ## the Free Software Foundation; either version 2 of the License, or
  5251. ## (at your option) any later version.
  5252. ##
  5253. ## This program is distributed in the hope that it will be useful, but
  5254. ## WITHOUT ANY WARRANTY; without even the implied warranty of
  5255. ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  5256. ## General Public License for more details.
  5257. ##
  5258. ## You should have received a copy of the GNU General Public License
  5259. ## along with this program; if not, write to the Free Software
  5260. ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  5261. ##
  5262. ## As a special exception to the GNU General Public License, if you
  5263. ## distribute this file as part of a program that contains a
  5264. ## configuration script generated by Autoconf, you may include it under
  5265. ## the same distribution terms that you use for the rest of that program.
  5266. # serial 47 AC_PROG_LIBTOOL
  5267. # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
  5268. # -----------------------------------------------------------
  5269. # If this macro is not defined by Autoconf, define it here.
  5270. m4_ifdef([AC_PROVIDE_IFELSE],
  5271. [],
  5272. [m4_define([AC_PROVIDE_IFELSE],
  5273. [m4_ifdef([AC_PROVIDE_$1],
  5274. [$2], [$3])])])
  5275. # AC_PROG_LIBTOOL
  5276. # ---------------
  5277. AC_DEFUN([AC_PROG_LIBTOOL],
  5278. [AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
  5279. dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
  5280. dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
  5281. AC_PROVIDE_IFELSE([AC_PROG_CXX],
  5282. [AC_LIBTOOL_CXX],
  5283. [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
  5284. ])])
  5285. dnl And a similar setup for Fortran 77 support
  5286. AC_PROVIDE_IFELSE([AC_PROG_F77],
  5287. [AC_LIBTOOL_F77],
  5288. [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77
  5289. ])])
  5290. dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
  5291. dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
  5292. dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
  5293. AC_PROVIDE_IFELSE([AC_PROG_GCJ],
  5294. [AC_LIBTOOL_GCJ],
  5295. [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
  5296. [AC_LIBTOOL_GCJ],
  5297. [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
  5298. [AC_LIBTOOL_GCJ],
  5299. [ifdef([AC_PROG_GCJ],
  5300. [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])
  5301. ifdef([A][M_PROG_GCJ],
  5302. [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])])
  5303. ifdef([LT_AC_PROG_GCJ],
  5304. [define([LT_AC_PROG_GCJ],
  5305. defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])])
  5306. ])])# AC_PROG_LIBTOOL
  5307. # _AC_PROG_LIBTOOL
  5308. # ----------------
  5309. AC_DEFUN([_AC_PROG_LIBTOOL],
  5310. [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
  5311. AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
  5312. AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl
  5313. AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
  5314. # This can be used to rebuild libtool when needed
  5315. LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
  5316. # Always use our own libtool.
  5317. LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent'
  5318. AC_SUBST(LIBTOOL)dnl
  5319. # Prevent multiple expansion
  5320. define([AC_PROG_LIBTOOL], [])
  5321. ])# _AC_PROG_LIBTOOL
  5322. # AC_LIBTOOL_SETUP
  5323. # ----------------
  5324. AC_DEFUN([AC_LIBTOOL_SETUP],
  5325. [AC_PREREQ(2.50)dnl
  5326. AC_REQUIRE([AC_ENABLE_SHARED])dnl
  5327. AC_REQUIRE([AC_ENABLE_STATIC])dnl
  5328. AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
  5329. AC_REQUIRE([AC_CANONICAL_HOST])dnl
  5330. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  5331. AC_REQUIRE([AC_PROG_CC])dnl
  5332. AC_REQUIRE([AC_PROG_LD])dnl
  5333. AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
  5334. AC_REQUIRE([AC_PROG_NM])dnl
  5335. AC_REQUIRE([AC_PROG_LN_S])dnl
  5336. AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
  5337. # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
  5338. AC_REQUIRE([AC_OBJEXT])dnl
  5339. AC_REQUIRE([AC_EXEEXT])dnl
  5340. dnl
  5341. AC_LIBTOOL_SYS_MAX_CMD_LEN
  5342. AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
  5343. AC_LIBTOOL_OBJDIR
  5344. AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
  5345. _LT_AC_PROG_ECHO_BACKSLASH
  5346. case $host_os in
  5347. aix3*)
  5348. # AIX sometimes has problems with the GCC collect2 program. For some
  5349. # reason, if we set the COLLECT_NAMES environment variable, the problems
  5350. # vanish in a puff of smoke.
  5351. if test "X${COLLECT_NAMES+set}" != Xset; then
  5352. COLLECT_NAMES=
  5353. export COLLECT_NAMES
  5354. fi
  5355. ;;
  5356. esac
  5357. # Sed substitution that helps us do robust quoting. It backslashifies
  5358. # metacharacters that are still active within double-quoted strings.
  5359. Xsed='sed -e s/^X//'
  5360. [sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g']
  5361. # Same as above, but do not quote variable references.
  5362. [double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
  5363. # Sed substitution to delay expansion of an escaped shell variable in a
  5364. # double_quote_subst'ed string.
  5365. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
  5366. # Sed substitution to avoid accidental globbing in evaled expressions
  5367. no_glob_subst='s/\*/\\\*/g'
  5368. # Constants:
  5369. rm="rm -f"
  5370. # Global variables:
  5371. default_ofile=libtool
  5372. can_build_shared=yes
  5373. # All known linkers require a `.a' archive for static linking (except M$VC,
  5374. # which needs '.lib').
  5375. libext=a
  5376. ltmain="$ac_aux_dir/ltmain.sh"
  5377. ofile="$default_ofile"
  5378. with_gnu_ld="$lt_cv_prog_gnu_ld"
  5379. AC_CHECK_TOOL(AR, ar, false)
  5380. AC_CHECK_TOOL(RANLIB, ranlib, :)
  5381. AC_CHECK_TOOL(STRIP, strip, :)
  5382. old_CC="$CC"
  5383. old_CFLAGS="$CFLAGS"
  5384. # Set sane defaults for various variables
  5385. test -z "$AR" && AR=ar
  5386. test -z "$AR_FLAGS" && AR_FLAGS=cru
  5387. test -z "$AS" && AS=as
  5388. test -z "$CC" && CC=cc
  5389. test -z "$LTCC" && LTCC=$CC
  5390. test -z "$DLLTOOL" && DLLTOOL=dlltool
  5391. test -z "$LD" && LD=ld
  5392. test -z "$LN_S" && LN_S="ln -s"
  5393. test -z "$MAGIC_CMD" && MAGIC_CMD=file
  5394. test -z "$NM" && NM=nm
  5395. test -z "$SED" && SED=sed
  5396. test -z "$OBJDUMP" && OBJDUMP=objdump
  5397. test -z "$RANLIB" && RANLIB=:
  5398. test -z "$STRIP" && STRIP=:
  5399. test -z "$ac_objext" && ac_objext=o
  5400. # Determine commands to create old-style static archives.
  5401. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
  5402. old_postinstall_cmds='chmod 644 $oldlib'
  5403. old_postuninstall_cmds=
  5404. if test -n "$RANLIB"; then
  5405. case $host_os in
  5406. openbsd*)
  5407. old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
  5408. ;;
  5409. *)
  5410. old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
  5411. ;;
  5412. esac
  5413. old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
  5414. fi
  5415. # Only perform the check for file, if the check method requires it
  5416. case $deplibs_check_method in
  5417. file_magic*)
  5418. if test "$file_magic_cmd" = '$MAGIC_CMD'; then
  5419. AC_PATH_MAGIC
  5420. fi
  5421. ;;
  5422. esac
  5423. AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
  5424. AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
  5425. enable_win32_dll=yes, enable_win32_dll=no)
  5426. AC_ARG_ENABLE([libtool-lock],
  5427. [AC_HELP_STRING([--disable-libtool-lock],
  5428. [avoid locking (might break parallel builds)])])
  5429. test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
  5430. AC_ARG_WITH([pic],
  5431. [AC_HELP_STRING([--with-pic],
  5432. [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
  5433. [pic_mode="$withval"],
  5434. [pic_mode=default])
  5435. test -z "$pic_mode" && pic_mode=default
  5436. # Use C for the default configuration in the libtool script
  5437. tagname=
  5438. AC_LIBTOOL_LANG_C_CONFIG
  5439. _LT_AC_TAGCONFIG
  5440. ])# AC_LIBTOOL_SETUP
  5441. # _LT_AC_SYS_COMPILER
  5442. # -------------------
  5443. AC_DEFUN([_LT_AC_SYS_COMPILER],
  5444. [AC_REQUIRE([AC_PROG_CC])dnl
  5445. # If no C compiler was specified, use CC.
  5446. LTCC=${LTCC-"$CC"}
  5447. # Allow CC to be a program name with arguments.
  5448. compiler=$CC
  5449. ])# _LT_AC_SYS_COMPILER
  5450. # _LT_AC_SYS_LIBPATH_AIX
  5451. # ----------------------
  5452. # Links a minimal program and checks the executable
  5453. # for the system default hardcoded library path. In most cases,
  5454. # this is /usr/lib:/lib, but when the MPI compilers are used
  5455. # the location of the communication and MPI libs are included too.
  5456. # If we don't find anything, use the default library path according
  5457. # to the aix ld manual.
  5458. AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
  5459. [AC_LINK_IFELSE(AC_LANG_PROGRAM,[
  5460. aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
  5461. }'`
  5462. # Check for a 64-bit object if we didn't find anything.
  5463. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
  5464. }'`; fi],[])
  5465. if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  5466. ])# _LT_AC_SYS_LIBPATH_AIX
  5467. # _LT_AC_SHELL_INIT(ARG)
  5468. # ----------------------
  5469. AC_DEFUN([_LT_AC_SHELL_INIT],
  5470. [ifdef([AC_DIVERSION_NOTICE],
  5471. [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
  5472. [AC_DIVERT_PUSH(NOTICE)])
  5473. $1
  5474. AC_DIVERT_POP
  5475. ])# _LT_AC_SHELL_INIT
  5476. # _LT_AC_PROG_ECHO_BACKSLASH
  5477. # --------------------------
  5478. # Add some code to the start of the generated configure script which
  5479. # will find an echo command which doesn't interpret backslashes.
  5480. AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
  5481. [_LT_AC_SHELL_INIT([
  5482. # Check that we are running under the correct shell.
  5483. SHELL=${CONFIG_SHELL-/bin/sh}
  5484. case X$ECHO in
  5485. X*--fallback-echo)
  5486. # Remove one level of quotation (which was required for Make).
  5487. ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
  5488. ;;
  5489. esac
  5490. echo=${ECHO-echo}
  5491. if test "X[$]1" = X--no-reexec; then
  5492. # Discard the --no-reexec flag, and continue.
  5493. shift
  5494. elif test "X[$]1" = X--fallback-echo; then
  5495. # Avoid inline document here, it may be left over
  5496. :
  5497. elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then
  5498. # Yippee, $echo works!
  5499. :
  5500. else
  5501. # Restart under the correct shell.
  5502. exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
  5503. fi
  5504. if test "X[$]1" = X--fallback-echo; then
  5505. # used as fallback echo
  5506. shift
  5507. cat <<EOF
  5508. [$]*
  5509. EOF
  5510. exit 0
  5511. fi
  5512. # The HP-UX ksh and POSIX shell print the target directory to stdout
  5513. # if CDPATH is set.
  5514. if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
  5515. if test -z "$ECHO"; then
  5516. if test "X${echo_test_string+set}" != Xset; then
  5517. # find a string as large as possible, as long as the shell can cope with it
  5518. for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
  5519. # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
  5520. if (echo_test_string="`eval $cmd`") 2>/dev/null &&
  5521. echo_test_string="`eval $cmd`" &&
  5522. (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
  5523. then
  5524. break
  5525. fi
  5526. done
  5527. fi
  5528. if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
  5529. echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
  5530. test "X$echo_testing_string" = "X$echo_test_string"; then
  5531. :
  5532. else
  5533. # The Solaris, AIX, and Digital Unix default echo programs unquote
  5534. # backslashes. This makes it impossible to quote backslashes using
  5535. # echo "$something" | sed 's/\\/\\\\/g'
  5536. #
  5537. # So, first we look for a working echo in the user's PATH.
  5538. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  5539. for dir in $PATH /usr/ucb; do
  5540. IFS="$lt_save_ifs"
  5541. if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
  5542. test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
  5543. echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
  5544. test "X$echo_testing_string" = "X$echo_test_string"; then
  5545. echo="$dir/echo"
  5546. break
  5547. fi
  5548. done
  5549. IFS="$lt_save_ifs"
  5550. if test "X$echo" = Xecho; then
  5551. # We didn't find a better echo, so look for alternatives.
  5552. if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
  5553. echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
  5554. test "X$echo_testing_string" = "X$echo_test_string"; then
  5555. # This shell has a builtin print -r that does the trick.
  5556. echo='print -r'
  5557. elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
  5558. test "X$CONFIG_SHELL" != X/bin/ksh; then
  5559. # If we have ksh, try running configure again with it.
  5560. ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
  5561. export ORIGINAL_CONFIG_SHELL
  5562. CONFIG_SHELL=/bin/ksh
  5563. export CONFIG_SHELL
  5564. exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
  5565. else
  5566. # Try using printf.
  5567. echo='printf %s\n'
  5568. if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
  5569. echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
  5570. test "X$echo_testing_string" = "X$echo_test_string"; then
  5571. # Cool, printf works
  5572. :
  5573. elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
  5574. test "X$echo_testing_string" = 'X\t' &&
  5575. echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
  5576. test "X$echo_testing_string" = "X$echo_test_string"; then
  5577. CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
  5578. export CONFIG_SHELL
  5579. SHELL="$CONFIG_SHELL"
  5580. export SHELL
  5581. echo="$CONFIG_SHELL [$]0 --fallback-echo"
  5582. elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
  5583. test "X$echo_testing_string" = 'X\t' &&
  5584. echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
  5585. test "X$echo_testing_string" = "X$echo_test_string"; then
  5586. echo="$CONFIG_SHELL [$]0 --fallback-echo"
  5587. else
  5588. # maybe with a smaller string...
  5589. prev=:
  5590. for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
  5591. if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
  5592. then
  5593. break
  5594. fi
  5595. prev="$cmd"
  5596. done
  5597. if test "$prev" != 'sed 50q "[$]0"'; then
  5598. echo_test_string=`eval $prev`
  5599. export echo_test_string
  5600. exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
  5601. else
  5602. # Oops. We lost completely, so just stick with echo.
  5603. echo=echo
  5604. fi
  5605. fi
  5606. fi
  5607. fi
  5608. fi
  5609. fi
  5610. # Copy echo and quote the copy suitably for passing to libtool from
  5611. # the Makefile, instead of quoting the original, which is used later.
  5612. ECHO=$echo
  5613. if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
  5614. ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
  5615. fi
  5616. AC_SUBST(ECHO)
  5617. ])])# _LT_AC_PROG_ECHO_BACKSLASH
  5618. # _LT_AC_LOCK
  5619. # -----------
  5620. AC_DEFUN([_LT_AC_LOCK],
  5621. [AC_ARG_ENABLE([libtool-lock],
  5622. [AC_HELP_STRING([--disable-libtool-lock],
  5623. [avoid locking (might break parallel builds)])])
  5624. test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
  5625. # Some flags need to be propagated to the compiler or linker for good
  5626. # libtool support.
  5627. case $host in
  5628. ia64-*-hpux*)
  5629. # Find out which ABI we are using.
  5630. echo 'int i;' > conftest.$ac_ext
  5631. if AC_TRY_EVAL(ac_compile); then
  5632. case `/usr/bin/file conftest.$ac_objext` in
  5633. *ELF-32*)
  5634. HPUX_IA64_MODE="32"
  5635. ;;
  5636. *ELF-64*)
  5637. HPUX_IA64_MODE="64"
  5638. ;;
  5639. esac
  5640. fi
  5641. rm -rf conftest*
  5642. ;;
  5643. *-*-irix6*)
  5644. # Find out which ABI we are using.
  5645. echo '[#]line __oline__ "configure"' > conftest.$ac_ext
  5646. if AC_TRY_EVAL(ac_compile); then
  5647. if test "$lt_cv_prog_gnu_ld" = yes; then
  5648. case `/usr/bin/file conftest.$ac_objext` in
  5649. *32-bit*)
  5650. LD="${LD-ld} -melf32bsmip"
  5651. ;;
  5652. *N32*)
  5653. LD="${LD-ld} -melf32bmipn32"
  5654. ;;
  5655. *64-bit*)
  5656. LD="${LD-ld} -melf64bmip"
  5657. ;;
  5658. esac
  5659. else
  5660. case `/usr/bin/file conftest.$ac_objext` in
  5661. *32-bit*)
  5662. LD="${LD-ld} -32"
  5663. ;;
  5664. *N32*)
  5665. LD="${LD-ld} -n32"
  5666. ;;
  5667. *64-bit*)
  5668. LD="${LD-ld} -64"
  5669. ;;
  5670. esac
  5671. fi
  5672. fi
  5673. rm -rf conftest*
  5674. ;;
  5675. x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
  5676. # Find out which ABI we are using.
  5677. echo 'int i;' > conftest.$ac_ext
  5678. if AC_TRY_EVAL(ac_compile); then
  5679. case "`/usr/bin/file conftest.o`" in
  5680. *32-bit*)
  5681. LINUX_64_MODE="32"
  5682. case $host in
  5683. x86_64-*linux*)
  5684. LD="${LD-ld} -m elf_i386"
  5685. ;;
  5686. ppc64-*linux*)
  5687. LD="${LD-ld} -m elf32ppclinux"
  5688. ;;
  5689. s390x-*linux*)
  5690. LD="${LD-ld} -m elf_s390"
  5691. ;;
  5692. sparc64-*linux*)
  5693. LD="${LD-ld} -m elf32_sparc"
  5694. ;;
  5695. esac
  5696. ;;
  5697. *64-bit*)
  5698. LINUX_64_MODE="64"
  5699. case $host in
  5700. x86_64-*linux*)
  5701. LD="${LD-ld} -m elf_x86_64"
  5702. ;;
  5703. ppc*-*linux*|powerpc*-*linux*)
  5704. LD="${LD-ld} -m elf64ppc"
  5705. ;;
  5706. s390*-*linux*)
  5707. LD="${LD-ld} -m elf64_s390"
  5708. ;;
  5709. sparc*-*linux*)
  5710. LD="${LD-ld} -m elf64_sparc"
  5711. ;;
  5712. esac
  5713. ;;
  5714. esac
  5715. fi
  5716. rm -rf conftest*
  5717. ;;
  5718. *-*-sco3.2v5*)
  5719. # On SCO OpenServer 5, we need -belf to get full-featured binaries.
  5720. SAVE_CFLAGS="$CFLAGS"
  5721. CFLAGS="$CFLAGS -belf"
  5722. AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
  5723. [AC_LANG_PUSH(C)
  5724. AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
  5725. AC_LANG_POP])
  5726. if test x"$lt_cv_cc_needs_belf" != x"yes"; then
  5727. # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
  5728. CFLAGS="$SAVE_CFLAGS"
  5729. fi
  5730. ;;
  5731. AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
  5732. [*-*-cygwin* | *-*-mingw* | *-*-pw32*)
  5733. AC_CHECK_TOOL(DLLTOOL, dlltool, false)
  5734. AC_CHECK_TOOL(AS, as, false)
  5735. AC_CHECK_TOOL(OBJDUMP, objdump, false)
  5736. ;;
  5737. ])
  5738. esac
  5739. need_locks="$enable_libtool_lock"
  5740. ])# _LT_AC_LOCK
  5741. # AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
  5742. # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
  5743. # ----------------------------------------------------------------
  5744. # Check whether the given compiler option works
  5745. AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
  5746. [AC_REQUIRE([LT_AC_PROG_SED])
  5747. AC_CACHE_CHECK([$1], [$2],
  5748. [$2=no
  5749. ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
  5750. printf "$lt_simple_compile_test_code" > conftest.$ac_ext
  5751. lt_compiler_flag="$3"
  5752. # Insert the option either (1) after the last *FLAGS variable, or
  5753. # (2) before a word containing "conftest.", or (3) at the end.
  5754. # Note that $ac_compile itself does not contain backslashes and begins
  5755. # with a dollar sign (not a hyphen), so the echo should work correctly.
  5756. # The option is referenced via a variable to avoid confusing sed.
  5757. lt_compile=`echo "$ac_compile" | $SED \
  5758. -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
  5759. -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
  5760. -e 's:$: $lt_compiler_flag:'`
  5761. (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
  5762. (eval "$lt_compile" 2>conftest.err)
  5763. ac_status=$?
  5764. cat conftest.err >&AS_MESSAGE_LOG_FD
  5765. echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
  5766. if (exit $ac_status) && test -s "$ac_outfile"; then
  5767. # The compiler can only warn and ignore the option if not recognized
  5768. # So say no if there are warnings
  5769. if test ! -s conftest.err; then
  5770. $2=yes
  5771. fi
  5772. fi
  5773. $rm conftest*
  5774. ])
  5775. if test x"[$]$2" = xyes; then
  5776. ifelse([$5], , :, [$5])
  5777. else
  5778. ifelse([$6], , :, [$6])
  5779. fi
  5780. ])# AC_LIBTOOL_COMPILER_OPTION
  5781. # AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
  5782. # [ACTION-SUCCESS], [ACTION-FAILURE])
  5783. # ------------------------------------------------------------
  5784. # Check whether the given compiler option works
  5785. AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
  5786. [AC_CACHE_CHECK([$1], [$2],
  5787. [$2=no
  5788. save_LDFLAGS="$LDFLAGS"
  5789. LDFLAGS="$LDFLAGS $3"
  5790. printf "$lt_simple_link_test_code" > conftest.$ac_ext
  5791. if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
  5792. # The compiler can only warn and ignore the option if not recognized
  5793. # So say no if there are warnings
  5794. if test -s conftest.err; then
  5795. # Append any errors to the config.log.
  5796. cat conftest.err 1>&AS_MESSAGE_LOG_FD
  5797. else
  5798. $2=yes
  5799. fi
  5800. fi
  5801. $rm conftest*
  5802. LDFLAGS="$save_LDFLAGS"
  5803. ])
  5804. if test x"[$]$2" = xyes; then
  5805. ifelse([$4], , :, [$4])
  5806. else
  5807. ifelse([$5], , :, [$5])
  5808. fi
  5809. ])# AC_LIBTOOL_LINKER_OPTION
  5810. # AC_LIBTOOL_SYS_MAX_CMD_LEN
  5811. # --------------------------
  5812. AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
  5813. [# find the maximum length of command line arguments
  5814. AC_MSG_CHECKING([the maximum length of command line arguments])
  5815. AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
  5816. i=0
  5817. testring="ABCD"
  5818. case $build_os in
  5819. msdosdjgpp*)
  5820. # On DJGPP, this test can blow up pretty badly due to problems in libc
  5821. # (any single argument exceeding 2000 bytes causes a buffer overrun
  5822. # during glob expansion). Even if it were fixed, the result of this
  5823. # check would be larger than it should be.
  5824. lt_cv_sys_max_cmd_len=12288; # 12K is about right
  5825. ;;
  5826. gnu*)
  5827. # Under GNU Hurd, this test is not required because there is
  5828. # no limit to the length of command line arguments.
  5829. # Libtool will interpret -1 as no limit whatsoever
  5830. lt_cv_sys_max_cmd_len=-1;
  5831. ;;
  5832. cygwin* | mingw*)
  5833. # On Win9x/ME, this test blows up -- it succeeds, but takes
  5834. # about 5 minutes as the teststring grows exponentially.
  5835. # Worse, since 9x/ME are not pre-emptively multitasking,
  5836. # you end up with a "frozen" computer, even though with patience
  5837. # the test eventually succeeds (with a max line length of 256k).
  5838. # Instead, let's just punt: use the minimum linelength reported by
  5839. # all of the supported platforms: 8192 (on NT/2K/XP).
  5840. lt_cv_sys_max_cmd_len=8192;
  5841. ;;
  5842. *)
  5843. # If test is not a shell built-in, we'll probably end up computing a
  5844. # maximum length that is only half of the actual maximum length, but
  5845. # we can't tell.
  5846. while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \
  5847. = "XX$testring") >/dev/null 2>&1 &&
  5848. new_result=`expr "X$testring" : ".*" 2>&1` &&
  5849. lt_cv_sys_max_cmd_len=$new_result &&
  5850. test $i != 17 # 1/2 MB should be enough
  5851. do
  5852. i=`expr $i + 1`
  5853. testring=$testring$testring
  5854. done
  5855. testring=
  5856. # Add a significant safety factor because C++ compilers can tack on massive
  5857. # amounts of additional arguments before passing them to the linker.
  5858. # It appears as though 1/2 is a usable value.
  5859. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
  5860. ;;
  5861. esac
  5862. ])
  5863. if test -n $lt_cv_sys_max_cmd_len ; then
  5864. AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
  5865. else
  5866. AC_MSG_RESULT(none)
  5867. fi
  5868. ])# AC_LIBTOOL_SYS_MAX_CMD_LEN
  5869. # _LT_AC_CHECK_DLFCN
  5870. # --------------------
  5871. AC_DEFUN([_LT_AC_CHECK_DLFCN],
  5872. [AC_CHECK_HEADERS(dlfcn.h)dnl
  5873. ])# _LT_AC_CHECK_DLFCN
  5874. # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
  5875. # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
  5876. # ------------------------------------------------------------------
  5877. AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
  5878. [AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
  5879. if test "$cross_compiling" = yes; then :
  5880. [$4]
  5881. else
  5882. lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
  5883. lt_status=$lt_dlunknown
  5884. cat > conftest.$ac_ext <<EOF
  5885. [#line __oline__ "configure"
  5886. #include "confdefs.h"
  5887. #if HAVE_DLFCN_H
  5888. #include <dlfcn.h>
  5889. #endif
  5890. #include <stdio.h>
  5891. #ifdef RTLD_GLOBAL
  5892. # define LT_DLGLOBAL RTLD_GLOBAL
  5893. #else
  5894. # ifdef DL_GLOBAL
  5895. # define LT_DLGLOBAL DL_GLOBAL
  5896. # else
  5897. # define LT_DLGLOBAL 0
  5898. # endif
  5899. #endif
  5900. /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
  5901. find out it does not work in some platform. */
  5902. #ifndef LT_DLLAZY_OR_NOW
  5903. # ifdef RTLD_LAZY
  5904. # define LT_DLLAZY_OR_NOW RTLD_LAZY
  5905. # else
  5906. # ifdef DL_LAZY
  5907. # define LT_DLLAZY_OR_NOW DL_LAZY
  5908. # else
  5909. # ifdef RTLD_NOW
  5910. # define LT_DLLAZY_OR_NOW RTLD_NOW
  5911. # else
  5912. # ifdef DL_NOW
  5913. # define LT_DLLAZY_OR_NOW DL_NOW
  5914. # else
  5915. # define LT_DLLAZY_OR_NOW 0
  5916. # endif
  5917. # endif
  5918. # endif
  5919. # endif
  5920. #endif
  5921. #ifdef __cplusplus
  5922. extern "C" void exit (int);
  5923. #endif
  5924. void fnord() { int i=42;}
  5925. int main ()
  5926. {
  5927. void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
  5928. int status = $lt_dlunknown;
  5929. if (self)
  5930. {
  5931. if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
  5932. else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
  5933. /* dlclose (self); */
  5934. }
  5935. exit (status);
  5936. }]
  5937. EOF
  5938. if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
  5939. (./conftest; exit; ) 2>/dev/null
  5940. lt_status=$?
  5941. case x$lt_status in
  5942. x$lt_dlno_uscore) $1 ;;
  5943. x$lt_dlneed_uscore) $2 ;;
  5944. x$lt_unknown|x*) $3 ;;
  5945. esac
  5946. else :
  5947. # compilation failed
  5948. $3
  5949. fi
  5950. fi
  5951. rm -fr conftest*
  5952. ])# _LT_AC_TRY_DLOPEN_SELF
  5953. # AC_LIBTOOL_DLOPEN_SELF
  5954. # -------------------
  5955. AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
  5956. [AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
  5957. if test "x$enable_dlopen" != xyes; then
  5958. enable_dlopen=unknown
  5959. enable_dlopen_self=unknown
  5960. enable_dlopen_self_static=unknown
  5961. else
  5962. lt_cv_dlopen=no
  5963. lt_cv_dlopen_libs=
  5964. case $host_os in
  5965. beos*)
  5966. lt_cv_dlopen="load_add_on"
  5967. lt_cv_dlopen_libs=
  5968. lt_cv_dlopen_self=yes
  5969. ;;
  5970. mingw* | pw32*)
  5971. lt_cv_dlopen="LoadLibrary"
  5972. lt_cv_dlopen_libs=
  5973. ;;
  5974. cygwin*)
  5975. lt_cv_dlopen="dlopen"
  5976. lt_cv_dlopen_libs=
  5977. ;;
  5978. darwin*)
  5979. # if libdl is installed we need to link against it
  5980. AC_CHECK_LIB([dl], [dlopen],
  5981. [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
  5982. lt_cv_dlopen="dyld"
  5983. lt_cv_dlopen_libs=
  5984. lt_cv_dlopen_self=yes
  5985. ])
  5986. ;;
  5987. *)
  5988. AC_CHECK_FUNC([shl_load],
  5989. [lt_cv_dlopen="shl_load"],
  5990. [AC_CHECK_LIB([dld], [shl_load],
  5991. [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
  5992. [AC_CHECK_FUNC([dlopen],
  5993. [lt_cv_dlopen="dlopen"],
  5994. [AC_CHECK_LIB([dl], [dlopen],
  5995. [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
  5996. [AC_CHECK_LIB([svld], [dlopen],
  5997. [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
  5998. [AC_CHECK_LIB([dld], [dld_link],
  5999. [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
  6000. ])
  6001. ])
  6002. ])
  6003. ])
  6004. ])
  6005. ;;
  6006. esac
  6007. if test "x$lt_cv_dlopen" != xno; then
  6008. enable_dlopen=yes
  6009. else
  6010. enable_dlopen=no
  6011. fi
  6012. case $lt_cv_dlopen in
  6013. dlopen)
  6014. save_CPPFLAGS="$CPPFLAGS"
  6015. test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
  6016. save_LDFLAGS="$LDFLAGS"
  6017. eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
  6018. save_LIBS="$LIBS"
  6019. LIBS="$lt_cv_dlopen_libs $LIBS"
  6020. AC_CACHE_CHECK([whether a program can dlopen itself],
  6021. lt_cv_dlopen_self, [dnl
  6022. _LT_AC_TRY_DLOPEN_SELF(
  6023. lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
  6024. lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
  6025. ])
  6026. if test "x$lt_cv_dlopen_self" = xyes; then
  6027. LDFLAGS="$LDFLAGS $link_static_flag"
  6028. AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
  6029. lt_cv_dlopen_self_static, [dnl
  6030. _LT_AC_TRY_DLOPEN_SELF(
  6031. lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
  6032. lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
  6033. ])
  6034. fi
  6035. CPPFLAGS="$save_CPPFLAGS"
  6036. LDFLAGS="$save_LDFLAGS"
  6037. LIBS="$save_LIBS"
  6038. ;;
  6039. esac
  6040. case $lt_cv_dlopen_self in
  6041. yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
  6042. *) enable_dlopen_self=unknown ;;
  6043. esac
  6044. case $lt_cv_dlopen_self_static in
  6045. yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
  6046. *) enable_dlopen_self_static=unknown ;;
  6047. esac
  6048. fi
  6049. ])# AC_LIBTOOL_DLOPEN_SELF
  6050. # AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
  6051. # ---------------------------------
  6052. # Check to see if options -c and -o are simultaneously supported by compiler
  6053. AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
  6054. [AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
  6055. AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
  6056. [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
  6057. [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
  6058. $rm -r conftest 2>/dev/null
  6059. mkdir conftest
  6060. cd conftest
  6061. mkdir out
  6062. printf "$lt_simple_compile_test_code" > conftest.$ac_ext
  6063. # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
  6064. # that will create temporary files in the current directory regardless of
  6065. # the output directory. Thus, making CWD read-only will cause this test
  6066. # to fail, enabling locking or at least warning the user not to do parallel
  6067. # builds.
  6068. chmod -w .
  6069. lt_compiler_flag="-o out/conftest2.$ac_objext"
  6070. # Insert the option either (1) after the last *FLAGS variable, or
  6071. # (2) before a word containing "conftest.", or (3) at the end.
  6072. # Note that $ac_compile itself does not contain backslashes and begins
  6073. # with a dollar sign (not a hyphen), so the echo should work correctly.
  6074. lt_compile=`echo "$ac_compile" | $SED \
  6075. -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
  6076. -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
  6077. -e 's:$: $lt_compiler_flag:'`
  6078. (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
  6079. (eval "$lt_compile" 2>out/conftest.err)
  6080. ac_status=$?
  6081. cat out/conftest.err >&AS_MESSAGE_LOG_FD
  6082. echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
  6083. if (exit $ac_status) && test -s out/conftest2.$ac_objext
  6084. then
  6085. # The compiler can only warn and ignore the option if not recognized
  6086. # So say no if there are warnings
  6087. if test ! -s out/conftest.err; then
  6088. _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
  6089. fi
  6090. fi
  6091. chmod u+w .
  6092. $rm conftest* out/*
  6093. rmdir out
  6094. cd ..
  6095. rmdir conftest
  6096. $rm conftest*
  6097. ])
  6098. ])# AC_LIBTOOL_PROG_CC_C_O
  6099. # AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
  6100. # -----------------------------------------
  6101. # Check to see if we can do hard links to lock some files if needed
  6102. AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
  6103. [AC_REQUIRE([_LT_AC_LOCK])dnl
  6104. hard_links="nottested"
  6105. if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
  6106. # do not overwrite the value of need_locks provided by the user
  6107. AC_MSG_CHECKING([if we can lock with hard links])
  6108. hard_links=yes
  6109. $rm conftest*
  6110. ln conftest.a conftest.b 2>/dev/null && hard_links=no
  6111. touch conftest.a
  6112. ln conftest.a conftest.b 2>&5 || hard_links=no
  6113. ln conftest.a conftest.b 2>/dev/null && hard_links=no
  6114. AC_MSG_RESULT([$hard_links])
  6115. if test "$hard_links" = no; then
  6116. AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
  6117. need_locks=warn
  6118. fi
  6119. else
  6120. need_locks=no
  6121. fi
  6122. ])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
  6123. # AC_LIBTOOL_OBJDIR
  6124. # -----------------
  6125. AC_DEFUN([AC_LIBTOOL_OBJDIR],
  6126. [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
  6127. [rm -f .libs 2>/dev/null
  6128. mkdir .libs 2>/dev/null
  6129. if test -d .libs; then
  6130. lt_cv_objdir=.libs
  6131. else
  6132. # MS-DOS does not allow filenames that begin with a dot.
  6133. lt_cv_objdir=_libs
  6134. fi
  6135. rmdir .libs 2>/dev/null])
  6136. objdir=$lt_cv_objdir
  6137. ])# AC_LIBTOOL_OBJDIR
  6138. # AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
  6139. # ----------------------------------------------
  6140. # Check hardcoding attributes.
  6141. AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
  6142. [AC_MSG_CHECKING([how to hardcode library paths into programs])
  6143. _LT_AC_TAGVAR(hardcode_action, $1)=
  6144. if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
  6145. test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \
  6146. test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then
  6147. # We can hardcode non-existant directories.
  6148. if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
  6149. # If the only mechanism to avoid hardcoding is shlibpath_var, we
  6150. # have to relink, otherwise we might link with an installed library
  6151. # when we should be linking with a yet-to-be-installed one
  6152. ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
  6153. test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
  6154. # Linking always hardcodes the temporary library directory.
  6155. _LT_AC_TAGVAR(hardcode_action, $1)=relink
  6156. else
  6157. # We can link without hardcoding, and we can hardcode nonexisting dirs.
  6158. _LT_AC_TAGVAR(hardcode_action, $1)=immediate
  6159. fi
  6160. else
  6161. # We cannot hardcode anything, or else we can only hardcode existing
  6162. # directories.
  6163. _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
  6164. fi
  6165. AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
  6166. if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
  6167. # Fast installation is not supported
  6168. enable_fast_install=no
  6169. elif test "$shlibpath_overrides_runpath" = yes ||
  6170. test "$enable_shared" = no; then
  6171. # Fast installation is not necessary
  6172. enable_fast_install=needless
  6173. fi
  6174. ])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
  6175. # AC_LIBTOOL_SYS_LIB_STRIP
  6176. # ------------------------
  6177. AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
  6178. [striplib=
  6179. old_striplib=
  6180. AC_MSG_CHECKING([whether stripping libraries is possible])
  6181. if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
  6182. test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
  6183. test -z "$striplib" && striplib="$STRIP --strip-unneeded"
  6184. AC_MSG_RESULT([yes])
  6185. else
  6186. # FIXME - insert some real tests, host_os isn't really good enough
  6187. case $host_os in
  6188. darwin*)
  6189. if test -n "$STRIP" ; then
  6190. striplib="$STRIP -x"
  6191. AC_MSG_RESULT([yes])
  6192. else
  6193. AC_MSG_RESULT([no])
  6194. fi
  6195. ;;
  6196. *)
  6197. AC_MSG_RESULT([no])
  6198. ;;
  6199. esac
  6200. fi
  6201. ])# AC_LIBTOOL_SYS_LIB_STRIP
  6202. # AC_LIBTOOL_SYS_DYNAMIC_LINKER
  6203. # -----------------------------
  6204. # PORTME Fill in your ld.so characteristics
  6205. AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
  6206. [AC_MSG_CHECKING([dynamic linker characteristics])
  6207. library_names_spec=
  6208. libname_spec='lib$name'
  6209. soname_spec=
  6210. shrext=".so"
  6211. postinstall_cmds=
  6212. postuninstall_cmds=
  6213. finish_cmds=
  6214. finish_eval=
  6215. shlibpath_var=
  6216. shlibpath_overrides_runpath=unknown
  6217. version_type=none
  6218. dynamic_linker="$host_os ld.so"
  6219. sys_lib_dlsearch_path_spec="/lib /usr/lib"
  6220. sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
  6221. need_lib_prefix=unknown
  6222. hardcode_into_libs=no
  6223. # when you set need_version to no, make sure it does not cause -set_version
  6224. # flags to be left without arguments
  6225. need_version=unknown
  6226. case $host_os in
  6227. aix3*)
  6228. version_type=linux
  6229. library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
  6230. shlibpath_var=LIBPATH
  6231. # AIX 3 has no versioning support, so we append a major version to the name.
  6232. soname_spec='${libname}${release}${shared_ext}$major'
  6233. ;;
  6234. aix4* | aix5*)
  6235. version_type=linux
  6236. need_lib_prefix=no
  6237. need_version=no
  6238. hardcode_into_libs=yes
  6239. if test "$host_cpu" = ia64; then
  6240. # AIX 5 supports IA64
  6241. library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
  6242. shlibpath_var=LD_LIBRARY_PATH
  6243. else
  6244. # With GCC up to 2.95.x, collect2 would create an import file
  6245. # for dependence libraries. The import file would start with
  6246. # the line `#! .'. This would cause the generated library to
  6247. # depend on `.', always an invalid library. This was fixed in
  6248. # development snapshots of GCC prior to 3.0.
  6249. case $host_os in
  6250. aix4 | aix4.[[01]] | aix4.[[01]].*)
  6251. if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
  6252. echo ' yes '
  6253. echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
  6254. :
  6255. else
  6256. can_build_shared=no
  6257. fi
  6258. ;;
  6259. esac
  6260. # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
  6261. # soname into executable. Probably we can add versioning support to
  6262. # collect2, so additional links can be useful in future.
  6263. if test "$aix_use_runtimelinking" = yes; then
  6264. # If using run time linking (on AIX 4.2 or later) use lib<name>.so
  6265. # instead of lib<name>.a to let people know that these are not
  6266. # typical AIX shared libraries.
  6267. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6268. else
  6269. # We preserve .a as extension for shared libraries through AIX4.2
  6270. # and later when we are not doing run time linking.
  6271. library_names_spec='${libname}${release}.a $libname.a'
  6272. soname_spec='${libname}${release}${shared_ext}$major'
  6273. fi
  6274. shlibpath_var=LIBPATH
  6275. fi
  6276. ;;
  6277. amigaos*)
  6278. library_names_spec='$libname.ixlibrary $libname.a'
  6279. # Create ${libname}_ixlibrary.a entries in /sys/libs.
  6280. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
  6281. ;;
  6282. beos*)
  6283. library_names_spec='${libname}${shared_ext}'
  6284. dynamic_linker="$host_os ld.so"
  6285. shlibpath_var=LIBRARY_PATH
  6286. ;;
  6287. bsdi4*)
  6288. version_type=linux
  6289. need_version=no
  6290. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6291. soname_spec='${libname}${release}${shared_ext}$major'
  6292. finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
  6293. shlibpath_var=LD_LIBRARY_PATH
  6294. sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
  6295. sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
  6296. # the default ld.so.conf also contains /usr/contrib/lib and
  6297. # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
  6298. # libtool to hard-code these into programs
  6299. ;;
  6300. cygwin* | mingw* | pw32*)
  6301. version_type=windows
  6302. shrext=".dll"
  6303. need_version=no
  6304. need_lib_prefix=no
  6305. case $GCC,$host_os in
  6306. yes,cygwin* | yes,mingw* | yes,pw32*)
  6307. library_names_spec='$libname.dll.a'
  6308. # DLL is installed to $(libdir)/../bin by postinstall_cmds
  6309. postinstall_cmds='base_file=`basename \${file}`~
  6310. dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
  6311. dldir=$destdir/`dirname \$dlpath`~
  6312. test -d \$dldir || mkdir -p \$dldir~
  6313. $install_prog $dir/$dlname \$dldir/$dlname'
  6314. postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
  6315. dlpath=$dir/\$dldll~
  6316. $rm \$dlpath'
  6317. shlibpath_overrides_runpath=yes
  6318. case $host_os in
  6319. cygwin*)
  6320. # Cygwin DLLs use 'cyg' prefix rather than 'lib'
  6321. soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
  6322. sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
  6323. ;;
  6324. mingw*)
  6325. # MinGW DLLs use traditional 'lib' prefix
  6326. soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
  6327. sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
  6328. if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then
  6329. # It is most probably a Windows format PATH printed by
  6330. # mingw gcc, but we are running on Cygwin. Gcc prints its search
  6331. # path with ; separators, and with drive letters. We can handle the
  6332. # drive letters (cygwin fileutils understands them), so leave them,
  6333. # especially as we might pass files found there to a mingw objdump,
  6334. # which wouldn't understand a cygwinified path. Ahh.
  6335. sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
  6336. else
  6337. sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
  6338. fi
  6339. ;;
  6340. pw32*)
  6341. # pw32 DLLs use 'pw' prefix rather than 'lib'
  6342. library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
  6343. ;;
  6344. esac
  6345. ;;
  6346. *)
  6347. library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
  6348. ;;
  6349. esac
  6350. dynamic_linker='Win32 ld.exe'
  6351. # FIXME: first we should search . and the directory the executable is in
  6352. shlibpath_var=PATH
  6353. ;;
  6354. darwin* | rhapsody*)
  6355. dynamic_linker="$host_os dyld"
  6356. version_type=darwin
  6357. need_lib_prefix=no
  6358. need_version=no
  6359. library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
  6360. soname_spec='${libname}${release}${major}$shared_ext'
  6361. shlibpath_overrides_runpath=yes
  6362. shlibpath_var=DYLD_LIBRARY_PATH
  6363. shrext='$(test .$module = .yes && echo .so || echo .dylib)'
  6364. # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
  6365. if test "$GCC" = yes; then
  6366. sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
  6367. else
  6368. sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
  6369. fi
  6370. sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
  6371. ;;
  6372. dgux*)
  6373. version_type=linux
  6374. need_lib_prefix=no
  6375. need_version=no
  6376. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
  6377. soname_spec='${libname}${release}${shared_ext}$major'
  6378. shlibpath_var=LD_LIBRARY_PATH
  6379. ;;
  6380. freebsd1*)
  6381. dynamic_linker=no
  6382. ;;
  6383. kfreebsd*-gnu*)
  6384. version_type=linux
  6385. need_lib_prefix=no
  6386. need_version=no
  6387. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
  6388. soname_spec='${libname}${release}${shared_ext}$major'
  6389. shlibpath_var=LD_LIBRARY_PATH
  6390. shlibpath_overrides_runpath=no
  6391. hardcode_into_libs=yes
  6392. dynamic_linker='GNU ld.so'
  6393. ;;
  6394. freebsd*)
  6395. objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
  6396. version_type=freebsd-$objformat
  6397. case $version_type in
  6398. freebsd-elf*)
  6399. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
  6400. need_version=no
  6401. need_lib_prefix=no
  6402. ;;
  6403. freebsd-*)
  6404. library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
  6405. need_version=yes
  6406. ;;
  6407. esac
  6408. shlibpath_var=LD_LIBRARY_PATH
  6409. case $host_os in
  6410. freebsd2*)
  6411. shlibpath_overrides_runpath=yes
  6412. ;;
  6413. freebsd3.[01]* | freebsdelf3.[01]*)
  6414. shlibpath_overrides_runpath=yes
  6415. hardcode_into_libs=yes
  6416. ;;
  6417. *) # from 3.2 on
  6418. shlibpath_overrides_runpath=no
  6419. hardcode_into_libs=yes
  6420. ;;
  6421. esac
  6422. ;;
  6423. gnu*)
  6424. version_type=linux
  6425. need_lib_prefix=no
  6426. need_version=no
  6427. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
  6428. soname_spec='${libname}${release}${shared_ext}$major'
  6429. shlibpath_var=LD_LIBRARY_PATH
  6430. hardcode_into_libs=yes
  6431. ;;
  6432. hpux9* | hpux10* | hpux11*)
  6433. # Give a soname corresponding to the major version so that dld.sl refuses to
  6434. # link against other versions.
  6435. version_type=sunos
  6436. need_lib_prefix=no
  6437. need_version=no
  6438. case "$host_cpu" in
  6439. ia64*)
  6440. shrext='.so'
  6441. hardcode_into_libs=yes
  6442. dynamic_linker="$host_os dld.so"
  6443. shlibpath_var=LD_LIBRARY_PATH
  6444. shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
  6445. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6446. soname_spec='${libname}${release}${shared_ext}$major'
  6447. if test "X$HPUX_IA64_MODE" = X32; then
  6448. sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
  6449. else
  6450. sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
  6451. fi
  6452. sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
  6453. ;;
  6454. hppa*64*)
  6455. shrext='.sl'
  6456. hardcode_into_libs=yes
  6457. dynamic_linker="$host_os dld.sl"
  6458. shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
  6459. shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
  6460. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6461. soname_spec='${libname}${release}${shared_ext}$major'
  6462. sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
  6463. sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
  6464. ;;
  6465. *)
  6466. shrext='.sl'
  6467. dynamic_linker="$host_os dld.sl"
  6468. shlibpath_var=SHLIB_PATH
  6469. shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
  6470. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6471. soname_spec='${libname}${release}${shared_ext}$major'
  6472. ;;
  6473. esac
  6474. # HP-UX runs *really* slowly unless shared libraries are mode 555.
  6475. postinstall_cmds='chmod 555 $lib'
  6476. ;;
  6477. irix5* | irix6* | nonstopux*)
  6478. case $host_os in
  6479. nonstopux*) version_type=nonstopux ;;
  6480. *)
  6481. if test "$lt_cv_prog_gnu_ld" = yes; then
  6482. version_type=linux
  6483. else
  6484. version_type=irix
  6485. fi ;;
  6486. esac
  6487. need_lib_prefix=no
  6488. need_version=no
  6489. soname_spec='${libname}${release}${shared_ext}$major'
  6490. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
  6491. case $host_os in
  6492. irix5* | nonstopux*)
  6493. libsuff= shlibsuff=
  6494. ;;
  6495. *)
  6496. case $LD in # libtool.m4 will add one of these switches to LD
  6497. *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
  6498. libsuff= shlibsuff= libmagic=32-bit;;
  6499. *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
  6500. libsuff=32 shlibsuff=N32 libmagic=N32;;
  6501. *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
  6502. libsuff=64 shlibsuff=64 libmagic=64-bit;;
  6503. *) libsuff= shlibsuff= libmagic=never-match;;
  6504. esac
  6505. ;;
  6506. esac
  6507. shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
  6508. shlibpath_overrides_runpath=no
  6509. sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
  6510. sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
  6511. hardcode_into_libs=yes
  6512. ;;
  6513. # No shared lib support for Linux oldld, aout, or coff.
  6514. linux*oldld* | linux*aout* | linux*coff*)
  6515. dynamic_linker=no
  6516. ;;
  6517. # This must be Linux ELF.
  6518. linux*)
  6519. version_type=linux
  6520. need_lib_prefix=no
  6521. need_version=no
  6522. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6523. soname_spec='${libname}${release}${shared_ext}$major'
  6524. finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  6525. libsuff=
  6526. if test "x$LINUX_64_MODE" = x64; then
  6527. # Some platforms are per default 64-bit, so there's no /lib64
  6528. if test -d /lib64 -a ! -h /lib64; then
  6529. libsuff=64
  6530. fi
  6531. fi
  6532. shlibpath_var=LD_LIBRARY_PATH
  6533. shlibpath_overrides_runpath=no
  6534. sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}"
  6535. sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
  6536. # This implies no fast_install, which is unacceptable.
  6537. # Some rework will be needed to allow for fast_install
  6538. # before this can be enabled.
  6539. hardcode_into_libs=yes
  6540. # We used to test for /lib/ld.so.1 and disable shared libraries on
  6541. # powerpc, because MkLinux only supported shared libraries with the
  6542. # GNU dynamic linker. Since this was broken with cross compilers,
  6543. # most powerpc-linux boxes support dynamic linking these days and
  6544. # people can always --disable-shared, the test was removed, and we
  6545. # assume the GNU/Linux dynamic linker is in use.
  6546. dynamic_linker='GNU/Linux ld.so'
  6547. ;;
  6548. netbsd*)
  6549. version_type=sunos
  6550. need_lib_prefix=no
  6551. need_version=no
  6552. if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  6553. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
  6554. finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  6555. dynamic_linker='NetBSD (a.out) ld.so'
  6556. else
  6557. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}'
  6558. soname_spec='${libname}${release}${shared_ext}$major'
  6559. dynamic_linker='NetBSD ld.elf_so'
  6560. fi
  6561. shlibpath_var=LD_LIBRARY_PATH
  6562. shlibpath_overrides_runpath=yes
  6563. hardcode_into_libs=yes
  6564. ;;
  6565. newsos6)
  6566. version_type=linux
  6567. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6568. shlibpath_var=LD_LIBRARY_PATH
  6569. shlibpath_overrides_runpath=yes
  6570. ;;
  6571. nto-qnx*)
  6572. version_type=linux
  6573. need_lib_prefix=no
  6574. need_version=no
  6575. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6576. soname_spec='${libname}${release}${shared_ext}$major'
  6577. shlibpath_var=LD_LIBRARY_PATH
  6578. shlibpath_overrides_runpath=yes
  6579. ;;
  6580. openbsd*)
  6581. version_type=sunos
  6582. need_lib_prefix=no
  6583. need_version=no
  6584. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
  6585. finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  6586. shlibpath_var=LD_LIBRARY_PATH
  6587. if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  6588. case $host_os in
  6589. openbsd2.[[89]] | openbsd2.[[89]].*)
  6590. shlibpath_overrides_runpath=no
  6591. ;;
  6592. *)
  6593. shlibpath_overrides_runpath=yes
  6594. ;;
  6595. esac
  6596. else
  6597. shlibpath_overrides_runpath=yes
  6598. fi
  6599. ;;
  6600. os2*)
  6601. libname_spec='$name'
  6602. shrext=".dll"
  6603. need_lib_prefix=no
  6604. library_names_spec='$libname${shared_ext} $libname.a'
  6605. dynamic_linker='OS/2 ld.exe'
  6606. shlibpath_var=LIBPATH
  6607. ;;
  6608. osf3* | osf4* | osf5*)
  6609. version_type=osf
  6610. need_lib_prefix=no
  6611. need_version=no
  6612. soname_spec='${libname}${release}${shared_ext}$major'
  6613. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6614. shlibpath_var=LD_LIBRARY_PATH
  6615. sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
  6616. sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
  6617. ;;
  6618. sco3.2v5*)
  6619. version_type=osf
  6620. soname_spec='${libname}${release}${shared_ext}$major'
  6621. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6622. shlibpath_var=LD_LIBRARY_PATH
  6623. ;;
  6624. solaris*)
  6625. version_type=linux
  6626. need_lib_prefix=no
  6627. need_version=no
  6628. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6629. soname_spec='${libname}${release}${shared_ext}$major'
  6630. shlibpath_var=LD_LIBRARY_PATH
  6631. shlibpath_overrides_runpath=yes
  6632. hardcode_into_libs=yes
  6633. # ldd complains unless libraries are executable
  6634. postinstall_cmds='chmod +x $lib'
  6635. ;;
  6636. sunos4*)
  6637. version_type=sunos
  6638. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
  6639. finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
  6640. shlibpath_var=LD_LIBRARY_PATH
  6641. shlibpath_overrides_runpath=yes
  6642. if test "$with_gnu_ld" = yes; then
  6643. need_lib_prefix=no
  6644. fi
  6645. need_version=yes
  6646. ;;
  6647. sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  6648. version_type=linux
  6649. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6650. soname_spec='${libname}${release}${shared_ext}$major'
  6651. shlibpath_var=LD_LIBRARY_PATH
  6652. case $host_vendor in
  6653. sni)
  6654. shlibpath_overrides_runpath=no
  6655. need_lib_prefix=no
  6656. export_dynamic_flag_spec='${wl}-Blargedynsym'
  6657. runpath_var=LD_RUN_PATH
  6658. ;;
  6659. siemens)
  6660. need_lib_prefix=no
  6661. ;;
  6662. motorola)
  6663. need_lib_prefix=no
  6664. need_version=no
  6665. shlibpath_overrides_runpath=no
  6666. sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
  6667. ;;
  6668. esac
  6669. ;;
  6670. sysv4*MP*)
  6671. if test -d /usr/nec ;then
  6672. version_type=linux
  6673. library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
  6674. soname_spec='$libname${shared_ext}.$major'
  6675. shlibpath_var=LD_LIBRARY_PATH
  6676. fi
  6677. ;;
  6678. uts4*)
  6679. version_type=linux
  6680. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
  6681. soname_spec='${libname}${release}${shared_ext}$major'
  6682. shlibpath_var=LD_LIBRARY_PATH
  6683. ;;
  6684. *)
  6685. dynamic_linker=no
  6686. ;;
  6687. esac
  6688. AC_MSG_RESULT([$dynamic_linker])
  6689. test "$dynamic_linker" = no && can_build_shared=no
  6690. ])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
  6691. # _LT_AC_TAGCONFIG
  6692. # ----------------
  6693. AC_DEFUN([_LT_AC_TAGCONFIG],
  6694. [AC_ARG_WITH([tags],
  6695. [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
  6696. [include additional configurations @<:@automatic@:>@])],
  6697. [tagnames="$withval"])
  6698. if test -f "$ltmain" && test -n "$tagnames"; then
  6699. if test ! -f "${ofile}"; then
  6700. AC_MSG_WARN([output file `$ofile' does not exist])
  6701. fi
  6702. if test -z "$LTCC"; then
  6703. eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
  6704. if test -z "$LTCC"; then
  6705. AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
  6706. else
  6707. AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
  6708. fi
  6709. fi
  6710. # Extract list of available tagged configurations in $ofile.
  6711. # Note that this assumes the entire list is on one line.
  6712. available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
  6713. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
  6714. for tagname in $tagnames; do
  6715. IFS="$lt_save_ifs"
  6716. # Check whether tagname contains only valid characters
  6717. case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
  6718. "") ;;
  6719. *) AC_MSG_ERROR([invalid tag name: $tagname])
  6720. ;;
  6721. esac
  6722. if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
  6723. then
  6724. AC_MSG_ERROR([tag name \"$tagname\" already exists])
  6725. fi
  6726. # Update the list of available tags.
  6727. if test -n "$tagname"; then
  6728. echo appending configuration tag \"$tagname\" to $ofile
  6729. case $tagname in
  6730. CXX)
  6731. if test -n "$CXX" && test "X$CXX" != "Xno"; then
  6732. AC_LIBTOOL_LANG_CXX_CONFIG
  6733. else
  6734. tagname=""
  6735. fi
  6736. ;;
  6737. F77)
  6738. if test -n "$F77" && test "X$F77" != "Xno"; then
  6739. AC_LIBTOOL_LANG_F77_CONFIG
  6740. else
  6741. tagname=""
  6742. fi
  6743. ;;
  6744. GCJ)
  6745. if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
  6746. AC_LIBTOOL_LANG_GCJ_CONFIG
  6747. else
  6748. tagname=""
  6749. fi
  6750. ;;
  6751. RC)
  6752. AC_LIBTOOL_LANG_RC_CONFIG
  6753. ;;
  6754. *)
  6755. AC_MSG_ERROR([Unsupported tag name: $tagname])
  6756. ;;
  6757. esac
  6758. # Append the new tag name to the list of available tags.
  6759. if test -n "$tagname" ; then
  6760. available_tags="$available_tags $tagname"
  6761. fi
  6762. fi
  6763. done
  6764. IFS="$lt_save_ifs"
  6765. # Now substitute the updated list of available tags.
  6766. if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
  6767. mv "${ofile}T" "$ofile"
  6768. chmod +x "$ofile"
  6769. else
  6770. rm -f "${ofile}T"
  6771. AC_MSG_ERROR([unable to update list of available tagged configurations.])
  6772. fi
  6773. fi
  6774. ])# _LT_AC_TAGCONFIG
  6775. # AC_LIBTOOL_DLOPEN
  6776. # -----------------
  6777. # enable checks for dlopen support
  6778. AC_DEFUN([AC_LIBTOOL_DLOPEN],
  6779. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
  6780. ])# AC_LIBTOOL_DLOPEN
  6781. # AC_LIBTOOL_WIN32_DLL
  6782. # --------------------
  6783. # declare package support for building win32 dll's
  6784. AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
  6785. [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
  6786. ])# AC_LIBTOOL_WIN32_DLL
  6787. # AC_ENABLE_SHARED([DEFAULT])
  6788. # ---------------------------
  6789. # implement the --enable-shared flag
  6790. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
  6791. AC_DEFUN([AC_ENABLE_SHARED],
  6792. [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
  6793. AC_ARG_ENABLE([shared],
  6794. [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
  6795. [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
  6796. [p=${PACKAGE-default}
  6797. case $enableval in
  6798. yes) enable_shared=yes ;;
  6799. no) enable_shared=no ;;
  6800. *)
  6801. enable_shared=no
  6802. # Look at the argument we got. We use all the common list separators.
  6803. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
  6804. for pkg in $enableval; do
  6805. IFS="$lt_save_ifs"
  6806. if test "X$pkg" = "X$p"; then
  6807. enable_shared=yes
  6808. fi
  6809. done
  6810. IFS="$lt_save_ifs"
  6811. ;;
  6812. esac],
  6813. [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
  6814. ])# AC_ENABLE_SHARED
  6815. # AC_DISABLE_SHARED
  6816. # -----------------
  6817. #- set the default shared flag to --disable-shared
  6818. AC_DEFUN([AC_DISABLE_SHARED],
  6819. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  6820. AC_ENABLE_SHARED(no)
  6821. ])# AC_DISABLE_SHARED
  6822. # AC_ENABLE_STATIC([DEFAULT])
  6823. # ---------------------------
  6824. # implement the --enable-static flag
  6825. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
  6826. AC_DEFUN([AC_ENABLE_STATIC],
  6827. [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
  6828. AC_ARG_ENABLE([static],
  6829. [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
  6830. [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
  6831. [p=${PACKAGE-default}
  6832. case $enableval in
  6833. yes) enable_static=yes ;;
  6834. no) enable_static=no ;;
  6835. *)
  6836. enable_static=no
  6837. # Look at the argument we got. We use all the common list separators.
  6838. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
  6839. for pkg in $enableval; do
  6840. IFS="$lt_save_ifs"
  6841. if test "X$pkg" = "X$p"; then
  6842. enable_static=yes
  6843. fi
  6844. done
  6845. IFS="$lt_save_ifs"
  6846. ;;
  6847. esac],
  6848. [enable_static=]AC_ENABLE_STATIC_DEFAULT)
  6849. ])# AC_ENABLE_STATIC
  6850. # AC_DISABLE_STATIC
  6851. # -----------------
  6852. # set the default static flag to --disable-static
  6853. AC_DEFUN([AC_DISABLE_STATIC],
  6854. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  6855. AC_ENABLE_STATIC(no)
  6856. ])# AC_DISABLE_STATIC
  6857. # AC_ENABLE_FAST_INSTALL([DEFAULT])
  6858. # ---------------------------------
  6859. # implement the --enable-fast-install flag
  6860. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
  6861. AC_DEFUN([AC_ENABLE_FAST_INSTALL],
  6862. [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
  6863. AC_ARG_ENABLE([fast-install],
  6864. [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
  6865. [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
  6866. [p=${PACKAGE-default}
  6867. case $enableval in
  6868. yes) enable_fast_install=yes ;;
  6869. no) enable_fast_install=no ;;
  6870. *)
  6871. enable_fast_install=no
  6872. # Look at the argument we got. We use all the common list separators.
  6873. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
  6874. for pkg in $enableval; do
  6875. IFS="$lt_save_ifs"
  6876. if test "X$pkg" = "X$p"; then
  6877. enable_fast_install=yes
  6878. fi
  6879. done
  6880. IFS="$lt_save_ifs"
  6881. ;;
  6882. esac],
  6883. [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
  6884. ])# AC_ENABLE_FAST_INSTALL
  6885. # AC_DISABLE_FAST_INSTALL
  6886. # -----------------------
  6887. # set the default to --disable-fast-install
  6888. AC_DEFUN([AC_DISABLE_FAST_INSTALL],
  6889. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  6890. AC_ENABLE_FAST_INSTALL(no)
  6891. ])# AC_DISABLE_FAST_INSTALL
  6892. # AC_LIBTOOL_PICMODE([MODE])
  6893. # --------------------------
  6894. # implement the --with-pic flag
  6895. # MODE is either `yes' or `no'. If omitted, it defaults to `both'.
  6896. AC_DEFUN([AC_LIBTOOL_PICMODE],
  6897. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  6898. pic_mode=ifelse($#,1,$1,default)
  6899. ])# AC_LIBTOOL_PICMODE
  6900. # AC_PROG_EGREP
  6901. # -------------
  6902. # This is predefined starting with Autoconf 2.54, so this conditional
  6903. # definition can be removed once we require Autoconf 2.54 or later.
  6904. m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
  6905. [AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
  6906. [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
  6907. then ac_cv_prog_egrep='grep -E'
  6908. else ac_cv_prog_egrep='egrep'
  6909. fi])
  6910. EGREP=$ac_cv_prog_egrep
  6911. AC_SUBST([EGREP])
  6912. ])])
  6913. # AC_PATH_TOOL_PREFIX
  6914. # -------------------
  6915. # find a file program which can recognise shared library
  6916. AC_DEFUN([AC_PATH_TOOL_PREFIX],
  6917. [AC_REQUIRE([AC_PROG_EGREP])dnl
  6918. AC_MSG_CHECKING([for $1])
  6919. AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
  6920. [case $MAGIC_CMD in
  6921. [[\\/*] | ?:[\\/]*])
  6922. lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
  6923. ;;
  6924. *)
  6925. lt_save_MAGIC_CMD="$MAGIC_CMD"
  6926. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  6927. dnl $ac_dummy forces splitting on constant user-supplied paths.
  6928. dnl POSIX.2 word splitting is done only on the output of word expansions,
  6929. dnl not every word. This closes a longstanding sh security hole.
  6930. ac_dummy="ifelse([$2], , $PATH, [$2])"
  6931. for ac_dir in $ac_dummy; do
  6932. IFS="$lt_save_ifs"
  6933. test -z "$ac_dir" && ac_dir=.
  6934. if test -f $ac_dir/$1; then
  6935. lt_cv_path_MAGIC_CMD="$ac_dir/$1"
  6936. if test -n "$file_magic_test_file"; then
  6937. case $deplibs_check_method in
  6938. "file_magic "*)
  6939. file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
  6940. MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
  6941. if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
  6942. $EGREP "$file_magic_regex" > /dev/null; then
  6943. :
  6944. else
  6945. cat <<EOF 1>&2
  6946. *** Warning: the command libtool uses to detect shared libraries,
  6947. *** $file_magic_cmd, produces output that libtool cannot recognize.
  6948. *** The result is that libtool may fail to recognize shared libraries
  6949. *** as such. This will affect the creation of libtool libraries that
  6950. *** depend on shared libraries, but programs linked with such libtool
  6951. *** libraries will work regardless of this problem. Nevertheless, you
  6952. *** may want to report the problem to your system manager and/or to
  6953. *** bug-libtool@gnu.org
  6954. EOF
  6955. fi ;;
  6956. esac
  6957. fi
  6958. break
  6959. fi
  6960. done
  6961. IFS="$lt_save_ifs"
  6962. MAGIC_CMD="$lt_save_MAGIC_CMD"
  6963. ;;
  6964. esac])
  6965. MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
  6966. if test -n "$MAGIC_CMD"; then
  6967. AC_MSG_RESULT($MAGIC_CMD)
  6968. else
  6969. AC_MSG_RESULT(no)
  6970. fi
  6971. ])# AC_PATH_TOOL_PREFIX
  6972. # AC_PATH_MAGIC
  6973. # -------------
  6974. # find a file program which can recognise a shared library
  6975. AC_DEFUN([AC_PATH_MAGIC],
  6976. [AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
  6977. if test -z "$lt_cv_path_MAGIC_CMD"; then
  6978. if test -n "$ac_tool_prefix"; then
  6979. AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
  6980. else
  6981. MAGIC_CMD=:
  6982. fi
  6983. fi
  6984. ])# AC_PATH_MAGIC
  6985. # AC_PROG_LD
  6986. # ----------
  6987. # find the pathname to the GNU or non-GNU linker
  6988. AC_DEFUN([AC_PROG_LD],
  6989. [AC_ARG_WITH([gnu-ld],
  6990. [AC_HELP_STRING([--with-gnu-ld],
  6991. [assume the C compiler uses GNU ld @<:@default=no@:>@])],
  6992. [test "$withval" = no || with_gnu_ld=yes],
  6993. [with_gnu_ld=no])
  6994. AC_REQUIRE([LT_AC_PROG_SED])dnl
  6995. AC_REQUIRE([AC_PROG_CC])dnl
  6996. AC_REQUIRE([AC_CANONICAL_HOST])dnl
  6997. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  6998. ac_prog=ld
  6999. if test "$GCC" = yes; then
  7000. # Check if gcc -print-prog-name=ld gives a path.
  7001. AC_MSG_CHECKING([for ld used by $CC])
  7002. case $host in
  7003. *-*-mingw*)
  7004. # gcc leaves a trailing carriage return which upsets mingw
  7005. ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
  7006. *)
  7007. ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
  7008. esac
  7009. case $ac_prog in
  7010. # Accept absolute paths.
  7011. [[\\/]]* | ?:[[\\/]]*)
  7012. re_direlt='/[[^/]][[^/]]*/\.\./'
  7013. # Canonicalize the pathname of ld
  7014. ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'`
  7015. while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
  7016. ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"`
  7017. done
  7018. test -z "$LD" && LD="$ac_prog"
  7019. ;;
  7020. "")
  7021. # If it fails, then pretend we aren't using GCC.
  7022. ac_prog=ld
  7023. ;;
  7024. *)
  7025. # If it is relative, then search for the first ld in PATH.
  7026. with_gnu_ld=unknown
  7027. ;;
  7028. esac
  7029. elif test "$with_gnu_ld" = yes; then
  7030. AC_MSG_CHECKING([for GNU ld])
  7031. else
  7032. AC_MSG_CHECKING([for non-GNU ld])
  7033. fi
  7034. AC_CACHE_VAL(lt_cv_path_LD,
  7035. [if test -z "$LD"; then
  7036. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  7037. for ac_dir in $PATH; do
  7038. IFS="$lt_save_ifs"
  7039. test -z "$ac_dir" && ac_dir=.
  7040. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
  7041. lt_cv_path_LD="$ac_dir/$ac_prog"
  7042. # Check to see if the program is GNU ld. I'd rather use --version,
  7043. # but apparently some GNU ld's only accept -v.
  7044. # Break only if it was the GNU/non-GNU ld that we prefer.
  7045. case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
  7046. *GNU* | *'with BFD'*)
  7047. test "$with_gnu_ld" != no && break
  7048. ;;
  7049. *)
  7050. test "$with_gnu_ld" != yes && break
  7051. ;;
  7052. esac
  7053. fi
  7054. done
  7055. IFS="$lt_save_ifs"
  7056. else
  7057. lt_cv_path_LD="$LD" # Let the user override the test with a path.
  7058. fi])
  7059. LD="$lt_cv_path_LD"
  7060. if test -n "$LD"; then
  7061. AC_MSG_RESULT($LD)
  7062. else
  7063. AC_MSG_RESULT(no)
  7064. fi
  7065. test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
  7066. AC_PROG_LD_GNU
  7067. ])# AC_PROG_LD
  7068. # AC_PROG_LD_GNU
  7069. # --------------
  7070. AC_DEFUN([AC_PROG_LD_GNU],
  7071. [AC_REQUIRE([AC_PROG_EGREP])dnl
  7072. AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
  7073. [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
  7074. case `$LD -v 2>&1 </dev/null` in
  7075. *GNU* | *'with BFD'*)
  7076. lt_cv_prog_gnu_ld=yes
  7077. ;;
  7078. *)
  7079. lt_cv_prog_gnu_ld=no
  7080. ;;
  7081. esac])
  7082. with_gnu_ld=$lt_cv_prog_gnu_ld
  7083. ])# AC_PROG_LD_GNU
  7084. # AC_PROG_LD_RELOAD_FLAG
  7085. # ----------------------
  7086. # find reload flag for linker
  7087. # -- PORTME Some linkers may need a different reload flag.
  7088. AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
  7089. [AC_CACHE_CHECK([for $LD option to reload object files],
  7090. lt_cv_ld_reload_flag,
  7091. [lt_cv_ld_reload_flag='-r'])
  7092. reload_flag=$lt_cv_ld_reload_flag
  7093. case $reload_flag in
  7094. "" | " "*) ;;
  7095. *) reload_flag=" $reload_flag" ;;
  7096. esac
  7097. reload_cmds='$LD$reload_flag -o $output$reload_objs'
  7098. ])# AC_PROG_LD_RELOAD_FLAG
  7099. # AC_DEPLIBS_CHECK_METHOD
  7100. # -----------------------
  7101. # how to check for library dependencies
  7102. # -- PORTME fill in with the dynamic library characteristics
  7103. AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
  7104. [AC_CACHE_CHECK([how to recognise dependent libraries],
  7105. lt_cv_deplibs_check_method,
  7106. [lt_cv_file_magic_cmd='$MAGIC_CMD'
  7107. lt_cv_file_magic_test_file=
  7108. lt_cv_deplibs_check_method='unknown'
  7109. # Need to set the preceding variable on all platforms that support
  7110. # interlibrary dependencies.
  7111. # 'none' -- dependencies not supported.
  7112. # `unknown' -- same as none, but documents that we really don't know.
  7113. # 'pass_all' -- all dependencies passed with no checks.
  7114. # 'test_compile' -- check by making test program.
  7115. # 'file_magic [[regex]]' -- check by looking for files in library path
  7116. # which responds to the $file_magic_cmd with a given extended regex.
  7117. # If you have `file' or equivalent on your system and you're not sure
  7118. # whether `pass_all' will *always* work, you probably want this one.
  7119. case $host_os in
  7120. aix4* | aix5*)
  7121. lt_cv_deplibs_check_method=pass_all
  7122. ;;
  7123. beos*)
  7124. lt_cv_deplibs_check_method=pass_all
  7125. ;;
  7126. bsdi4*)
  7127. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
  7128. lt_cv_file_magic_cmd='/usr/bin/file -L'
  7129. lt_cv_file_magic_test_file=/shlib/libc.so
  7130. ;;
  7131. cygwin*)
  7132. lt_cv_deplibs_check_method=pass_all
  7133. ;;
  7134. mingw* | pw32*)
  7135. # win32_libid is a shell function defined in ltmain.sh
  7136. lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
  7137. lt_cv_file_magic_cmd='win32_libid'
  7138. ;;
  7139. darwin* | rhapsody*)
  7140. # this will be overwritten by pass_all, but leave it in just in case
  7141. lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
  7142. lt_cv_file_magic_cmd='/usr/bin/file -L'
  7143. case "$host_os" in
  7144. rhapsody* | darwin1.[[012]])
  7145. lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System`
  7146. ;;
  7147. *) # Darwin 1.3 on
  7148. lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
  7149. ;;
  7150. esac
  7151. lt_cv_deplibs_check_method=pass_all
  7152. ;;
  7153. freebsd* | kfreebsd*-gnu)
  7154. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  7155. case $host_cpu in
  7156. i*86 )
  7157. # Not sure whether the presence of OpenBSD here was a mistake.
  7158. # Let's accept both of them until this is cleared up.
  7159. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
  7160. lt_cv_file_magic_cmd=/usr/bin/file
  7161. lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
  7162. ;;
  7163. esac
  7164. else
  7165. lt_cv_deplibs_check_method=pass_all
  7166. fi
  7167. ;;
  7168. gnu*)
  7169. lt_cv_deplibs_check_method=pass_all
  7170. ;;
  7171. hpux10.20* | hpux11*)
  7172. lt_cv_file_magic_cmd=/usr/bin/file
  7173. case "$host_cpu" in
  7174. ia64*)
  7175. lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
  7176. lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
  7177. ;;
  7178. hppa*64*)
  7179. [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
  7180. lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
  7181. ;;
  7182. *)
  7183. lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
  7184. lt_cv_file_magic_test_file=/usr/lib/libc.sl
  7185. ;;
  7186. esac
  7187. ;;
  7188. irix5* | irix6* | nonstopux*)
  7189. case $host_os in
  7190. irix5* | nonstopux*)
  7191. # this will be overridden with pass_all, but let us keep it just in case
  7192. lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
  7193. ;;
  7194. *)
  7195. case $LD in
  7196. *-32|*"-32 ") libmagic=32-bit;;
  7197. *-n32|*"-n32 ") libmagic=N32;;
  7198. *-64|*"-64 ") libmagic=64-bit;;
  7199. *) libmagic=never-match;;
  7200. esac
  7201. # this will be overridden with pass_all, but let us keep it just in case
  7202. lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
  7203. ;;
  7204. esac
  7205. lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
  7206. lt_cv_deplibs_check_method=pass_all
  7207. ;;
  7208. # This must be Linux ELF.
  7209. linux*)
  7210. case $host_cpu in
  7211. alpha* | hppa* | i*86 | ia64* | m68* | mips* | powerpc* | sparc* | s390* | sh* | x86_64* )
  7212. lt_cv_deplibs_check_method=pass_all ;;
  7213. # the debian people say, arm and glibc 2.3.1 works for them with pass_all
  7214. arm* )
  7215. lt_cv_deplibs_check_method=pass_all ;;
  7216. *)
  7217. # glibc up to 2.1.1 does not perform some relocations on ARM
  7218. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
  7219. esac
  7220. lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  7221. ;;
  7222. netbsd*)
  7223. if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
  7224. lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
  7225. else
  7226. lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
  7227. fi
  7228. ;;
  7229. newos6*)
  7230. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
  7231. lt_cv_file_magic_cmd=/usr/bin/file
  7232. lt_cv_file_magic_test_file=/usr/lib/libnls.so
  7233. ;;
  7234. nto-qnx*)
  7235. lt_cv_deplibs_check_method=unknown
  7236. ;;
  7237. openbsd*)
  7238. lt_cv_file_magic_cmd=/usr/bin/file
  7239. lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
  7240. if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
  7241. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
  7242. else
  7243. lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
  7244. fi
  7245. ;;
  7246. osf3* | osf4* | osf5*)
  7247. # this will be overridden with pass_all, but let us keep it just in case
  7248. lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
  7249. lt_cv_file_magic_test_file=/shlib/libc.so
  7250. lt_cv_deplibs_check_method=pass_all
  7251. ;;
  7252. sco3.2v5*)
  7253. lt_cv_deplibs_check_method=pass_all
  7254. ;;
  7255. solaris*)
  7256. lt_cv_deplibs_check_method=pass_all
  7257. lt_cv_file_magic_test_file=/lib/libc.so
  7258. ;;
  7259. sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  7260. case $host_vendor in
  7261. motorola)
  7262. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
  7263. lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
  7264. ;;
  7265. ncr)
  7266. lt_cv_deplibs_check_method=pass_all
  7267. ;;
  7268. sequent)
  7269. lt_cv_file_magic_cmd='/bin/file'
  7270. lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
  7271. ;;
  7272. sni)
  7273. lt_cv_file_magic_cmd='/bin/file'
  7274. lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
  7275. lt_cv_file_magic_test_file=/lib/libc.so
  7276. ;;
  7277. siemens)
  7278. lt_cv_deplibs_check_method=pass_all
  7279. ;;
  7280. esac
  7281. ;;
  7282. sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
  7283. lt_cv_deplibs_check_method=pass_all
  7284. ;;
  7285. esac
  7286. ])
  7287. file_magic_cmd=$lt_cv_file_magic_cmd
  7288. deplibs_check_method=$lt_cv_deplibs_check_method
  7289. test -z "$deplibs_check_method" && deplibs_check_method=unknown
  7290. ])# AC_DEPLIBS_CHECK_METHOD
  7291. # AC_PROG_NM
  7292. # ----------
  7293. # find the pathname to a BSD-compatible name lister
  7294. AC_DEFUN([AC_PROG_NM],
  7295. [AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
  7296. [if test -n "$NM"; then
  7297. # Let the user override the test.
  7298. lt_cv_path_NM="$NM"
  7299. else
  7300. lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
  7301. for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
  7302. IFS="$lt_save_ifs"
  7303. test -z "$ac_dir" && ac_dir=.
  7304. tmp_nm="$ac_dir/${ac_tool_prefix}nm"
  7305. if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
  7306. # Check to see if the nm accepts a BSD-compat flag.
  7307. # Adding the `sed 1q' prevents false positives on HP-UX, which says:
  7308. # nm: unknown option "B" ignored
  7309. # Tru64's nm complains that /dev/null is an invalid object file
  7310. case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
  7311. */dev/null* | *'Invalid file or object type'*)
  7312. lt_cv_path_NM="$tmp_nm -B"
  7313. break
  7314. ;;
  7315. *)
  7316. case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
  7317. */dev/null*)
  7318. lt_cv_path_NM="$tmp_nm -p"
  7319. break
  7320. ;;
  7321. *)
  7322. lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
  7323. continue # so that we can try to find one that supports BSD flags
  7324. ;;
  7325. esac
  7326. esac
  7327. fi
  7328. done
  7329. IFS="$lt_save_ifs"
  7330. test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
  7331. fi])
  7332. NM="$lt_cv_path_NM"
  7333. ])# AC_PROG_NM
  7334. # AC_CHECK_LIBM
  7335. # -------------
  7336. # check for math library
  7337. AC_DEFUN([AC_CHECK_LIBM],
  7338. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  7339. LIBM=
  7340. case $host in
  7341. *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
  7342. # These system don't have libm, or don't need it
  7343. ;;
  7344. *-ncr-sysv4.3*)
  7345. AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
  7346. AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
  7347. ;;
  7348. *)
  7349. AC_CHECK_LIB(m, cos, LIBM="-lm")
  7350. ;;
  7351. esac
  7352. ])# AC_CHECK_LIBM
  7353. # AC_LIBLTDL_CONVENIENCE([DIRECTORY])
  7354. # -----------------------------------
  7355. # sets LIBLTDL to the link flags for the libltdl convenience library and
  7356. # LTDLINCL to the include flags for the libltdl header and adds
  7357. # --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL
  7358. # and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
  7359. # DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will
  7360. # be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
  7361. # '${top_srcdir}/' (note the single quotes!). If your package is not
  7362. # flat and you're not using automake, define top_builddir and
  7363. # top_srcdir appropriately in the Makefiles.
  7364. AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
  7365. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  7366. case $enable_ltdl_convenience in
  7367. no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
  7368. "") enable_ltdl_convenience=yes
  7369. ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
  7370. esac
  7371. LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
  7372. LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  7373. # For backwards non-gettext consistent compatibility...
  7374. INCLTDL="$LTDLINCL"
  7375. ])# AC_LIBLTDL_CONVENIENCE
  7376. # AC_LIBLTDL_INSTALLABLE([DIRECTORY])
  7377. # -----------------------------------
  7378. # sets LIBLTDL to the link flags for the libltdl installable library and
  7379. # LTDLINCL to the include flags for the libltdl header and adds
  7380. # --enable-ltdl-install to the configure arguments. Note that LIBLTDL
  7381. # and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If
  7382. # DIRECTORY is not provided and an installed libltdl is not found, it is
  7383. # assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/'
  7384. # and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
  7385. # quotes!). If your package is not flat and you're not using automake,
  7386. # define top_builddir and top_srcdir appropriately in the Makefiles.
  7387. # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
  7388. AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
  7389. [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  7390. AC_CHECK_LIB(ltdl, lt_dlinit,
  7391. [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
  7392. [if test x"$enable_ltdl_install" = xno; then
  7393. AC_MSG_WARN([libltdl not installed, but installation disabled])
  7394. else
  7395. enable_ltdl_install=yes
  7396. fi
  7397. ])
  7398. if test x"$enable_ltdl_install" = x"yes"; then
  7399. ac_configure_args="$ac_configure_args --enable-ltdl-install"
  7400. LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
  7401. LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  7402. else
  7403. ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
  7404. LIBLTDL="-lltdl"
  7405. LTDLINCL=
  7406. fi
  7407. # For backwards non-gettext consistent compatibility...
  7408. INCLTDL="$LTDLINCL"
  7409. ])# AC_LIBLTDL_INSTALLABLE
  7410. # AC_LIBTOOL_CXX
  7411. # --------------
  7412. # enable support for C++ libraries
  7413. AC_DEFUN([AC_LIBTOOL_CXX],
  7414. [AC_REQUIRE([_LT_AC_LANG_CXX])
  7415. ])# AC_LIBTOOL_CXX
  7416. # _LT_AC_LANG_CXX
  7417. # ---------------
  7418. AC_DEFUN([_LT_AC_LANG_CXX],
  7419. [AC_REQUIRE([AC_PROG_CXX])
  7420. AC_REQUIRE([AC_PROG_CXXCPP])
  7421. _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
  7422. ])# _LT_AC_LANG_CXX
  7423. # AC_LIBTOOL_F77
  7424. # --------------
  7425. # enable support for Fortran 77 libraries
  7426. AC_DEFUN([AC_LIBTOOL_F77],
  7427. [AC_REQUIRE([_LT_AC_LANG_F77])
  7428. ])# AC_LIBTOOL_F77
  7429. # _LT_AC_LANG_F77
  7430. # ---------------
  7431. AC_DEFUN([_LT_AC_LANG_F77],
  7432. [AC_REQUIRE([AC_PROG_F77])
  7433. _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77])
  7434. ])# _LT_AC_LANG_F77
  7435. # AC_LIBTOOL_GCJ
  7436. # --------------
  7437. # enable support for GCJ libraries
  7438. AC_DEFUN([AC_LIBTOOL_GCJ],
  7439. [AC_REQUIRE([_LT_AC_LANG_GCJ])
  7440. ])# AC_LIBTOOL_GCJ
  7441. # _LT_AC_LANG_GCJ
  7442. # ---------------
  7443. AC_DEFUN([_LT_AC_LANG_GCJ],
  7444. [AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
  7445. [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
  7446. [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
  7447. [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
  7448. [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
  7449. [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
  7450. _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ])
  7451. ])# _LT_AC_LANG_GCJ
  7452. # AC_LIBTOOL_RC
  7453. # --------------
  7454. # enable support for Windows resource files
  7455. AC_DEFUN([AC_LIBTOOL_RC],
  7456. [AC_REQUIRE([LT_AC_PROG_RC])
  7457. _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC])
  7458. ])# AC_LIBTOOL_RC
  7459. # AC_LIBTOOL_LANG_C_CONFIG
  7460. # ------------------------
  7461. # Ensure that the configuration vars for the C compiler are
  7462. # suitably defined. Those variables are subsequently used by
  7463. # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
  7464. AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
  7465. AC_DEFUN([_LT_AC_LANG_C_CONFIG],
  7466. [lt_save_CC="$CC"
  7467. AC_LANG_PUSH(C)
  7468. # Source file extension for C test sources.
  7469. ac_ext=c
  7470. # Object file extension for compiled C test sources.
  7471. objext=o
  7472. _LT_AC_TAGVAR(objext, $1)=$objext
  7473. # Code to be used in simple compile tests
  7474. lt_simple_compile_test_code="int some_variable = 0;\n"
  7475. # Code to be used in simple link tests
  7476. lt_simple_link_test_code='int main(){return(0);}\n'
  7477. _LT_AC_SYS_COMPILER
  7478. #
  7479. # Check for any special shared library compilation flags.
  7480. #
  7481. _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
  7482. if test "$GCC" = no; then
  7483. case $host_os in
  7484. sco3.2v5*)
  7485. _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
  7486. ;;
  7487. esac
  7488. fi
  7489. if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
  7490. AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
  7491. if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then :
  7492. else
  7493. AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
  7494. _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
  7495. fi
  7496. fi
  7497. #
  7498. # Check to make sure the static flag actually works.
  7499. #
  7500. AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
  7501. _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
  7502. $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
  7503. [],
  7504. [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
  7505. ## CAVEAT EMPTOR:
  7506. ## There is no encapsulation within the following macros, do not change
  7507. ## the running order or otherwise move them around unless you know exactly
  7508. ## what you are doing...
  7509. AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
  7510. AC_LIBTOOL_PROG_COMPILER_PIC($1)
  7511. AC_LIBTOOL_PROG_CC_C_O($1)
  7512. AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
  7513. AC_LIBTOOL_PROG_LD_SHLIBS($1)
  7514. AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
  7515. AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
  7516. AC_LIBTOOL_SYS_LIB_STRIP
  7517. AC_LIBTOOL_DLOPEN_SELF($1)
  7518. # Report which librarie types wil actually be built
  7519. AC_MSG_CHECKING([if libtool supports shared libraries])
  7520. AC_MSG_RESULT([$can_build_shared])
  7521. AC_MSG_CHECKING([whether to build shared libraries])
  7522. test "$can_build_shared" = "no" && enable_shared=no
  7523. # On AIX, shared libraries and static libraries use the same namespace, and
  7524. # are all built from PIC.
  7525. case "$host_os" in
  7526. aix3*)
  7527. test "$enable_shared" = yes && enable_static=no
  7528. if test -n "$RANLIB"; then
  7529. archive_cmds="$archive_cmds~\$RANLIB \$lib"
  7530. postinstall_cmds='$RANLIB $lib'
  7531. fi
  7532. ;;
  7533. aix4*)
  7534. if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
  7535. test "$enable_shared" = yes && enable_static=no
  7536. fi
  7537. ;;
  7538. darwin* | rhapsody*)
  7539. if test "$GCC" = yes; then
  7540. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  7541. case "$host_os" in
  7542. rhapsody* | darwin1.[[012]])
  7543. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress'
  7544. ;;
  7545. *) # Darwin 1.3 on
  7546. if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
  7547. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
  7548. else
  7549. case ${MACOSX_DEPLOYMENT_TARGET} in
  7550. 10.[012])
  7551. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
  7552. ;;
  7553. 10.*)
  7554. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup'
  7555. ;;
  7556. esac
  7557. fi
  7558. ;;
  7559. esac
  7560. output_verbose_link_cmd='echo'
  7561. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring'
  7562. _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs'
  7563. # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
  7564. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
  7565. _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
  7566. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  7567. _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
  7568. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  7569. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
  7570. _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
  7571. else
  7572. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7573. fi
  7574. ;;
  7575. esac
  7576. AC_MSG_RESULT([$enable_shared])
  7577. AC_MSG_CHECKING([whether to build static libraries])
  7578. # Make sure either enable_shared or enable_static is yes.
  7579. test "$enable_shared" = yes || enable_static=yes
  7580. AC_MSG_RESULT([$enable_static])
  7581. AC_LIBTOOL_CONFIG($1)
  7582. AC_LANG_POP
  7583. CC="$lt_save_CC"
  7584. ])# AC_LIBTOOL_LANG_C_CONFIG
  7585. # AC_LIBTOOL_LANG_CXX_CONFIG
  7586. # --------------------------
  7587. # Ensure that the configuration vars for the C compiler are
  7588. # suitably defined. Those variables are subsequently used by
  7589. # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
  7590. AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
  7591. AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
  7592. [AC_LANG_PUSH(C++)
  7593. AC_REQUIRE([AC_PROG_CXX])
  7594. AC_REQUIRE([AC_PROG_CXXCPP])
  7595. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  7596. _LT_AC_TAGVAR(allow_undefined_flag, $1)=
  7597. _LT_AC_TAGVAR(always_export_symbols, $1)=no
  7598. _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
  7599. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
  7600. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  7601. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
  7602. _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  7603. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
  7604. _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
  7605. _LT_AC_TAGVAR(hardcode_automatic, $1)=no
  7606. _LT_AC_TAGVAR(module_cmds, $1)=
  7607. _LT_AC_TAGVAR(module_expsym_cmds, $1)=
  7608. _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
  7609. _LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  7610. _LT_AC_TAGVAR(no_undefined_flag, $1)=
  7611. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
  7612. _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  7613. # Dependencies to place before and after the object being linked:
  7614. _LT_AC_TAGVAR(predep_objects, $1)=
  7615. _LT_AC_TAGVAR(postdep_objects, $1)=
  7616. _LT_AC_TAGVAR(predeps, $1)=
  7617. _LT_AC_TAGVAR(postdeps, $1)=
  7618. _LT_AC_TAGVAR(compiler_lib_search_path, $1)=
  7619. # Source file extension for C++ test sources.
  7620. ac_ext=cc
  7621. # Object file extension for compiled C++ test sources.
  7622. objext=o
  7623. _LT_AC_TAGVAR(objext, $1)=$objext
  7624. # Code to be used in simple compile tests
  7625. lt_simple_compile_test_code="int some_variable = 0;\n"
  7626. # Code to be used in simple link tests
  7627. lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
  7628. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  7629. _LT_AC_SYS_COMPILER
  7630. # Allow CC to be a program name with arguments.
  7631. lt_save_CC=$CC
  7632. lt_save_LD=$LD
  7633. lt_save_GCC=$GCC
  7634. GCC=$GXX
  7635. lt_save_with_gnu_ld=$with_gnu_ld
  7636. lt_save_path_LD=$lt_cv_path_LD
  7637. if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
  7638. lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
  7639. else
  7640. unset lt_cv_prog_gnu_ld
  7641. fi
  7642. if test -n "${lt_cv_path_LDCXX+set}"; then
  7643. lt_cv_path_LD=$lt_cv_path_LDCXX
  7644. else
  7645. unset lt_cv_path_LD
  7646. fi
  7647. test -z "${LDCXX+set}" || LD=$LDCXX
  7648. CC=${CXX-"c++"}
  7649. compiler=$CC
  7650. _LT_AC_TAGVAR(compiler, $1)=$CC
  7651. cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
  7652. # We don't want -fno-exception wen compiling C++ code, so set the
  7653. # no_builtin_flag separately
  7654. if test "$GXX" = yes; then
  7655. _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
  7656. else
  7657. _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
  7658. fi
  7659. if test "$GXX" = yes; then
  7660. # Set up default GNU C++ configuration
  7661. AC_PROG_LD
  7662. # Check if GNU C++ uses GNU ld as the underlying linker, since the
  7663. # archiving commands below assume that GNU ld is being used.
  7664. if test "$with_gnu_ld" = yes; then
  7665. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
  7666. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  7667. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
  7668. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  7669. # If archive_cmds runs LD, not CC, wlarc should be empty
  7670. # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
  7671. # investigate it a little bit more. (MM)
  7672. wlarc='${wl}'
  7673. # ancient GNU ld didn't support --whole-archive et. al.
  7674. if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
  7675. grep 'no-whole-archive' > /dev/null; then
  7676. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  7677. else
  7678. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
  7679. fi
  7680. else
  7681. with_gnu_ld=no
  7682. wlarc=
  7683. # A generic and very simple default shared library creation
  7684. # command for GNU C++ for the case where it uses the native
  7685. # linker, instead of GNU ld. If possible, this setting should
  7686. # overridden to take advantage of the native linker features on
  7687. # the platform it is being used on.
  7688. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $lib'
  7689. fi
  7690. # Commands to make compiler produce verbose output that lists
  7691. # what "hidden" libraries, object files and flags are used when
  7692. # linking a shared library.
  7693. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
  7694. else
  7695. GXX=no
  7696. with_gnu_ld=no
  7697. wlarc=
  7698. fi
  7699. # PORTME: fill in a description of your system's C++ link characteristics
  7700. AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  7701. _LT_AC_TAGVAR(ld_shlibs, $1)=yes
  7702. case $host_os in
  7703. aix3*)
  7704. # FIXME: insert proper C++ library support
  7705. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7706. ;;
  7707. aix4* | aix5*)
  7708. if test "$host_cpu" = ia64; then
  7709. # On IA64, the linker does run time linking by default, so we don't
  7710. # have to do anything special.
  7711. aix_use_runtimelinking=no
  7712. exp_sym_flag='-Bexport'
  7713. no_entry_flag=""
  7714. else
  7715. # KDE requires run time linking. Make it the default.
  7716. aix_use_runtimelinking=yes
  7717. exp_sym_flag='-bexport'
  7718. no_entry_flag='-bnoentry'
  7719. fi
  7720. # When large executables or shared objects are built, AIX ld can
  7721. # have problems creating the table of contents. If linking a library
  7722. # or program results in "error TOC overflow" add -mminimal-toc to
  7723. # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
  7724. # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  7725. _LT_AC_TAGVAR(archive_cmds, $1)=''
  7726. _LT_AC_TAGVAR(hardcode_direct, $1)=yes
  7727. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
  7728. _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
  7729. if test "$GXX" = yes; then
  7730. case $host_os in aix4.[012]|aix4.[012].*)
  7731. # We only want to do this on AIX 4.2 and lower, the check
  7732. # below for broken collect2 doesn't work under 4.3+
  7733. collect2name=`${CC} -print-prog-name=collect2`
  7734. if test -f "$collect2name" && \
  7735. strings "$collect2name" | grep resolve_lib_name >/dev/null
  7736. then
  7737. # We have reworked collect2
  7738. _LT_AC_TAGVAR(hardcode_direct, $1)=yes
  7739. else
  7740. # We have old collect2
  7741. _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
  7742. # It fails to find uninstalled libraries when the uninstalled
  7743. # path is not listed in the libpath. Setting hardcode_minus_L
  7744. # to unsupported forces relinking
  7745. _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
  7746. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  7747. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
  7748. fi
  7749. esac
  7750. shared_flag='-shared'
  7751. else
  7752. # not using gcc
  7753. if test "$host_cpu" = ia64; then
  7754. # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  7755. # chokes on -Wl,-G. The following line is correct:
  7756. shared_flag='-G'
  7757. else
  7758. if test "$aix_use_runtimelinking" = yes; then
  7759. shared_flag='-qmkshrobj ${wl}-G'
  7760. else
  7761. shared_flag='-qmkshrobj'
  7762. fi
  7763. fi
  7764. fi
  7765. # Let the compiler handle the export list.
  7766. _LT_AC_TAGVAR(always_export_symbols, $1)=no
  7767. if test "$aix_use_runtimelinking" = yes; then
  7768. # Warning - without using the other runtime loading flags (-brtl),
  7769. # -berok will link without error, but may produce a broken library.
  7770. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
  7771. # Determine the default libpath from the value encoded in an empty executable.
  7772. _LT_AC_SYS_LIBPATH_AIX
  7773. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  7774. _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag"
  7775. _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
  7776. else
  7777. if test "$host_cpu" = ia64; then
  7778. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
  7779. _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
  7780. _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
  7781. else
  7782. # Determine the default libpath from the value encoded in an empty executable.
  7783. _LT_AC_SYS_LIBPATH_AIX
  7784. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  7785. # Warning - without using the other run time loading flags,
  7786. # -berok will link without error, but may produce a broken library.
  7787. _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
  7788. _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
  7789. # -bexpall does not export symbols beginning with underscore (_)
  7790. _LT_AC_TAGVAR(always_export_symbols, $1)=yes
  7791. # Exported symbols can be pulled into shared objects from archives
  7792. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
  7793. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
  7794. # This is similar to how AIX traditionally builds it's shared libraries.
  7795. _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
  7796. fi
  7797. fi
  7798. ;;
  7799. chorus*)
  7800. case $cc_basename in
  7801. *)
  7802. # FIXME: insert proper C++ library support
  7803. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7804. ;;
  7805. esac
  7806. ;;
  7807. cygwin* | mingw* | pw32*)
  7808. # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
  7809. # as there is no search path for DLLs.
  7810. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  7811. _LT_AC_TAGVAR(allow_undefined_flag, $1)=no
  7812. _LT_AC_TAGVAR(always_export_symbols, $1)=no
  7813. _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  7814. if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
  7815. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
  7816. # If the export-symbols file already is a .def file (1st line
  7817. # is EXPORTS), use it as is; otherwise, prepend...
  7818. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
  7819. cp $export_symbols $output_objdir/$soname.def;
  7820. else
  7821. echo EXPORTS > $output_objdir/$soname.def;
  7822. cat $export_symbols >> $output_objdir/$soname.def;
  7823. fi~
  7824. $CC -shared -nostdlib $output_objdir/$soname.def $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
  7825. else
  7826. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7827. fi
  7828. ;;
  7829. darwin* | rhapsody*)
  7830. if test "$GXX" = yes; then
  7831. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  7832. case "$host_os" in
  7833. rhapsody* | darwin1.[[012]])
  7834. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress'
  7835. ;;
  7836. *) # Darwin 1.3 on
  7837. if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
  7838. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
  7839. else
  7840. case ${MACOSX_DEPLOYMENT_TARGET} in
  7841. 10.[012])
  7842. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress'
  7843. ;;
  7844. 10.*)
  7845. _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup'
  7846. ;;
  7847. esac
  7848. fi
  7849. ;;
  7850. esac
  7851. lt_int_apple_cc_single_mod=no
  7852. output_verbose_link_cmd='echo'
  7853. if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then
  7854. lt_int_apple_cc_single_mod=yes
  7855. fi
  7856. if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
  7857. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring'
  7858. else
  7859. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring'
  7860. fi
  7861. _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs'
  7862. # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
  7863. if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
  7864. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
  7865. else
  7866. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
  7867. fi
  7868. _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
  7869. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  7870. _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
  7871. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  7872. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
  7873. _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
  7874. else
  7875. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7876. fi
  7877. ;;
  7878. dgux*)
  7879. case $cc_basename in
  7880. ec++)
  7881. # FIXME: insert proper C++ library support
  7882. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7883. ;;
  7884. ghcx)
  7885. # Green Hills C++ Compiler
  7886. # FIXME: insert proper C++ library support
  7887. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7888. ;;
  7889. *)
  7890. # FIXME: insert proper C++ library support
  7891. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7892. ;;
  7893. esac
  7894. ;;
  7895. freebsd[12]*)
  7896. # C++ shared libraries reported to be fairly broken before switch to ELF
  7897. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7898. ;;
  7899. freebsd-elf*)
  7900. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  7901. ;;
  7902. freebsd* | kfreebsd*-gnu)
  7903. # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
  7904. # conventions
  7905. _LT_AC_TAGVAR(ld_shlibs, $1)=yes
  7906. ;;
  7907. gnu*)
  7908. ;;
  7909. hpux9*)
  7910. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  7911. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  7912. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  7913. _LT_AC_TAGVAR(hardcode_direct, $1)=yes
  7914. _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  7915. # but as the default
  7916. # location of the library.
  7917. case $cc_basename in
  7918. CC)
  7919. # FIXME: insert proper C++ library support
  7920. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7921. ;;
  7922. aCC)
  7923. _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
  7924. # Commands to make compiler produce verbose output that lists
  7925. # what "hidden" libraries, object files and flags are used when
  7926. # linking a shared library.
  7927. #
  7928. # There doesn't appear to be a way to prevent this compiler from
  7929. # explicitly linking system object files so we need to strip them
  7930. # from the output so that they don't get included in the library
  7931. # dependencies.
  7932. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  7933. ;;
  7934. *)
  7935. if test "$GXX" = yes; then
  7936. _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
  7937. else
  7938. # FIXME: insert proper C++ library support
  7939. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7940. fi
  7941. ;;
  7942. esac
  7943. ;;
  7944. hpux10*|hpux11*)
  7945. if test $with_gnu_ld = no; then
  7946. case "$host_cpu" in
  7947. hppa*64*)
  7948. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  7949. _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
  7950. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  7951. ;;
  7952. ia64*)
  7953. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  7954. ;;
  7955. *)
  7956. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
  7957. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  7958. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
  7959. ;;
  7960. esac
  7961. fi
  7962. case "$host_cpu" in
  7963. hppa*64*)
  7964. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  7965. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
  7966. ;;
  7967. ia64*)
  7968. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  7969. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
  7970. _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  7971. # but as the default
  7972. # location of the library.
  7973. ;;
  7974. *)
  7975. _LT_AC_TAGVAR(hardcode_direct, $1)=yes
  7976. _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  7977. # but as the default
  7978. # location of the library.
  7979. ;;
  7980. esac
  7981. case $cc_basename in
  7982. CC)
  7983. # FIXME: insert proper C++ library support
  7984. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  7985. ;;
  7986. aCC)
  7987. case "$host_cpu" in
  7988. hppa*64*|ia64*)
  7989. _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
  7990. ;;
  7991. *)
  7992. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
  7993. ;;
  7994. esac
  7995. # Commands to make compiler produce verbose output that lists
  7996. # what "hidden" libraries, object files and flags are used when
  7997. # linking a shared library.
  7998. #
  7999. # There doesn't appear to be a way to prevent this compiler from
  8000. # explicitly linking system object files so we need to strip them
  8001. # from the output so that they don't get included in the library
  8002. # dependencies.
  8003. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8004. ;;
  8005. *)
  8006. if test "$GXX" = yes; then
  8007. if test $with_gnu_ld = no; then
  8008. case "$host_cpu" in
  8009. ia64*|hppa*64*)
  8010. _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
  8011. ;;
  8012. *)
  8013. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
  8014. ;;
  8015. esac
  8016. fi
  8017. else
  8018. # FIXME: insert proper C++ library support
  8019. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8020. fi
  8021. ;;
  8022. esac
  8023. ;;
  8024. irix5* | irix6*)
  8025. case $cc_basename in
  8026. CC)
  8027. # SGI C++
  8028. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
  8029. # Archives containing C++ object files must be created using
  8030. # "CC -ar", where "CC" is the IRIX C++ compiler. This is
  8031. # necessary to make sure instantiated templates are included
  8032. # in the archive.
  8033. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
  8034. ;;
  8035. *)
  8036. if test "$GXX" = yes; then
  8037. if test "$with_gnu_ld" = no; then
  8038. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
  8039. else
  8040. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib'
  8041. fi
  8042. fi
  8043. _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
  8044. ;;
  8045. esac
  8046. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  8047. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8048. ;;
  8049. linux*)
  8050. case $cc_basename in
  8051. KCC)
  8052. # Kuck and Associates, Inc. (KAI) C++ Compiler
  8053. # KCC will only create a shared library if the output file
  8054. # ends with ".so" (or ".sl" for HP-UX), so rename the library
  8055. # to its proper name (with version) after linking.
  8056. _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
  8057. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
  8058. # Commands to make compiler produce verbose output that lists
  8059. # what "hidden" libraries, object files and flags are used when
  8060. # linking a shared library.
  8061. #
  8062. # There doesn't appear to be a way to prevent this compiler from
  8063. # explicitly linking system object files so we need to strip them
  8064. # from the output so that they don't get included in the library
  8065. # dependencies.
  8066. output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8067. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
  8068. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  8069. # Archives containing C++ object files must be created using
  8070. # "CC -Bstatic", where "CC" is the KAI C++ compiler.
  8071. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
  8072. ;;
  8073. icpc)
  8074. # Intel C++
  8075. with_gnu_ld=yes
  8076. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  8077. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
  8078. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  8079. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  8080. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
  8081. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
  8082. ;;
  8083. cxx)
  8084. # Compaq C++
  8085. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib'
  8086. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
  8087. runpath_var=LD_RUN_PATH
  8088. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  8089. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8090. # Commands to make compiler produce verbose output that lists
  8091. # what "hidden" libraries, object files and flags are used when
  8092. # linking a shared library.
  8093. #
  8094. # There doesn't appear to be a way to prevent this compiler from
  8095. # explicitly linking system object files so we need to strip them
  8096. # from the output so that they don't get included in the library
  8097. # dependencies.
  8098. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8099. ;;
  8100. esac
  8101. ;;
  8102. lynxos*)
  8103. # FIXME: insert proper C++ library support
  8104. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8105. ;;
  8106. m88k*)
  8107. # FIXME: insert proper C++ library support
  8108. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8109. ;;
  8110. mvs*)
  8111. case $cc_basename in
  8112. cxx)
  8113. # FIXME: insert proper C++ library support
  8114. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8115. ;;
  8116. *)
  8117. # FIXME: insert proper C++ library support
  8118. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8119. ;;
  8120. esac
  8121. ;;
  8122. netbsd*)
  8123. if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  8124. _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
  8125. wlarc=
  8126. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  8127. _LT_AC_TAGVAR(hardcode_direct, $1)=yes
  8128. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
  8129. fi
  8130. # Workaround some broken pre-1.5 toolchains
  8131. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
  8132. ;;
  8133. osf3*)
  8134. case $cc_basename in
  8135. KCC)
  8136. # Kuck and Associates, Inc. (KAI) C++ Compiler
  8137. # KCC will only create a shared library if the output file
  8138. # ends with ".so" (or ".sl" for HP-UX), so rename the library
  8139. # to its proper name (with version) after linking.
  8140. _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
  8141. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  8142. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8143. # Archives containing C++ object files must be created using
  8144. # "CC -Bstatic", where "CC" is the KAI C++ compiler.
  8145. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
  8146. ;;
  8147. RCC)
  8148. # Rational C++ 2.4.1
  8149. # FIXME: insert proper C++ library support
  8150. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8151. ;;
  8152. cxx)
  8153. _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
  8154. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
  8155. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  8156. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8157. # Commands to make compiler produce verbose output that lists
  8158. # what "hidden" libraries, object files and flags are used when
  8159. # linking a shared library.
  8160. #
  8161. # There doesn't appear to be a way to prevent this compiler from
  8162. # explicitly linking system object files so we need to strip them
  8163. # from the output so that they don't get included in the library
  8164. # dependencies.
  8165. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8166. ;;
  8167. *)
  8168. if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  8169. _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
  8170. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
  8171. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  8172. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8173. # Commands to make compiler produce verbose output that lists
  8174. # what "hidden" libraries, object files and flags are used when
  8175. # linking a shared library.
  8176. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
  8177. else
  8178. # FIXME: insert proper C++ library support
  8179. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8180. fi
  8181. ;;
  8182. esac
  8183. ;;
  8184. osf4* | osf5*)
  8185. case $cc_basename in
  8186. KCC)
  8187. # Kuck and Associates, Inc. (KAI) C++ Compiler
  8188. # KCC will only create a shared library if the output file
  8189. # ends with ".so" (or ".sl" for HP-UX), so rename the library
  8190. # to its proper name (with version) after linking.
  8191. _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib'
  8192. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
  8193. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8194. # Archives containing C++ object files must be created using
  8195. # the KAI C++ compiler.
  8196. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
  8197. ;;
  8198. RCC)
  8199. # Rational C++ 2.4.1
  8200. # FIXME: insert proper C++ library support
  8201. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8202. ;;
  8203. cxx)
  8204. _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
  8205. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
  8206. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
  8207. echo "-hidden">> $lib.exp~
  8208. $CC -shared$allow_undefined_flag $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~
  8209. $rm $lib.exp'
  8210. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  8211. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8212. # Commands to make compiler produce verbose output that lists
  8213. # what "hidden" libraries, object files and flags are used when
  8214. # linking a shared library.
  8215. #
  8216. # There doesn't appear to be a way to prevent this compiler from
  8217. # explicitly linking system object files so we need to strip them
  8218. # from the output so that they don't get included in the library
  8219. # dependencies.
  8220. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8221. ;;
  8222. *)
  8223. if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  8224. _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
  8225. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
  8226. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
  8227. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
  8228. # Commands to make compiler produce verbose output that lists
  8229. # what "hidden" libraries, object files and flags are used when
  8230. # linking a shared library.
  8231. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
  8232. else
  8233. # FIXME: insert proper C++ library support
  8234. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8235. fi
  8236. ;;
  8237. esac
  8238. ;;
  8239. psos*)
  8240. # FIXME: insert proper C++ library support
  8241. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8242. ;;
  8243. sco*)
  8244. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  8245. case $cc_basename in
  8246. CC)
  8247. # FIXME: insert proper C++ library support
  8248. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8249. ;;
  8250. *)
  8251. # FIXME: insert proper C++ library support
  8252. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8253. ;;
  8254. esac
  8255. ;;
  8256. sunos4*)
  8257. case $cc_basename in
  8258. CC)
  8259. # Sun C++ 4.x
  8260. # FIXME: insert proper C++ library support
  8261. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8262. ;;
  8263. lcc)
  8264. # Lucid
  8265. # FIXME: insert proper C++ library support
  8266. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8267. ;;
  8268. *)
  8269. # FIXME: insert proper C++ library support
  8270. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8271. ;;
  8272. esac
  8273. ;;
  8274. solaris*)
  8275. case $cc_basename in
  8276. CC)
  8277. # Sun C++ 4.2, 5.x and Centerline C++
  8278. _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
  8279. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects'
  8280. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  8281. $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
  8282. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  8283. _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
  8284. case $host_os in
  8285. solaris2.[0-5] | solaris2.[0-5].*) ;;
  8286. *)
  8287. # The C++ compiler is used as linker so we must use $wl
  8288. # flag to pass the commands to the underlying system
  8289. # linker.
  8290. # Supported since Solaris 2.6 (maybe 2.5.1?)
  8291. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
  8292. ;;
  8293. esac
  8294. _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
  8295. # Commands to make compiler produce verbose output that lists
  8296. # what "hidden" libraries, object files and flags are used when
  8297. # linking a shared library.
  8298. #
  8299. # There doesn't appear to be a way to prevent this compiler from
  8300. # explicitly linking system object files so we need to strip them
  8301. # from the output so that they don't get included in the library
  8302. # dependencies.
  8303. output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
  8304. # Archives containing C++ object files must be created using
  8305. # "CC -xar", where "CC" is the Sun C++ compiler. This is
  8306. # necessary to make sure instantiated templates are included
  8307. # in the archive.
  8308. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
  8309. ;;
  8310. gcx)
  8311. # Green Hills C++ Compiler
  8312. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
  8313. # The C++ compiler must be used to create the archive.
  8314. _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
  8315. ;;
  8316. *)
  8317. # GNU C++ compiler with Solaris linker
  8318. if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  8319. _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
  8320. if $CC --version | grep -v '^2\.7' > /dev/null; then
  8321. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
  8322. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  8323. $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
  8324. # Commands to make compiler produce verbose output that lists
  8325. # what "hidden" libraries, object files and flags are used when
  8326. # linking a shared library.
  8327. output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
  8328. else
  8329. # g++ 2.7 appears to require `-G' NOT `-shared' on this
  8330. # platform.
  8331. _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib'
  8332. _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  8333. $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp'
  8334. # Commands to make compiler produce verbose output that lists
  8335. # what "hidden" libraries, object files and flags are used when
  8336. # linking a shared library.
  8337. output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
  8338. fi
  8339. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
  8340. fi
  8341. ;;
  8342. esac
  8343. ;;
  8344. sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
  8345. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  8346. ;;
  8347. tandem*)
  8348. case $cc_basename in
  8349. NCC)
  8350. # NonStop-UX NCC 3.20
  8351. # FIXME: insert proper C++ library support
  8352. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8353. ;;
  8354. *)
  8355. # FIXME: insert proper C++ library support
  8356. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8357. ;;
  8358. esac
  8359. ;;
  8360. vxworks*)
  8361. # FIXME: insert proper C++ library support
  8362. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8363. ;;
  8364. *)
  8365. # FIXME: insert proper C++ library support
  8366. _LT_AC_TAGVAR(ld_shlibs, $1)=no
  8367. ;;
  8368. esac
  8369. AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
  8370. test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
  8371. _LT_AC_TAGVAR(GCC, $1)="$GXX"
  8372. _LT_AC_TAGVAR(LD, $1)="$LD"
  8373. ## CAVEAT EMPTOR:
  8374. ## There is no encapsulation within the following macros, do not change
  8375. ## the running order or otherwise move them around unless you know exactly
  8376. ## what you are doing...
  8377. AC_LIBTOOL_POSTDEP_PREDEP($1)
  8378. AC_LIBTOOL_PROG_COMPILER_PIC($1)
  8379. AC_LIBTOOL_PROG_CC_C_O($1)
  8380. AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
  8381. AC_LIBTOOL_PROG_LD_SHLIBS($1)
  8382. AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
  8383. AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
  8384. AC_LIBTOOL_SYS_LIB_STRIP
  8385. AC_LIBTOOL_DLOPEN_SELF($1)
  8386. AC_LIBTOOL_CONFIG($1)
  8387. AC_LANG_POP
  8388. CC=$lt_save_CC
  8389. LDCXX=$LD
  8390. LD=$lt_save_LD
  8391. GCC=$lt_save_GCC
  8392. with_gnu_ldcxx=$with_gnu_ld
  8393. with_gnu_ld=$lt_save_with_gnu_ld
  8394. lt_cv_path_LDCXX=$lt_cv_path_LD
  8395. lt_cv_path_LD=$lt_save_path_LD
  8396. lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
  8397. lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
  8398. ])# AC_LIBTOOL_LANG_CXX_CONFIG
  8399. # AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
  8400. # ------------------------
  8401. # Figure out "hidden" library dependencies from verbose
  8402. # compiler output when linking a shared library.
  8403. # Parse the compiler output and extract the necessary
  8404. # objects, libraries and library flags.
  8405. AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
  8406. dnl we can't use the lt_simple_compile_test_code here,
  8407. dnl because it contains code intended for an executable,
  8408. dnl not a library. It's possible we should let each
  8409. dnl tag define a new lt_????_link_test_code variable,
  8410. dnl but it's only used here...
  8411. ifelse([$1],[],[cat > conftest.$ac_ext <<EOF
  8412. int a;
  8413. void foo (void) { a = 0; }
  8414. EOF
  8415. ],[$1],[CXX],[cat > conftest.$ac_ext <<EOF
  8416. class Foo
  8417. {
  8418. public:
  8419. Foo (void) { a = 0; }
  8420. private:
  8421. int a;
  8422. };
  8423. EOF
  8424. ],[$1],[F77],[cat > conftest.$ac_ext <<EOF
  8425. subroutine foo
  8426. implicit none
  8427. integer*4 a
  8428. a=0
  8429. return
  8430. end
  8431. EOF
  8432. ],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF
  8433. public class foo {
  8434. private int a;
  8435. public void bar (void) {
  8436. a = 0;
  8437. }
  8438. };
  8439. EOF
  8440. ])
  8441. dnl Parse the compiler output and extract the necessary
  8442. dnl objects, libraries and library flags.
  8443. if AC_TRY_EVAL(ac_compile); then
  8444. # Parse the compiler output and extract the necessary
  8445. # objects, libraries and library flags.
  8446. # Sentinel used to keep track of whether or not we are before
  8447. # the conftest object file.
  8448. pre_test_object_deps_done=no
  8449. # The `*' in the case matches for architectures that use `case' in
  8450. # $output_verbose_cmd can trigger glob expansion during the loop
  8451. # eval without this substitution.
  8452. output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
  8453. for p in `eval $output_verbose_link_cmd`; do
  8454. case $p in
  8455. -L* | -R* | -l*)
  8456. # Some compilers place space between "-{L,R}" and the path.
  8457. # Remove the space.
  8458. if test $p = "-L" \
  8459. || test $p = "-R"; then
  8460. prev=$p
  8461. continue
  8462. else
  8463. prev=
  8464. fi
  8465. if test "$pre_test_object_deps_done" = no; then
  8466. case $p in
  8467. -L* | -R*)
  8468. # Internal compiler library paths should come after those
  8469. # provided the user. The postdeps already come after the
  8470. # user supplied libs so there is no need to process them.
  8471. if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
  8472. _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
  8473. else
  8474. _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
  8475. fi
  8476. ;;
  8477. # The "-l" case would never come before the object being
  8478. # linked, so don't bother handling this case.
  8479. esac
  8480. else
  8481. if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
  8482. _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
  8483. else
  8484. _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
  8485. fi
  8486. fi
  8487. ;;
  8488. *.$objext|*.$libext)
  8489. # This assumes that the test object file only shows up
  8490. # once in the compiler output.
  8491. if test "$p" = "conftest.$objext"; then
  8492. pre_test_object_deps_done=yes
  8493. continue
  8494. fi
  8495. if test "$pre_test_object_deps_done" = no; then
  8496. if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
  8497. _LT_AC_TAGVAR(predep_objects, $1)="$p"
  8498. else
  8499. _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
  8500. fi
  8501. else
  8502. if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
  8503. _LT_AC_TAGVAR(postdep_objects, $1)="$p"
  8504. else
  8505. _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
  8506. fi
  8507. fi
  8508. ;;
  8509. *) ;; # Ignore the rest.
  8510. esac
  8511. done
  8512. # Clean up.
  8513. rm -f a.out a.exe
  8514. else
  8515. echo "libtool.m4: error: problem compiling $1 test program"
  8516. fi
  8517. $rm -f confest.$objext
  8518. case " $_LT_AC_TAGVAR(postdeps, $1) " in
  8519. *" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
  8520. esac
  8521. ])# AC_LIBTOOL_POSTDEP_PREDEP
  8522. # AC_LIBTOOL_LANG_F77_CONFIG
  8523. # ------------------------
  8524. # Ensure that the configuration vars for the C compiler are
  8525. # suitably defined. Those variables are subsequently used by
  8526. # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
  8527. AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)])
  8528. AC_DEFUN([_LT_AC_LANG_F77_CONFIG],
  8529. [AC_REQUIRE([AC_PROG_F77])
  8530. AC_LANG_PUSH(Fortran 77)
  8531. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  8532. _LT_AC_TAGVAR(allow_undefined_flag, $1)=
  8533. _LT_AC_TAGVAR(always_export_symbols, $1)=no
  8534. _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
  8535. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
  8536. _LT_AC_TAGVAR(hardcode_direct, $1)=no
  8537. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
  8538. _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
  8539. _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
  8540. _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
  8541. _LT_AC_TAGVAR(hardcode_automatic, $1)=no
  8542. _LT_AC_TAGVAR(module_cmds, $1)=
  8543. _LT_AC_TAGVAR(module_expsym_cmds, $1)=
  8544. _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
  8545. _LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  8546. _LT_AC_TAGVAR(no_undefined_flag, $1)=
  8547. _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
  8548. _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  8549. # Source file extension for f77 test sources.
  8550. ac_ext=f
  8551. # Object file extension for compiled f77 test sources.
  8552. objext=o
  8553. _LT_AC_TAGVAR(objext, $1)=$objext
  8554. # Code to be used in simple compile tests
  8555. lt_simple_compile_test_code=" subroutine t\n return\n end\n"
  8556. # Code to be used in simple link tests
  8557. lt_simple_link_test_code=" program t\n end\n"
  8558. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  8559. _LT_AC_SYS_COMPILER
  8560. # Allow CC to be a program name with arguments.
  8561. lt_save_CC="$CC"
  8562. CC=${F77-"f77"}
  8563. compiler=$CC
  8564. _LT_AC_TAGVAR(compiler, $1)=$CC
  8565. cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
  8566. AC_MSG_CHECKING([if libtool supports shared libraries])
  8567. AC_MSG_RESULT([$can_build_shared])
  8568. AC_MSG_CHECKING([whether to build shared libraries])
  8569. test "$can_build_shared" = "no" && enable_shared=no
  8570. # On AIX, shared libraries and static libraries use the same namespace, and
  8571. # are all built from PIC.
  8572. case "$host_os" in
  8573. aix3*)
  8574. test "$enable_shared" = yes && enable_static=no
  8575. if test -n "$RANLIB"; then
  8576. archive_cmds="$archive_cmds~\$RANLIB \$lib"
  8577. postinstall_cmds='$RANLIB $lib'
  8578. fi
  8579. ;;
  8580. aix4*)
  8581. test "$enable_shared" = yes && enable_static=no
  8582. ;;
  8583. esac
  8584. AC_MSG_RESULT([$enable_shared])
  8585. AC_MSG_CHECKING([whether to build static libraries])
  8586. # Make sure either enable_shared or enable_static is yes.
  8587. test "$enable_shared" = yes || enable_static=yes
  8588. AC_MSG_RESULT([$enable_static])
  8589. test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
  8590. _LT_AC_TAGVAR(GCC, $1)="$G77"
  8591. _LT_AC_TAGVAR(LD, $1)="$LD"
  8592. AC_LIBTOOL_PROG_COMPILER_PIC($1)
  8593. AC_LIBTOOL_PROG_CC_C_O($1)
  8594. AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
  8595. AC_LIBTOOL_PROG_LD_SHLIBS($1)
  8596. AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
  8597. AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
  8598. AC_LIBTOOL_SYS_LIB_STRIP
  8599. AC_LIBTOOL_CONFIG($1)
  8600. AC_LANG_POP
  8601. CC="$lt_save_CC"
  8602. ])# AC_LIBTOOL_LANG_F77_CONFIG
  8603. # AC_LIBTOOL_LANG_GCJ_CONFIG
  8604. # --------------------------
  8605. # Ensure that the configuration vars for the C compiler are
  8606. # suitably defined. Those variables are subsequently used by
  8607. # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
  8608. AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
  8609. AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
  8610. [AC_LANG_SAVE
  8611. # Source file extension for Java test sources.
  8612. ac_ext=java
  8613. # Object file extension for compiled Java test sources.
  8614. objext=o
  8615. _LT_AC_TAGVAR(objext, $1)=$objext
  8616. # Code to be used in simple compile tests
  8617. lt_simple_compile_test_code="class foo {}\n"
  8618. # Code to be used in simple link tests
  8619. lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n'
  8620. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  8621. _LT_AC_SYS_COMPILER
  8622. # Allow CC to be a program name with arguments.
  8623. lt_save_CC="$CC"
  8624. CC=${GCJ-"gcj"}
  8625. compiler=$CC
  8626. _LT_AC_TAGVAR(compiler, $1)=$CC
  8627. # GCJ did not exist at the time GCC didn't implicitly link libc in.
  8628. _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
  8629. ## CAVEAT EMPTOR:
  8630. ## There is no encapsulation within the following macros, do not change
  8631. ## the running order or otherwise move them around unless you know exactly
  8632. ## what you are doing...
  8633. AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
  8634. AC_LIBTOOL_PROG_COMPILER_PIC($1)
  8635. AC_LIBTOOL_PROG_CC_C_O($1)
  8636. AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
  8637. AC_LIBTOOL_PROG_LD_SHLIBS($1)
  8638. AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
  8639. AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
  8640. AC_LIBTOOL_SYS_LIB_STRIP
  8641. AC_LIBTOOL_DLOPEN_SELF($1)
  8642. AC_LIBTOOL_CONFIG($1)
  8643. AC_LANG_RESTORE
  8644. CC="$lt_save_CC"
  8645. ])# AC_LIBTOOL_LANG_GCJ_CONFIG
  8646. # AC_LIBTOOL_LANG_RC_CONFIG
  8647. # --------------------------
  8648. # Ensure that the configuration vars for the Windows resource compiler are
  8649. # suitably defined. Those variables are subsequently used by
  8650. # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
  8651. AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
  8652. AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
  8653. [AC_LANG_SAVE
  8654. # Source file extension for RC test sources.
  8655. ac_ext=rc
  8656. # Object file extension for compiled RC test sources.
  8657. objext=o
  8658. _LT_AC_TAGVAR(objext, $1)=$objext
  8659. # Code to be used in simple compile tests
  8660. lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
  8661. # Code to be used in simple link tests
  8662. lt_simple_link_test_code="$lt_simple_compile_test_code"
  8663. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  8664. _LT_AC_SYS_COMPILER
  8665. # Allow CC to be a program name with arguments.
  8666. lt_save_CC="$CC"
  8667. CC=${RC-"windres"}
  8668. compiler=$CC
  8669. _LT_AC_TAGVAR(compiler, $1)=$CC
  8670. _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
  8671. AC_LIBTOOL_CONFIG($1)
  8672. AC_LANG_RESTORE
  8673. CC="$lt_save_CC"
  8674. ])# AC_LIBTOOL_LANG_RC_CONFIG
  8675. # AC_LIBTOOL_CONFIG([TAGNAME])
  8676. # ----------------------------
  8677. # If TAGNAME is not passed, then create an initial libtool script
  8678. # with a default configuration from the untagged config vars. Otherwise
  8679. # add code to config.status for appending the configuration named by
  8680. # TAGNAME from the matching tagged config vars.
  8681. AC_DEFUN([AC_LIBTOOL_CONFIG],
  8682. [# The else clause should only fire when bootstrapping the
  8683. # libtool distribution, otherwise you forgot to ship ltmain.sh
  8684. # with your package, and you will get complaints that there are
  8685. # no rules to generate ltmain.sh.
  8686. if test -f "$ltmain"; then
  8687. # See if we are running on zsh, and set the options which allow our commands through
  8688. # without removal of \ escapes.
  8689. if test -n "${ZSH_VERSION+set}" ; then
  8690. setopt NO_GLOB_SUBST
  8691. fi
  8692. # Now quote all the things that may contain metacharacters while being
  8693. # careful not to overquote the AC_SUBSTed values. We take copies of the
  8694. # variables and quote the copies for generation of the libtool script.
  8695. for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \
  8696. libname_spec library_names_spec soname_spec extract_expsyms_cmds \
  8697. old_striplib striplib file_magic_cmd finish_cmds finish_eval \
  8698. deplibs_check_method reload_flag reload_cmds need_locks \
  8699. lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
  8700. lt_cv_sys_global_symbol_to_c_name_address \
  8701. sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
  8702. old_postinstall_cmds old_postuninstall_cmds \
  8703. _LT_AC_TAGVAR(compiler, $1) \
  8704. _LT_AC_TAGVAR(CC, $1) \
  8705. _LT_AC_TAGVAR(LD, $1) \
  8706. _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
  8707. _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
  8708. _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
  8709. _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
  8710. _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
  8711. _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
  8712. _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
  8713. _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \
  8714. _LT_AC_TAGVAR(old_archive_cmds, $1) \
  8715. _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
  8716. _LT_AC_TAGVAR(predep_objects, $1) \
  8717. _LT_AC_TAGVAR(postdep_objects, $1) \
  8718. _LT_AC_TAGVAR(predeps, $1) \
  8719. _LT_AC_TAGVAR(postdeps, $1) \
  8720. _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
  8721. _LT_AC_TAGVAR(archive_cmds, $1) \
  8722. _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
  8723. _LT_AC_TAGVAR(postinstall_cmds, $1) \
  8724. _LT_AC_TAGVAR(postuninstall_cmds, $1) \
  8725. _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
  8726. _LT_AC_TAGVAR(allow_undefined_flag, $1) \
  8727. _LT_AC_TAGVAR(no_undefined_flag, $1) \
  8728. _LT_AC_TAGVAR(export_symbols_cmds, $1) \
  8729. _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
  8730. _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \
  8731. _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
  8732. _LT_AC_TAGVAR(hardcode_automatic, $1) \
  8733. _LT_AC_TAGVAR(module_cmds, $1) \
  8734. _LT_AC_TAGVAR(module_expsym_cmds, $1) \
  8735. _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
  8736. _LT_AC_TAGVAR(exclude_expsyms, $1) \
  8737. _LT_AC_TAGVAR(include_expsyms, $1); do
  8738. case $var in
  8739. _LT_AC_TAGVAR(old_archive_cmds, $1) | \
  8740. _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
  8741. _LT_AC_TAGVAR(archive_cmds, $1) | \
  8742. _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
  8743. _LT_AC_TAGVAR(module_cmds, $1) | \
  8744. _LT_AC_TAGVAR(module_expsym_cmds, $1) | \
  8745. _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
  8746. _LT_AC_TAGVAR(export_symbols_cmds, $1) | \
  8747. extract_expsyms_cmds | reload_cmds | finish_cmds | \
  8748. postinstall_cmds | postuninstall_cmds | \
  8749. old_postinstall_cmds | old_postuninstall_cmds | \
  8750. sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
  8751. # Double-quote double-evaled strings.
  8752. eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
  8753. ;;
  8754. *)
  8755. eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
  8756. ;;
  8757. esac
  8758. done
  8759. case $lt_echo in
  8760. *'\[$]0 --fallback-echo"')
  8761. lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
  8762. ;;
  8763. esac
  8764. ifelse([$1], [],
  8765. [cfgfile="${ofile}T"
  8766. trap "$rm \"$cfgfile\"; exit 1" 1 2 15
  8767. $rm -f "$cfgfile"
  8768. AC_MSG_NOTICE([creating $ofile])],
  8769. [cfgfile="$ofile"])
  8770. cat <<__EOF__ >> "$cfgfile"
  8771. ifelse([$1], [],
  8772. [#! $SHELL
  8773. # `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
  8774. # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
  8775. # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  8776. #
  8777. # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
  8778. # Free Software Foundation, Inc.
  8779. #
  8780. # This file is part of GNU Libtool:
  8781. # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  8782. #
  8783. # This program is free software; you can redistribute it and/or modify
  8784. # it under the terms of the GNU General Public License as published by
  8785. # the Free Software Foundation; either version 2 of the License, or
  8786. # (at your option) any later version.
  8787. #
  8788. # This program is distributed in the hope that it will be useful, but
  8789. # WITHOUT ANY WARRANTY; without even the implied warranty of
  8790. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  8791. # General Public License for more details.
  8792. #
  8793. # You should have received a copy of the GNU General Public License
  8794. # along with this program; if not, write to the Free Software
  8795. # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  8796. #
  8797. # As a special exception to the GNU General Public License, if you
  8798. # distribute this file as part of a program that contains a
  8799. # configuration script generated by Autoconf, you may include it under
  8800. # the same distribution terms that you use for the rest of that program.
  8801. # A sed program that does not truncate output.
  8802. SED=$lt_SED
  8803. # Sed that helps us avoid accidentally triggering echo(1) options like -n.
  8804. Xsed="$SED -e s/^X//"
  8805. # The HP-UX ksh and POSIX shell print the target directory to stdout
  8806. # if CDPATH is set.
  8807. if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
  8808. # The names of the tagged configurations supported by this script.
  8809. available_tags=
  8810. # ### BEGIN LIBTOOL CONFIG],
  8811. [# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
  8812. # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
  8813. # Shell to use when invoking shell scripts.
  8814. SHELL=$lt_SHELL
  8815. # Whether or not to build shared libraries.
  8816. build_libtool_libs=$enable_shared
  8817. # Whether or not to build static libraries.
  8818. build_old_libs=$enable_static
  8819. # Whether or not to add -lc for building shared libraries.
  8820. build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
  8821. # Whether or not to disallow shared libs when runtime libs are static
  8822. allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)
  8823. # Whether or not to optimize for fast installation.
  8824. fast_install=$enable_fast_install
  8825. # The host system.
  8826. host_alias=$host_alias
  8827. host=$host
  8828. # An echo program that does not interpret backslashes.
  8829. echo=$lt_echo
  8830. # The archiver.
  8831. AR=$lt_AR
  8832. AR_FLAGS=$lt_AR_FLAGS
  8833. # A C compiler.
  8834. LTCC=$lt_LTCC
  8835. # A language-specific compiler.
  8836. CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
  8837. # Is the compiler the GNU C compiler?
  8838. with_gcc=$_LT_AC_TAGVAR(GCC, $1)
  8839. # An ERE matcher.
  8840. EGREP=$lt_EGREP
  8841. # The linker used to build libraries.
  8842. LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
  8843. # Whether we need hard or soft links.
  8844. LN_S=$lt_LN_S
  8845. # A BSD-compatible nm program.
  8846. NM=$lt_NM
  8847. # A symbol stripping program
  8848. STRIP=$STRIP
  8849. # Used to examine libraries when file_magic_cmd begins "file"
  8850. MAGIC_CMD=$MAGIC_CMD
  8851. # Used on cygwin: DLL creation program.
  8852. DLLTOOL="$DLLTOOL"
  8853. # Used on cygwin: object dumper.
  8854. OBJDUMP="$OBJDUMP"
  8855. # Used on cygwin: assembler.
  8856. AS="$AS"
  8857. # The name of the directory that contains temporary libtool files.
  8858. objdir=$objdir
  8859. # How to create reloadable object files.
  8860. reload_flag=$lt_reload_flag
  8861. reload_cmds=$lt_reload_cmds
  8862. # How to pass a linker flag through the compiler.
  8863. wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
  8864. # Object file suffix (normally "o").
  8865. objext="$ac_objext"
  8866. # Old archive suffix (normally "a").
  8867. libext="$libext"
  8868. # Shared library suffix (normally ".so").
  8869. shrext='$shrext'
  8870. # Executable file suffix (normally "").
  8871. exeext="$exeext"
  8872. # Additional compiler flags for building library objects.
  8873. pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
  8874. pic_mode=$pic_mode
  8875. # What is the maximum length of a command?
  8876. max_cmd_len=$lt_cv_sys_max_cmd_len
  8877. # Does compiler simultaneously support -c and -o options?
  8878. compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
  8879. # Must we lock files when doing compilation ?
  8880. need_locks=$lt_need_locks
  8881. # Do we need the lib prefix for modules?
  8882. need_lib_prefix=$need_lib_prefix
  8883. # Do we need a version for libraries?
  8884. need_version=$need_version
  8885. # Whether dlopen is supported.
  8886. dlopen_support=$enable_dlopen
  8887. # Whether dlopen of programs is supported.
  8888. dlopen_self=$enable_dlopen_self
  8889. # Whether dlopen of statically linked programs is supported.
  8890. dlopen_self_static=$enable_dlopen_self_static
  8891. # Compiler flag to prevent dynamic linking.
  8892. link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
  8893. # Compiler flag to turn off builtin functions.
  8894. no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
  8895. # Compiler flag to allow reflexive dlopens.
  8896. export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
  8897. # Compiler flag to generate shared objects directly from archives.
  8898. whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
  8899. # Compiler flag to generate thread-safe objects.
  8900. thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
  8901. # Library versioning type.
  8902. version_type=$version_type
  8903. # Format of library name prefix.
  8904. libname_spec=$lt_libname_spec
  8905. # List of archive names. First name is the real one, the rest are links.
  8906. # The last name is the one that the linker finds with -lNAME.
  8907. library_names_spec=$lt_library_names_spec
  8908. # The coded name of the library, if different from the real name.
  8909. soname_spec=$lt_soname_spec
  8910. # Commands used to build and install an old-style archive.
  8911. RANLIB=$lt_RANLIB
  8912. old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
  8913. old_postinstall_cmds=$lt_old_postinstall_cmds
  8914. old_postuninstall_cmds=$lt_old_postuninstall_cmds
  8915. # Create an old-style archive from a shared archive.
  8916. old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
  8917. # Create a temporary old-style archive to link instead of a shared archive.
  8918. old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
  8919. # Commands used to build and install a shared archive.
  8920. archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
  8921. archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
  8922. postinstall_cmds=$lt_postinstall_cmds
  8923. postuninstall_cmds=$lt_postuninstall_cmds
  8924. # Commands used to build a loadable module (assumed same as above if empty)
  8925. module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1)
  8926. module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1)
  8927. # Commands to strip libraries.
  8928. old_striplib=$lt_old_striplib
  8929. striplib=$lt_striplib
  8930. # Dependencies to place before the objects being linked to create a
  8931. # shared library.
  8932. predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
  8933. # Dependencies to place after the objects being linked to create a
  8934. # shared library.
  8935. postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
  8936. # Dependencies to place before the objects being linked to create a
  8937. # shared library.
  8938. predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
  8939. # Dependencies to place after the objects being linked to create a
  8940. # shared library.
  8941. postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
  8942. # The library search path used internally by the compiler when linking
  8943. # a shared library.
  8944. compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
  8945. # Method to check whether dependent libraries are shared objects.
  8946. deplibs_check_method=$lt_deplibs_check_method
  8947. # Command to use when deplibs_check_method == file_magic.
  8948. file_magic_cmd=$lt_file_magic_cmd
  8949. # Flag that allows shared libraries with undefined symbols to be built.
  8950. allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
  8951. # Flag that forces no undefined symbols.
  8952. no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
  8953. # Commands used to finish a libtool library installation in a directory.
  8954. finish_cmds=$lt_finish_cmds
  8955. # Same as above, but a single script fragment to be evaled but not shown.
  8956. finish_eval=$lt_finish_eval
  8957. # Take the output of nm and produce a listing of raw symbols and C names.
  8958. global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
  8959. # Transform the output of nm in a proper C declaration
  8960. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
  8961. # Transform the output of nm in a C name address pair
  8962. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  8963. # This is the shared library runtime path variable.
  8964. runpath_var=$runpath_var
  8965. # This is the shared library path variable.
  8966. shlibpath_var=$shlibpath_var
  8967. # Is shlibpath searched before the hard-coded library search path?
  8968. shlibpath_overrides_runpath=$shlibpath_overrides_runpath
  8969. # How to hardcode a shared library path into an executable.
  8970. hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
  8971. # Whether we should hardcode library paths into libraries.
  8972. hardcode_into_libs=$hardcode_into_libs
  8973. # Flag to hardcode \$libdir into a binary during linking.
  8974. # This must work even if \$libdir does not exist.
  8975. hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
  8976. # If ld is used when linking, flag to hardcode \$libdir into
  8977. # a binary during linking. This must work even if \$libdir does
  8978. # not exist.
  8979. hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)
  8980. # Whether we need a single -rpath flag with a separated argument.
  8981. hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
  8982. # Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the
  8983. # resulting binary.
  8984. hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
  8985. # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
  8986. # resulting binary.
  8987. hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
  8988. # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
  8989. # the resulting binary.
  8990. hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
  8991. # Set to yes if building a shared library automatically hardcodes DIR into the library
  8992. # and all subsequent libraries and executables linked against it.
  8993. hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1)
  8994. # Variables whose values should be saved in libtool wrapper scripts and
  8995. # restored at relink time.
  8996. variables_saved_for_relink="$variables_saved_for_relink"
  8997. # Whether libtool must link a program against all its dependency libraries.
  8998. link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
  8999. # Compile-time system search path for libraries
  9000. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
  9001. # Run-time system search path for libraries
  9002. sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
  9003. # Fix the shell variable \$srcfile for the compiler.
  9004. fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
  9005. # Set to yes if exported symbols are required.
  9006. always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
  9007. # The commands to list exported symbols.
  9008. export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
  9009. # The commands to extract the exported symbol list from a shared archive.
  9010. extract_expsyms_cmds=$lt_extract_expsyms_cmds
  9011. # Symbols that should not be listed in the preloaded symbols.
  9012. exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
  9013. # Symbols that must always be exported.
  9014. include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
  9015. ifelse([$1],[],
  9016. [# ### END LIBTOOL CONFIG],
  9017. [# ### END LIBTOOL TAG CONFIG: $tagname])
  9018. __EOF__
  9019. ifelse([$1],[], [
  9020. case $host_os in
  9021. aix3*)
  9022. cat <<\EOF >> "$cfgfile"
  9023. # AIX sometimes has problems with the GCC collect2 program. For some
  9024. # reason, if we set the COLLECT_NAMES environment variable, the problems
  9025. # vanish in a puff of smoke.
  9026. if test "X${COLLECT_NAMES+set}" != Xset; then
  9027. COLLECT_NAMES=
  9028. export COLLECT_NAMES
  9029. fi
  9030. EOF
  9031. ;;
  9032. esac
  9033. # We use sed instead of cat because bash on DJGPP gets confused if
  9034. # if finds mixed CR/LF and LF-only lines. Since sed operates in
  9035. # text mode, it properly converts lines to CR/LF. This bash problem
  9036. # is reportedly fixed, but why not run on old versions too?
  9037. sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
  9038. mv -f "$cfgfile" "$ofile" || \
  9039. (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
  9040. chmod +x "$ofile"
  9041. ])
  9042. else
  9043. # If there is no Makefile yet, we rely on a make rule to execute
  9044. # `config.status --recheck' to rerun these tests and create the
  9045. # libtool script then.
  9046. test -f Makefile && make "$ltmain"
  9047. fi
  9048. ])# AC_LIBTOOL_CONFIG
  9049. # AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
  9050. # -------------------------------------------
  9051. AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
  9052. [AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
  9053. _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=