12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997 |
- 2017-06-18 Mathieu Lirzin <mthl@gnu.org>
- version 1.15.1
- * configure.ac (AC_INIT): Bump version number to 1.15.1.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2017-06-18 Mathieu Lirzin <mthl@gnu.org>
- maint: Update 'git-tag-release' rule
- * maintainer/maint.mk (git-tag-release): Use a Git tag message similar
- to what the 'do-release-commit-and-tag' script from Gnulib do.
- 2017-06-18 Mathieu Lirzin <mthl@gnu.org>
- maint: Update files from upstream with 'make fetch'
- * lib/config.guess: Update.
- * lib/config.sub: Likewise.
- * lib/texinfo.tex: Likewise.
- 2017-06-18 Mathieu Lirzin <mthl@gnu.org>
- maint: Update NEWS
- * NEWS: Announce important bug fixes.
- 2017-05-20 Mathieu Lirzin <mthl@gnu.org>
- bootstrap: Add a rationale for the bootstrap process.
- * bootstrap: Explain why we can't simply run 'autoreconf -i'.
- 2017-05-20 Mathieu Lirzin <mthl@gnu.org>
- bootstrap: Rename 'bootstrap.sh' to 'bootstrap'.
- Follow Gnulib's convention of using either "bootstrap" or "autogen.sh"
- file names for development bootstrap scripts.
- * bootstrap.sh: Rename to ...
- * bootstrap: ... this.
- * GNUmakefile (bootstrap): Adapt.
- * HACKING: Likewise.
- * Makefile.am (EXTRA_DIST): Likewise.
- * doc/automake.texi (Future of aclocal)
- (Error required file ltmain.sh not found): Likewise.
- * maintainer/maint.mk (autodiffs, update-copyright): Likewise.
- 2017-05-20 Mathieu Lirzin <mthl@gnu.org>
- automake: Update 'read_am_file' docstring.
- * bin/automake.in (read_am_file): Update docstring which was referring
- to a non existent '%contents' variable.
- 2017-04-16 Bruno Haible <bruno@clisp.org>
- tests: Never invoke gettextize.
- This change fixes automake bug#26514.
- * t/gettext-macros.sh: Never invoke gettextize.
- 2017-04-13 Mathieu Lirzin <mthl@gnu.org>
- tests: Update "t/txinfo-no-clutter.sh".
- This is workaround to a regression introduced by
- 48107579abadbe857c8299c38d2ca0a3f8f354c8. With current
- "lib/texinfo.tex", 'texi2dvi' is not able to produce a valid output
- for a Texinfo document containing a @synindex command. As a
- consequence the test "t/txinfo-no-clutter.sh" was failing.
- * t/txinfo-no-clutter.sh: Remove use of @synindex command.
- 2017-03-05 Mathieu Lirzin <mthl@gnu.org>
- maint: Update "lib/texinfo.tex".
- This fixes a regression in 48107579abadbe857c8299c38d2ca0a3f8f354c8
- where 'texi2dvi' was not able to produce a valid output for a Texinfo
- document without text. As a consequence the test "t/silent-texi.sh"
- was failing.
- * lib/texinfo.tex: Update to 2017-03-05.09.
- 2017-03-02 Mathieu Lirzin <mthl@gnu.org>
- maint: Update copyright years to 2017.
- This update has been made with 'make update-copyright'.
- 2017-03-02 Mathieu Lirzin <mthl@gnu.org>
- maint: Update files from upstream with 'make fetch'.
- * lib/INSTALL: Update.
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- * lib/gendocs.sh: Likewise.
- * lib/gendocs_template: Likewise.
- * lib/gitlog-to-changelog: Likewise.
- * lib/gnupload: Likewise.
- * lib/texinfo.tex: Likewise.
- * lib/update-copyright: Likewise.
- 2017-03-02 Mathieu Lirzin <mthl@gnu.org>
- maint: Update fetch URLs.
- * maintainer/maint.mk (SV_CVS, SV_GIT_AC): Remove.
- (SV_GIT_CF, SV_GIT_GL): Use https for Savannah Git repositories.
- (FETCHFILES): Use Gnulib repository as the source of "texinfo.tex",
- "gendocs.sh", and "gendocs_template" files.
- 2017-02-23 Mathieu Lirzin <mthl@gnu.org>
- doc: fix typo "requited" => "required"
- This change fixes automake bug#25413.
- * doc/automake.texi (Serial Test Harness): Fix typo.
- 2016-09-09 Jim Meyering <meyering@fb.com>
- automake: do not emit rule with two dependents
- On a system using our replacement alloca, make would emit
- this warning:
- target '.deps/alloca.Po' given more than once in the same rule
- That arose because automake would emit a rule depending on both
- ./.deps/alloca.Po and .deps/alloca.Po. Normally, duplicate
- dependents are avoided by virtue of their names being keys in
- the %dep_files hash, but in this case, that particular file
- was specified in two different ways.
- * bin/automake.in (handle_ALLOCA): When the $dir prefix is empty,
- make it './', to ensure that when we add ./.deps/alloca.Po
- it is deduped.
- See: http://bugs/gnu/org/22702
- 2016-04-21 Paul Eggert <eggert@cs.ucla.edu>
- python: add python3.5, python3.4
- * m4/python.m4 (AM_PATH_PYTHON): Add python3.5, python3.4.
- 2016-04-01 Paul Eggert <eggert@cs.ucla.edu>
- automake: port to Perl 5.22 and later
- Without this change, Perl 5.22 complains "Unescaped left brace in
- regex is deprecated" and this is planned to become a hard error in
- Perl 5.26. See:
- http://search.cpan.org/dist/perl-5.22.0/pod/perldelta.pod#A_literal_%22{%22_should_now_be_escaped_in_a_pattern
- * bin/automake.in (substitute_ac_subst_variables): Escape left brace.
- 2016-03-29 Paul Eggert <eggert at>
- automake: port better to future gzip
- * lib/am/distdir.am (dist-gzip, dist-shar, distcheck):
- Port better to future versions of gzip, which are planned to
- deprecate the GZIP environment variable (Bug#20132).
- 2016-01-12 Paul Eggert <eggert@cs.ucla.edu>
- maint: port time-stamp-time-zone to strict POSIX
- Set time-stamp-time-zone to "UTC0", not to "UTC", as POSIX defines
- TZ="UTC0" not TZ="UTC".
- 2015-11-24 Jonathan L Peyton <jonathan.l.peyton@intel.com> (tiny change)
- compile: add icl to compile wrapper script
- * lib/compile: Have icl be treated similarly to cl
- (scriptversion): Update.
- * t/ax/am-test-lib.sh (require_tool): Handle icl.
- * t/compile7.sh: Add new test file for icl...
- * t/list-of-tests.mk (handwritten_TESTS): ...and use it.
- * NEWS: Update.
- * THANKS: Update.
- 2015-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a typo-induced bug
- * t/subobj-vpath-pr13928.sh: Here; we were using $FGREP instead of
- $EGREP, oops.
- 2015-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix a typo
- 2015-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: update copyright years to 2015 (branch 'micro')
- 2015-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update third-part files from upstream
- * lib/config.sub: This.
- * lib/INSTALL, lib/config.guess, lib/gitlog-to-changelog, lib/gnupload,
- lib/update-copyright: And this (but only for copyright year update, no
- real semantic change)
- 2015-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: fix typo in error message of a maintainer-only rule
- * maintainer/maint.mk (web-manual-update): Here.
- 2015-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'minor' into micro after 1.15 release
- And bump version number: 1.15 -> 1.15.0a
- * minor:
- release: stable minor release 1.15
- NEWS: minor improvements and fixed some typos and grammaros
- docs: "make distcheck" implementation details are not to be abused
- NEWS: improve and adjust in light of the oncoming 1.15 release
- Fix dumb logic error preventing $install_sh from being be overridden
- Expose automake bug#19311
- build: fix race in parallel builds
- init: ensure $ac_aux_dir is defined before being used
- plans: enabling subdir-object by default is blocked on bug#13928
- maint: update copyright years
- maint: sync files from upstream ("make fetch")
- Typofixes in warning messages and manual
- NEWS: a typofix, and better word wrapping
- parallel-tests: avoid possible implicit "make all" in test-suite.log rule
- Allow user to extend .PRECIOUS target
- cosmetics: remove a couple of extra trailing white spaces
- tests: fix a spurious failure on Mac OS X
- docs: make clear the JAVA primary is frozen
- install-sh: a slightly better diagnostic, and tests enhancements
- install-sh: be stricter in catching invalid usages
- tests: more significant names for some tests
- tests: some cosmetic fixes
- tests: more significant names for a test
- docs: drop a few obsolescent FIXME/TODO comments, and associated text
- testsuite harness: report test exit status in log file
- TAP driver: no need to invoke AC_PROG_AWK directly
- TAP driver: remove perl implementation (move it into contrib/)
- NEWS: stop reporting "new" Automake versioning scheme
- cosmetics: untabify the install-sh script
- install-sh: assume that "set -f" and "set +f" work...
- install-sh: assume ${var:-value} works as expected
- install-sh: assume 'dirname' is available and working correctly
- post-release: micro version bump (1.14a)
- 2014-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable minor release 1.15
- * configure.ac (AC_INIT): Bump version number to 1.15.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2014-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: minor improvements and fixed some typos and grammaros
- 2014-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: "make distcheck" implementation details are not to be abused
- * doc/automake.texi: State explicitly and in detail that the exact location
- and the exact structure of the subdirectory used by "make distcheck" is to
- be considered an implementation detail, which can change at any time.
- 2014-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: improve and adjust in light of the oncoming 1.15 release
- 2014-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- shell-no-trail-bslash: improve diagnostic in case of failure
- 2014-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- shell-no-trail-bslash: improve diagnostic in case of failure
- * t/ax/shell-no-trail-bslash.in: Here, by fixing a typo in a
- variable name and a logic error.
- * t/self-check-shell-no-trail-bslash.sh: Enhance to catch the
- issue.
- 2014-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- tests: make script 'shell-no-trail-bslash' simpler and more robust
- 2014-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make script 'shell-no-trail-bslash' simpler and more robust
- This solves spurious failure in the 'check-no-trailing-backslash-in-recipes'
- target for Automake-NG.
- This is basically a backport of Automake-NG commit v1.14.1-1010-g85aae58;
- the point is to minimize the amount of spurious diffs between the mainline
- Automake and the Automake-NG source trees.
- * t/ax/shell-no-trail-bslash.in: Simplify and fortify.
- * t/self-check-shell-no-trail-bslash.sh: Enhance.
- 2014-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- tests: fix spurious failure in test on TEXINFO_TEX overriding
- tests: avoid some spurious failures on AIX 7.1
- 2014-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure in test on TEXINFO_TEX overriding
- * t/txinfo-override-texinfo-tex.sh: Here. The issue was pre-existing, but
- has been only recently exposed by the fix for automake bug#18286 "distcheck
- fails to detect missing files" (see commit v1.14.1-4-g01a7a4a) and by the
- BSD make semantics. To convince yourself this change actually makes sense
- semantically, see https://sourceware.org/ml/binutils/2012-06/msg00004.html
- 2014-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'aix-testsuite-failures' into micro
- * aix-testsuite-failures:
- tests: avoid some spurious failures on AIX 7.1
- 2014-12-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid some spurious failures on AIX 7.1
- * t/lex-noyywrap.sh: Here.
- * t/instmany-mans.sh: And here.
- * t/instmany-python.sh: And here.
- * t/instmany.sh: And here.
- * t/parallel-tests-concurrency.sh: And here.
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- dist: fix bug#18286 "distcheck fails to detect missing files"
- tests: expose automake bug#18286 "distcheck fails to detect missing files"
- include: fix bug in handling of user-defined makefile fragments generation
- tests: expose bug in handling of user-defined makefile fragments generation
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'distcheck-pr18286' into micro
- * distcheck-pr18286:
- dist: fix bug#18286 "distcheck fails to detect missing files"
- tests: expose automake bug#18286 "distcheck fails to detect missing files"
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: fix bug#18286 "distcheck fails to detect missing files"
- BTW, this issue had been already reported in the past:
- http://lists.gnu.org/archive/html/automake/2006-09/msg00008.html
- http://lists.gnu.org/archive/html/automake/2013-01/msg00049.html
- "make distcheck" could sometimes fail to detect missing files in the
- distribution tarball, especially in those cases where both the generated
- files and their dependencies are explicitly in $(srcdir). An important
- example of this are *generated* makefile fragments included at Automake
- time in Makefile.am. A basic example:
- # -*- Makefile.am -*-
- $(srcdir)/fragment.am: $(srcdir)/data.txt $(srcdir)/preproc.sh
- cd $(srcdir) && $(SHELL) preproc.sh <data.txt >fragment.am
- include $(srcdir)/fragment.am
- ...
- If the use forgot to add data.txt and/or preproc.sh in the distribution
- tarball, "make distcheck" would have erroneously succeeded!
- The reason is that, while $(srcdir)/data.txt does not exist, make also
- looks in $(srcdir)/$(srcdir)/data.txt, and in the distcheck-issued
- VPATH build where $(srcdir) is '..', that file exists, as it is
- part of the original development directory.
- * t/distdir.am (distcheck): Adjust to have the build directory be
- '$(distdir)/_build/sub' rather than just '$(distdir)/_build'. Thanks
- Nicola Fontana for the suggestion.
- * t/distcheck-pr18286.sh: Enhance and tighten a little.
- * t/list-of-tests.mk (XFAIL_TESTS): Remove 't/distcheck-pr18286.sh',
- as it's now passing.
- * t/subdir-am-cond.sh: Adjust to avoid a fully spurious failure due
- to the new distcheck semantics.
- * t/subdir-ac-subst.sh: Likewise.
- * t/dejagnu-relative-srcdir.sh: Likewise.
- * t/txinfo-builddir.sh: Likewise.
- * NEWS: Update.
- Helped-by: Nicola Fontana <ntd@entidi.it>
- Helped-by: Peter Johansson <trojkan@gmail.com>
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose automake bug#18286 "distcheck fails to detect missing files"
- * t/distcheck-pr18286.sh: New test, still XFAILing.
- * t/list-of-tests.mk: Add it.
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'am-deps' into micro
- * am-deps:
- include: fix bug in handling of user-defined makefile fragments generation
- tests: expose bug in handling of user-defined makefile fragments generation
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- include: fix bug in handling of user-defined makefile fragments generation
- If a user defined one single Makefile fragment to be included (via Automake
- includes) in his main Makefile.am, and gave a rule to generate that file
- from other data, Automake used to spuriously complain about with something
- like "overrides Automake target '$(srcdir)/foo.am". This change remove that
- spurious error (via a simple hack rather than a systematic change, but oh
- well).
- * lib/am/configure.am (%MAKEFILE-IN-DEPS%) [?HAVE-MAKEFILE-IN-DEPS?]: Add
- a trailing "$(am__empty)" to the list of targets, which is enough to trick
- Automake into not complaining about "duplicated targets" in case the
- '%MAKEFILE-IN-DEPS%' list expands to a single target that is also declared
- in some user-defined rule.
- * t/list-of-tests.mk (XFAIL_TESTS): Remove now-passing test
- 't/am-include-only-one-generated-fragment.sh'.
- * NEWS: Update.
- 2014-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose bug in handling of user-defined makefile fragments generation
- If a user defines one single Makefile fragment to be included (via Automake
- includes) in his main Makefile.am, and givse a rule to generate that file
- from other data, Automake will spuriously complain about with something
- like "overrides Automake target '$(srcdir)/foo.am".
- * t/am-include-only-one-generated-fragment.sh: Expose the bug (this test
- is still XFAILing).
- * t/list-of-tests.mk: Add the new test.
- 2014-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- cleanup: refactor code to initialize DIST_COMMON
- dist: ordering of files in DIST_COMMON is deterministic now
- tests: refactor some tests on DIST_COMMON
- maint: make output of 'gen-testsuite-part' deterministic
- When computing lispdir, don't load emacs site wide init file.
- PATH: quote $(PATH_SEPARATOR) as well
- Improve detection of GNU make, avoiding "Arg list too long" errors.
- 2014-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: refactor code to initialize DIST_COMMON
- There is not need to make that an Automake variable early,
- only to later get and munge its contents, and use the new
- content to redefine the variable.
- * bin/automake.in (@dist_common): New global variable.
- (push_dist_common, handle_dist): Use it.
- (handle_dist): Define am__DIST_COMMON instead of DIST_COMMON
- directly.
- (initialize_per_input): Reset it to empty.
- ($configure_dist_common): Turn this scalar variable ...
- (@configure_dist_common): ... into this array variable.
- (handle_dist): Adjust.
- (required_file_check_or_copy): Update and wrap some comments.
- * lib/am/distdir.am (DIST_COMMON): Append $(am__DIST_COMMON).
- * t/distcom2.sh: Tighten a little.
- 2014-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: ordering of files in DIST_COMMON is deterministic now
- It had likely stopped being deterministic due to the new perl behavior
- of having non-deterministic order of numerating hash keys:
- <http://search.cpan.org/dist/perl-5.18.0/pod/perldelta.pod#Hash_randomization>
- <http://onionstand.blogspot.ie/2012/12/are-you-relying-on-hash-keys-being.html>
- See also similar commit v1.14-19-g52e6404, albeit in this case the issue
- is likely coming from autom4te/autoconf, not from automake itself.
- Fixes automake bug http://debbugs.gnu.org/17908
- * bin/automake.in (handle_dist): Sort @dist_common.
- (print_autodist_files): Swap invocations of 'sort' and 'uniq', for
- consistency with the new code in 'handle_dist' and to get rid of a
- minor hack.
- * NEWS: Update.
- 2014-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: refactor some tests on DIST_COMMON
- So that they prefer checking the semantics of the generated Makefiles,
- rather than grepping their content. This will be useful in an upcoming
- refactoring.
- * t/distcom-subdir.sh: Adjust this test.
- * t/distcom2.sh: And this.
- * t/distcom3.sh: And this.
- * t/distcom4.sh: And this.
- * t/distcom5.sh: And this.
- 2014-12-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: make output of 'gen-testsuite-part' deterministic
- So that diffs displayed by the 'compare-autodiffs' target are
- less spurious and more useful.
- * gen-testsuite-part: Sort keys of %deps_extractor, %wrapper_setups
- and %depmodes before iterating on them.
- 2014-12-19 Andrew Burgess <andrew.burgess@embecosm.com> (tiny change)
- When computing lispdir, don't load emacs site wide init file.
- When computing the lispdir emacs was previously invoked with the '-q'
- option to avoid loading the users initialisation files, however, the
- site wide initialisation file was still loaded, in some cases this can
- cause emacs to hang, with the result that a configure can also hang.
- The lisp code that aclocal causes to be executed reduces the load-path
- list (in emacs) to empty. The load-path is used by emacs to find
- packages which it wants to load. Currently, if emacs tries to auto
- load a package during shut down, and the package is not found, then
- emacs will hang. This does seem like an emacs bug, but protecting
- against this in aclocal is simply a case of not loading the site wide
- initialisation file.
- In this patch then the '-q' option to emacs is replaced with '-Q',
- this has the same, the '-Q' option is similar to '-q --no-site-file
- --no-splash'.
- * doc/automake.texi (Hard-Coded Install Paths): Update explanation of
- emacs code used to get lispdir.
- * m4/lispdir.m4 (AM_PATH_LISPDIR): Update emacs flags.
- 2014-12-19 KO Myung-Hun <komh78@gmail.com> (tiny change)
- PATH: quote $(PATH_SEPARATOR) as well
- On OS/2, $(PATH_SEPARATOR) is ';'. Without quote, it is recognized as
- a mark of end of sentence.
- * Makefile.am: quote $(PATH_SEPARATOR) as well.
- * t/Makefile.inc: Likewise.
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Improve detection of GNU make, avoiding "Arg list too long" errors.
- Such errors could take place when the main makefile included too many
- sub-makefiles, making $(MAKEFILE_LIST) too long and causing the
- recipes $(am__is_gnu_make) to exceed the shell's command-line length
- limits. This is not a theoretical issue: it could happen for projects
- having lots of C/C++ sources and using automatic dependency tracking,
- which created an included .Po sub-makefile for each of such sources.
- Fixes http://debbugs.gnu.org/18744
- * lib/am/header-vars.am (am__is_gnu_make): Fix the logic to avoid
- the use of $(MAKEFILE_LIST).
- * NEWS: Update.
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- Fix stupid typo in test, causing spurious failure
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Fix stupid typo in test, causing spurious failure
- * t/aminit-trailing-dnl-comment-pr16841.sh: s/greop/grep/
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- sync: update third-part files from upstream
- Make sure AM_INIT_AUTOMAKE has a trailing newline
- dist: adjust warning messages about shar and tarZ deprecation
- docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'pr16841' into micro
- * pr16841:
- Make sure AM_INIT_AUTOMAKE has a trailing newline
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update third-part files from upstream
- * lib/config.guess: This.
- * lib/config.sub: And this.
- * lib/gitlog-to-changelog: And this.
- * lib/gnupload: And this.
- * lib/update-copyright: And this.
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Make sure AM_INIT_AUTOMAKE has a trailing newline
- This used to be the case until Automke 1.13, but we broke it in
- Automake 1.14 (see commit v1.13.1-71-gf78b0f0). This caused
- issues like http://debbugs.gnu.org/16841
- * m4/init.m4 (AM_INIT_AUTOMAKE): Adjust.
- * t/aminit-trailing-dnl-comment-pr16841.sh: New test.
- * t/list-of-tests.mk: Add it.
- * NEWS, THANKS: Update.
- 2014-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'dist-warn-pr19108' and 'docs-pr16623' into micro
- * dist-warn-pr19108:
- dist: adjust warning messages about shar and tarZ deprecation
- * docs-pr16623:
- docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
- 2014-12-19 Aharon Robbins <arnold@skeeve.com>
- dist: adjust warning messages about shar and tarZ deprecation
- They were swapped. Reported in http://debbugs.gnu.org/19108.
- 2014-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
- In particular, suggesting that $PACKAGE and $VERSION should be aliases of
- the $PACKAGE_TARNAME and $PACKAGE_VERSION definitions coming from AC_INIT,
- and not be defined via an obsolete 2-argument invocation of AM_INIT_AUTOMAKE;
- and why that is the best default, given all our historical baggage.
- See discussion in http://debbugs.gnu.org/16623 for more information and
- background.
- * doc/automake.texi: Adjust.
- * THANKS: Update.
- 2014-12-17 Thomas Jahns <jahns@dkrz.de>
- Fix dumb logic error preventing $install_sh from being be overridden
- * m4/install-sh.m4: Here.
- * THANKS: Update.
- 2014-12-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'pr19311' and 'micro' into minor
- * pr19311:
- Expose automake bug#19311
- build: fix race in parallel builds
- * micro:
- Automake docs: fix typos and use of British English
- build: fix race in parallel builds
- 2014-12-17 Karl Berry <karl@freefriends.org>
- Automake docs: fix typos and use of British English
- * doc/automake.texi: Here.
- 2014-12-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Expose automake bug#19311
- AC_PROG_CC called before AC_CONFIG_AUX_DIR can silently force wrong
- $ac_aux_dir definition.
- * t/auxdir-pr19311.sh: New.
- * t/list-of-tests.mk: Add it as an XFAIL test.
- 2014-12-17 Paul Eggert <eggert@cs.ucla.edu>
- build: fix race in parallel builds
- Reported by Friedrich Beckmann in: http://bugs.gnu.org/18301
- * lib/am/texi-vers.am (?DIRSTAMP?): Put the process-ID into the
- temporary file name. Use a similar temporary in the source dir.
- 2014-08-23 Paul Eggert <eggert@cs.ucla.edu>
- build: fix race in parallel builds
- Reported by Friedrich Beckmann in: http://bugs.gnu.org/18301
- * lib/am/texi-vers.am (?DIRSTAMP?): Put the process-ID into the
- temporary file name. Use a similar temporary in the source dir.
- 2014-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- init: ensure $ac_aux_dir is defined before being used
- Since we use '$ac_aux_dir' to define '$am_aux_dir', we need
- to ensure the former has been initialized before we try to
- define the latter, otherwise the definition:
- am_aux_dir=`cd $ac_aux_dir && pwd`
- will set '$am_aux_dir' to '$HOME', likely causing weird and
- unexpected behaviours.
- This change fixes automake bug#15981.
- * m4/auxdir.m4 (AM_AUX_DIR_EXPAND): AC_REQUIRE expansion
- of 'AC_CONFIG_AUX_DIR_DEFAULT'. Fix redundant comment and
- AC_PREREQ, add extra quoting around '$ac_aux_dir'.
- * t/auxdir-pr15981.sh: New test.
- * t/auxdir-cc-pr15981.sh: Likewise.
- * t/list-of-tests.mk (handwritten_TESTS): Add them.
- * THANKS, NEWS: Update.
- * bin/automake.in: Fix a harmless typo in comments, that
- I happened to notice while writing this patch.
- 2014-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: enabling subdir-object by default is blocked on bug#13928
- 2014-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: update copyright years
- We've been in 2014 already for few months now...
- 2014-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: sync files from upstream ("make fetch")
- 2014-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Typofixes in warning messages and manual
- Fixes automake bug#16827 and bug#16997.
- 2014-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- doc: fix encoding error with UTF-8 characters
- 2014-01-04 Paul Eggert <eggert@cs.ucla.edu>
- doc: fix encoding error with UTF-8 characters
- * doc/automake.texi: Specify @documentencoding and
- @documentlanguage, to prevent encoding errors for parts of this
- input file that are UTF-8. This also causes the .info output to
- use curly quotes, which is easier to read though it does assume
- UTF-8 support.
- 2013-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: a typofix, and better word wrapping
- 2013-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: avoid possible implicit "make all" in test-suite.log rule
- This change fixes automake bug#16302.
- * lib/am/check.am ($(TEST_SUITE_LOG)): Avoid running "make $redo_logs"
- when $redo_logs expands to empty, since in that case we are actually
- ending up invoking a full "make all". That shouldn't be required, and
- can cause slowdowns for people implementing their extra "laziness
- wrappers" around check-TESTS (automake bug#16302).
- * NEWS: Update.
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Allow user to extend .PRECIOUS target
- References:
- <http://lists.freedesktop.org/archives/systemd-devel/2013-July/012155.html>
- <http://lists.gnu.org/archive/html/automake/2013-07/msg00011.html>
- * bin/automake.in: Adjust to ensure we handle '.PRECIOUS' the same way
- we do for '.PHONY' and '.MAKE'.
- * lib/Automake/Rule.pm: Likewise.
- * t/precious.sh: New test.
- * t/list-of-tests.mk: Add it.
- * t/phony.sh: Enhance a little while at it.
- * NEWS: Update.
- * THANKS: Likewise.
- Reported-by: Holger Hans Peter Freyther <holger@freyther.de>
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove a couple of extra trailing white spaces
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure on Mac OS X
- This change fixes bug#14706.
- * lib/depcomp2.sh: Also cater to spurious diagnostic from GNU rm,
- not only from Apple's rm.
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: make clear the JAVA primary is frozen
- * doc/automake.texi: Here. The JAVA primary is broken in several ways,
- and will no longer be developed, not even for bug fixes.
- See also automake bugs #9088, #8662 and #8540.
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'install-sh-improvements' into minor
- * install-sh-improvements:
- install-sh: a slightly better diagnostic, and tests enhancements
- install-sh: be stricter in catching invalid usages
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-sh: a slightly better diagnostic, and tests enhancements
- * lib/install-sh: When called with no non-option arguments and the '-t'
- option with an argument that is not an existing directory, have the
- diagnostic output complain about the lack of required arguments rather
- than about the bad argument passed to '-t'.
- * t/install-sh-unittests.sh: Enhance to also check diagnostic printed
- in cases of expected failure.
- 2013-12-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-sh: be stricter in catching invalid usages
- Such usages (which are rejected by GNU install as well) are:
- - options -d and -t used together;
- - argument passed to option -t must be a directory;
- - if there are two or more SOURCEFILE arguments, the
- DESTINATION argument must be a directory.
- Note that we still allow the use of options -d and -T together, by
- making -d take the precedence; this is for compatibility with GNU
- install.
- This change fixes, among other things, automake bug#15376.
- * lib/install-sh: Adjust.
- * t/install-sh-unittests.sh: Enhance.
- * NEWS: Update.
- * THANKS: Add reporter of bug#15376.
- Helped-by: Tobias Hansen <thansen@debian.org>
- 2013-12-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more significant names for some tests
- * t/insh2.sh: Rename...
- * t/dist-install-sh.sh: ... like this.
- * t/instsh.sh: Rename...
- * t/add-missing-install-sh.sh: ... like this.
- * t/instsh2.sh: Rename...
- * t/install-sh-unittests.sh: ... like this.
- * t/instsh3.sh: Rename...
- * t/install-sh-option-C.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2013-12-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: some cosmetic fixes
- * t/instdat.sh: Here.
- * t/instdat2.sh: And here.
- * t/instsh.sh: And here.
- * t/instsh3.sh: And here.
- 2013-12-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more significant names for a test
- * t/install2.sh: Rename...
- * t/dist-with-unreadable-makefile-fails.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2013-12-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'fix-pr11814' and 'drop-perl-tap-driver' into minor
- * fix-pr11814:
- docs: drop a few obsolescent FIXME/TODO comments, and associated text
- testsuite harness: report test exit status in log file
- * drop-perl-tap-driver:
- TAP driver: remove perl implementation (move it into contrib/)
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: drop a few obsolescent FIXME/TODO comments, and associated text
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- testsuite harness: report test exit status in log file
- The exit status of a test should be reported in the test logs, so
- that one can see at a glance whether the test has succeeded or failed,
- without having to look also into the corresponding .trs file.
- This fixes automake bug#11814.
- * lib/test-driver: Also report the test script exit status in the
- test log (as the last line).
- * t/check-exit-status-reported.sh: Test this new behaviour.
- * t/list-of-tests.mk: Add the new test.
- * t/ax/test-lib.sh( am_exit_trap): No longer log the test exit status;
- this has been made redundant by the change to 'test-driver'. While at
- it, fix an imperfect quoting.
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- TAP driver: no need to invoke AC_PROG_AWK directly
- It is already required by AM_INIT_AUTOMAKE anyway.
- * doc/automake.texi: Adjust examples.
- * t/tap-doc2.sh: Adjust documentation-tracking test.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Explicitly tell that the AC_PROG_AWK
- requirement is also needed whenever the TAP driver is used.
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- TAP driver: remove perl implementation (move it into contrib/)
- That implementation was only meant as a standard against which the
- portable awk+shell implementation was to be measured. Now, since
- Automake 1.12, the latter implementation is fully functional and
- already used in the wild, and in fact feature-par with the perl
- implementation. So the perl implementation is now just slowing
- down and complicating our testsuite. Let's move it to 'contrib/'
- (we don't want to remove it, in case someone is actually using it
- in the wild).
- * lib/tap-driver.pl: Move it ...
- * contrib/tap-driver.pl: ... here. While at it, convert quoting
- `like this' to quoting 'like this', and remove an obsolescent FIXME
- comment.
- * lib/Makefile.inc (dist_script_DATA): Drop '%D%/tap-driver.pl'.
- * Makefile.am (EXTRA_DIST): Add 'contrib/tap-driver.pl'.
- * doc/automake.texi: Remove one stray reference to 'tap-driver.pl',
- and reference 'tap-driver.sh' instead, as intended.
- * t/ax/am-test-lib.sh ($am_tap_implementation): Delete definition and
- uses.
- (fetch_tap_driver): Simplify to unconditionally assume the shell+awk
- implementation of the TAP driver is used.
- (get_shell_script): Make more flexible so that it can cater to the
- needs of 'fetch_tap_driver()'.
- * t/tap-bad-prog.tap: Likewise.
- * t/tap-bailout-leading-space.sh: Likewise.
- * t/tap-signal.tap: Likewise.
- * t/tap-test-number-0.sh: Likewise.
- * t/test-driver-cond.sh: Use 'tap-driver.sh' instead of 'tap-driver.pl'.
- * gen-testsuite-part (%test_generators): Do not generate sister tests
- that use the perl TAP driver rather than the shell+awk one.
- * NEWS: Update.
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: stop reporting "new" Automake versioning scheme
- It's actually old news by now.
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- post-release: micro version bump to 1.14.1a devel version
- release: stable micro release 1.14.1
- HACKING: minor clarification
- tests: make install-info-dir.sh print more debugging info
- tests: remove too-brittle test tap-realtime.sh
- maintainer: am-ft: add option to cater to clock skews
- sync: update INSTALL, config.guess and config.sub from upstream
- TAP driver: cosmetic fixes
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump to 1.14.1a devel version
- * configure.ac (AC_INIT): Bump version number to 1.14.1a.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable micro release 1.14.1
- * configure.ac (AC_INIT): Bump version number to 1.14.1.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: minor clarification
- 2013-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make install-info-dir.sh print more debugging info
- With the hope that this will shed more light on bug#14601
- 2013-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove too-brittle test tap-realtime.sh
- * t/tap-realtime.sh: Delete. It has always been brittle, but now
- it's also causing spurious failures when mawk is used as the awk
- implementation in tap-driver.sh (see bug#14601).
- * t/list-of-tests.mk: Adjust.
- 2013-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintainer: am-ft: add option to cater to clock skews
- * maintainer/am-ft: Add option '-S', giving a number of seconds to sleep
- after copying the tarball to the remote system and before unpacking,
- building and testing it. This is to cater to situations where the clock
- of the remote system is skewed (in the past) w.r.t. the clock the local
- system the tarball has been built on.
- 2013-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update INSTALL, config.guess and config.sub from upstream
- 2013-12-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- TAP driver: cosmetic fixes
- * lib/tap-driver.sh: Quote 'like this', not `like this'. Remove an
- obsolete FIXME. Correctly mark another comment as a TODO rather
- than as a FIXME.
- 2013-11-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'modernize-install-sh' into minor
- * modernize-install-sh:
- cosmetics: untabify the install-sh script
- install-sh: assume that "set -f" and "set +f" work...
- install-sh: assume ${var:-value} works as expected
- install-sh: assume 'dirname' is available and working correctly
- 2013-11-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- cosmetics: fix typo in a user-facing message in tests
- automake: account for perl hash order randomization
- tests: avoid use of intervals to capitalize letters
- distcheck: don't allow overriding of --prefix and --srcdir by the user
- tests: expose bug#14991 (relates to 'distcheck')
- 2013-11-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix typo in a user-facing message in tests
- * t/lex-header.sh: A "skip" message in this test, precisely.
- 2013-11-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'fix-pr14991' and 'fix-pr14891' into micro
- * fix-pr14991:
- distcheck: don't allow overriding of --prefix and --srcdir by the user
- tests: expose bug#14991 (relates to 'distcheck')
- * fix-pr14891:
- automake: account for perl hash order randomization
- tests: avoid use of intervals to capitalize letters
- 2013-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: account for perl hash order randomization
- Try to explicitly order the keys of some perl hashes when looping
- on them to do sanity/correctness checks and possibly display warning
- messages; this should ensure a more reproducible output. Not really
- a big deal, but I prefer to keep the order of such output reproducible
- if possible.
- Issue revealed by spurious testsuite failures with perl 5.18, as
- reported in automake bug#14891. See also:
- <http://search.cpan.org/dist/perl-5.18.0/pod/perldelta.pod#Hash_randomization>
- <http://onionstand.blogspot.ie/2012/12/are-you-relying-on-hash-keys-being.html>
- * lib/Automake/Variable.pm (variables): Explicitly order the values of
- the returned Automake::Variable instances.
- (variables_dump): Simplify, using the knowledge that 'variables()' now
- sorts its output.
- * t/preproc-errmsg.sh: Adjust.
- 2013-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid use of intervals to capitalize letters
- It was causing spurious failures with with Solaris 8 'tr'.
- See automake bug#14891.
- * t/test-extensions.sh: Adjust.
- 2013-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: untabify the install-sh script
- * lib/install-sh: Here, plus a couple of related formatting tweaks.
- 2013-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-sh: assume that "set -f" and "set +f" work...
- ... and disable/enable shell globbing, respectively. This is
- mandated by POSIX, and supported even by Solaris 9 /bin/sh (one
- of the most braindead shells we still support).
- * lib/install.sh: Adjust.
- * NEWS: Update.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-sh: assume ${var:-value} works as expected
- The Autoconf manual says it is OK these days.
- * lib/install.sh: Adjust.
- * NEWS: Update.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-sh: assume 'dirname' is available and working correctly
- Really, we no longer care about hosts so outdated/broken to miss
- fundamental utilities like basename or dirname.
- * lib/install.sh: Adjust.
- * NEWS, THANKS: Update.
- Suggested-by: Philipp A. Hartmann <philipp.hartmann@offis.de>
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- distcheck: don't allow overriding of --prefix and --srcdir by the user
- Not through AM_DISTCHECK_FLAGS, nor through DISTCHECK_FLAGS. Apparently,
- some packages got in the habit of relaying all the options passed to the
- original ./configure invocation through to the configure invocations
- in "make distcheck". This was causing problems, because it also passed
- through the original --srcdir and --prefix options.
- Fixes: expose bug#14991 (relates to 'distcheck')
- * lib/am/distdir.am (distcheck): Pass the hard-coded --srcdir and
- --prefix options *after* both the developer-defined options in
- $(AM_DISTCHECK_FLAGS) and the user-defined options in $(DISTCHECK_FLAGS).
- * t/list-of-tests.mk (XFAIL_TESTS): Remove the now-passing test
- 'distcheck-no-destdist-or-srcdir-override.sh'.
- * doc/automake.texi (Checking the Distribution): Update.
- * NEWS: Likewise.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose bug#14991 (relates to 'distcheck')
- * t/distcheck-no-prefix-or-srcdir-override.sh: New, expose the bug.
- * t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add it.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- tests: fix spurious failure when zip is present but unzip is not
- tests: fix spurious failure due to localization issues
- NEWS: update with the changes since v1.14
- docs: correct typos in the fix-timestamp.sh script
- python: byte-compile nobase_*_PYTHON files only once
- cosmetics: typofix in the 'missing' script
- test: avoid false positives in 'cc-no-c-o' script
- test harness: improve catching of usage errors in script 'test-driver'
- tests: fix a spurious failure on NetBSD-current
- am-ft: make the environment available earlier
- NEWS: post-release tweaks (for 1.14.x series)
- tests: avoid a spurious failure on MacOS X 10.6.8
- tests: don't risk hanging on the 'cl' requirement
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure when zip is present but unzip is not
- Fixes automake bug#15181.
- * t/dist-formats.tap (have_compressor): When checking that zip(1), also
- check for unzip(1), otherwise "make distcheck" will be unable to extract
- the zip tarball it creates, which will cause spurious failures. While
- at it, reorganize the existing code a bit.
- * THANKS, NEWS: Update.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to localization issues
- Fixes automake bug#15237.
- * t/autohdr-subdir-pr12495.sh: Ensure make is run in the C locale, so that
- we can expect error messages in English when grepping its output.
- * THANKS, NEWS: Update.
- 2013-10-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: update with the changes since v1.14
- 2013-10-29 Peter Breitenlohner <peb@mppmu.mpg.de> (tiny change)
- docs: correct typos in the fix-timestamp.sh script
- * doc/automake.texi: Here. The original version of this example script
- makes no sense at all, using 'configure' instead of the intended 'touch'
- in few key places.
- 2013-10-28 Benoit Sigoure <tsunanet@gmail.com> (tiny change)
- python: byte-compile nobase_*_PYTHON files only once
- * lib/am/python.am: Here. Byte-compiling was occurring inside of
- a loop, causing an O(n^2) number of byte-compilations instead of
- O(n).
- 2013-10-28 Václav Zeman <vhaisman@gmail.com> (tiny change)
- cosmetics: typofix in the 'missing' script
- * lib/missing: Here, in a message printed to the user.
- * THANKS: Update.
- 2013-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr14911' into micro
- * fix-pr14911:
- test: avoid false positives in 'cc-no-c-o' script
- 2013-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-half-pr14760' into micro
- * fix-half-pr14760:
- tests: fix a spurious failure on NetBSD-current
- 2013-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- test: avoid false positives in 'cc-no-c-o' script
- Fixes automake bug#14911.
- * t/ax/cc-no-c-o.in: Be more careful in determining whether both the
- '-c' and '-o' options have been passed on the command line to the
- compiler. In particular, do not spuriously complain in the face of
- options like '-compatibility_version' or '-current_version' (seen on
- Mac OS X 10.7).
- * THANKS: Update.
- 2013-07-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- test harness: improve catching of usage errors in script 'test-driver'
- Fixes automake bug#14840.
- * lib/test-driver: Catch and report usage errors where the caller has
- forgotten to specify one of the mandatory options (--test-name,
- --log-file, --trs-file) or has not passed any non-option argument.
- Also, be sure to work correctly even when no '--' special argument
- is passed to separate option from non-options arguments.
- * THANKS: Update.
- 2013-07-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure on NetBSD-current
- Reported in automake bug#14760.
- * tests/silent-custom.sh: Be prepared to handle creative
- quoting in the output of the shell run for the make recipes
- when the shell traces are active ("set -x").
- 2013-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- am-ft: make the environment available earlier
- So that, with a PATH that is updated earlier, we can find the 'xz'
- program even on systems where it isn't in the default PATH.
- * maintainer/am-ft: Adjust accordingly.
- 2013-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: post-release tweaks (for 1.14.x series)
- 2013-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure on MacOS X 10.6.8
- Fixes automake bug#14706.
- * t/depcomp2.sh: Strip, from the redirected ./configure stderr, the
- possible error message "rm: conftest.dSYM: is a directory", generated
- by cleanup code that doesn't cater to the existence of *.dSYM
- directories sometimes created by the compiler on MacOS X. This
- "massaging" of ./configure stderr is legitimate, since the spurious
- error message is due not to automake-related code, but to a know
- buglet/limitation of either Autoconf or Mac OS X bundles gcc:
- <http://lists.gnu.org/archive/html/bug-autoconf/2007-11/msg00017.html>
- Actually, from that link it appears that the original Autoconf issue
- had been fixed, but it must have been re-introduced in the meantime :-(
- 2013-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't risk hanging on the 'cl' requirement
- On the GNU/Linux boxes of some users that run our testsuite there
- is a '/usr/local/bin/cl' executable, from the IRAF package:
- <http://iraf.noao.edu/>
- The test 'compile4.sh' (and other tests) try to invoke the 'cl'
- command to check whether it's a Microsoft compiler; the IRAF cl
- is an interactive program, so it hangs on such invocation. In
- conclusion, the testsuite hangs for those users which have the
- IRAF cl early in PATH.
- Fix the issue by redirecting the input of cl from /dev/null when
- invoking it, which is enough to prevent the cl program from IRAF
- from hanging, and should have no effect on the behaviour of the
- Microsoft compiler.
- This change fixes automake bug#14707.
- * t/ax/am-test-lib.sh (require_tool): Adjust the handling of
- the 'cl' requirement.
- 2013-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into minor
- * micro:
- post-release: micro version bump (1.14.0a)
- 2013-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump (1.14a)
- * configure.ac: Bump version: 1.14 -> 1.14a
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump (1.14.0a)
- * configure.ac: Bump version: 1.14 -> 1.14.0a
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into micro
- * maint:
- release: stable minor release 1.14
- NEWS: one more minor fixlet
- maint: port check-minimal-autoconf to VPATH builds
- tests: avoid spurious failures in Linux -> MinGW cross-compilation mode
- tests: simplify checks for some expected variables values in Makefiles
- NEWS: improve and update wording
- tests: fix/improve few heading comments
- coverage: new test on Texinfo @include support
- tests: tighten a grepping check
- tests: more significant names for some tests
- rename-tests: rework some code for clarity and safety
- tests: cosmetic changes in t/extra-sources.sh
- rename-tests: inform the user about the pre-filled commit msg
- typofix: in comments in 'maintainer/rename-tests'
- rename-tests: also "git add" list-of-tests.mk
- tests: rename t/exsource.sh -> t/extra-sources.sh
- tests: some improvements to Gettext tests
- maint: version bump after beta release 1.13b
- release: beta release 1.13b (will become 1.14)
- automake: assume we can always pass '-o' to the C compiler
- NEWS: fix typo
- NEWS: on assuming "rm -f" without arguments work
- docs: AM_PROG_CC_C_O: correct imprecise statements about it
- NEWS: document deprecation of 'shar' and 'compress' dist formats
- m4: rename minuso.m4 -> prog-cc-c-o.m4
- tests: some tests make no sense if "$CC -c -o" doesn't work
- AM_PROG_CC_C_O: don't rely on AC_PROG_CC_C_O, re-implement similar logic
- compile: rewrite AC_PROG_CC with AM_PROG_CC_C_O contents
- tests: avoid few lingering $MAKE redirections
- tests: fix a spurious failure on NetBSD 5.1
- texi: build version.texi and stamp-vti in srcdir
- tests: fix a botched heading comment
- tests: fix another spurious with FreeBSD make
- tests: fix a spurious failure with FreeBSD make
- tests: remove remaining exec bits ('maint' branch)
- PLANS: subdir-objects: various updates
- THANKS: update Akim's e-mail address
- tests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o'
- build: be more respectful of user-specified verbosity
- check-cc-no-c-o: unify initializations in a single place
- check-cc-no-c-o: avoid a spurious failure
- build: fixup for building in a VPATH setup
- Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O
- compile: avoid AC_PROG_CC messy rewrite
- options: tiny simplification in dealing with incompatible versions
- options: try to report as much errors as possible
- refactor: fix few "inverted boolean" usages
- options: better name for an internal function
- options: more consistency in use of return statuses to report errors
- options: tiny simplification in dealing with erroneous opts
- options: consistently use return statuses to report errors
- options: re-enable some sanity checks
- THANKS: update Eric Blake's e-mail address
- NEWS: typofix
- news: document new 'subdir-objects' warning
- PLANS: one minor fixlet (mostly cosmetic)
- PLANS: we have already dropped support for split info files in master
- NEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended
- PLANS: fix reference to non-existent 'next' branch
- PLANS: fix botched version reference
- maintcheck: fix two references to old location of aclocal and automake
- dist: deprecated shar and tar+compress formats
- am: prefer a shorter idiom where possible
- maint: re-run "make update-copyright" ...
- tests: avoid spurious failure with older flex (2.5.4)
- build: move automake and aclocal in 'bin' subdir
- build: break up monolithic Makefile.am in subdir-specific fragments
- maint branch: we are going to become Automake 1.14
- tests: typofixes in comments in t/preproc-c-compile.sh
- tests: remove bashism from a test
- tests: rename some with more descriptive names
- typofix: in comments in t/extra2.sh
- tests: fix botched cross-reference in a heading comment
- automake: refactoring: factor out common cpp-like flags
- NEWS (mint): reflect new Automake versioning scheme
- maintcheck: avoid spurious failure
- perl: perl subroutine prototypes are problematic, don't use them
- maint: more adjustments to the new versioning scheme
- cosmetics: fix some "docstring-like" comments in automake
- style: call perl functions 'like_this()', not '&like_this()'
- preproc: enhance and extend tests
- preproc: add support for relative names in included fragments
- maint: use more perl subroutines prototypes in the automake script
- build: auto-generate perl subroutines prototypes for automake and aclocal
- refactor: rip module Automake::Language out of automake script
- tests: more information about Lex and Yacc programs
- lint: fix spurious failure for 'sc_rm_minus_f' syntax check
- maint: bump version 1.13.1a -> 1.13.2a
- plans: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
- init.m4: add probe to check "rm -f" without args work
- subdir-objects: complain if it isn't enabled
- plans: update w.r.t. latest changes
- ywrap: remove an obsolete FIXME comment
- ywrap: style fixes (no semantic change intended)
- convenience: "make lint" as an alias for "make maintainer-check"
- docs: typofix in manual
- coverage: using multiple lexers in a single program
- tests: remove most uses of the AM_PROG_CC_C_O obsolete macro
- coverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors
- INSTALL: update copyright years
- ithreads: use runtime (not configure time) detection of perl threads
- copyright: add few missing copyright notices
- maint: files in PLANS are to be exempted from copyright notice
- maint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable
- copyright: update some copyright years
- compile: use 'compile' script when "-c -o" is used with losing compilers
- HACKING: suggest more checks before releasing
- tests: can fake a compiler not grasping "-c -o" -- globally in all tests
- sync: update files from upstream with "make fetch"
- typofix: in comments in GNUmakefile
- Rename 'maint/' -> 'maintainer/', for Git's sake
- HACKING: minor typofix
- HACKING: bug-tracker, the PLANS directory, and how to plan "big" changes
- HACKING: rewindable branches should live in the 'experimental/*' namespace
- HACKING: fixlets about git branch rewinding policy
- HACKING: commit messages are not to follow GCS ChangeLog rules too strongly
- HACKING: "detailed explanation" in commit messages is almost mandatory
- HACKING: we use "merge --log" even when merging master
- HACKING: typofix
- depend2.am: fix comments on verbosity of compilation rules
- depend2.am: improve comments a little
- plans: automake 1.14 is to assume "rm -f" with no args is OK
- plans: we want to active subdir-objects unconditionally in automake 1.14
- tests: adjust stale references to old test names
- tests: rename the last aclocal test with dumb name
- tests: fix an old botched change to an aclocal test
- tests: fix some botched inter-test references in heading comments
- coverage: compile rules used "-c -o" also with losing compilers
- texi: remove extra verbosity in creation of dirstamp directory
- coverage: user can avoid distributing '.info' pages
- plans: add some on-going plans (already registered on the bug tracker)
- docs: mention dist-hook help for EXTRA_DIST
- texi: remove workaround for older Texinfo (4.1)
- NEWS: improve wordings in entry deprecating suffix-less info files
- build: don't enable 'color-tests' automake option explicitly
- build: enable all warnings as fatal in our own build system
- texi: Texinfo sources and CLEANFILES definition should co-exist peacefully
- tests: make two new test executable
- runtest: better command line API
- tests: move runtest.in away from the top-lever directory
- maint: move more maintainer files in the 'maint/' subdir
- plans: add the "PLANS" directory
- tests: more significant names for some tests
- maint: add some of my maintainer-specific scripts
- texi: deprecate hack about info files in CLEANFILES variables
- texi: info files can be generated in the builddir
- 2013-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable minor release 1.14
- * configure.ac (AC_INIT): Bump version number to 1.14.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: one more minor fixlet
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: port check-minimal-autoconf to VPATH builds
- * maintainer/maint.mk (check-minimal-autoconf): Here.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures in Linux -> MinGW cross-compilation mode
- * t/ccnoc-deps.sh: Here.
- * t/preproc-demo.sh: And here.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: simplify checks for some expected variables values in Makefiles
- Do so by using our custom 'is' auxiliary script rather than grepping
- the output from make. This is more natural, more robust, and often
- shorter to write.
- Unfortunately, we can't do that in all cases: sometimes we really need
- to match the content of a variable against a regular expressions, and
- we can't know nor are interested in its exact value.
- This is basically a follow-up on commit v1.11-1830-g96401cb of
- 2012-02-08 (tests: better way to compare lists in Makefile rules).
- * t/subst-no-trailing-empty-line.sh: Adjust.
- * t/pluseq10.sh: Likewise.
- * t/check5.sh: Likewise, and enhance a little while at it.
- * t/check7.sh: Likewise.
- * t/exeext.sh: Likewise.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: improve and update wording
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix/improve few heading comments
- * t/lflags.sh: Here.
- * t/lflags-cxx.sh: And here.
- * t/yflags.sh: And here.
- * t/yflags-cxx.sh: And here.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: new test on Texinfo @include support
- Backported from the Automake-NG testsuite.
- * t/txinfo-include.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: tighten a grepping check
- * t/yflags-force-override.sh: Here, by being sure to correctly
- match an expected literal dot.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more significant names for some tests
- * t/extra2.sh: Rename...
- * t/extra-sources-no-spurious.sh: ... like this.
- * t/yflags2.sh: Rename...
- * t/yflags-cxx.sh: ... like this.
- * t/lflags2.sh: Rename...
- * t/lflags-cxx.sh: ... like this.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- rename-tests: rework some code for clarity and safety
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: cosmetic changes in t/extra-sources.sh
- * t/extra-sources.sh: Do not create unneeded C sources. Add
- trailing ':' command.
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- rename-tests: inform the user about the pre-filled commit msg
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in comments in 'maintainer/rename-tests'
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- rename-tests: also "git add" list-of-tests.mk
- 2013-06-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename t/exsource.sh -> t/extra-sources.sh
- * t/exsource.sh: Rename ...
- * t/extra-sources.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2013-06-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'gettext-tests' into maint
- * gettext-tests:
- tests: some improvements to Gettext tests
- 2013-06-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: some improvements to Gettext tests
- Mostly to bring them more in sync with the ones in Automake-NG.
- See also commit v1.12.2-824-g5468d52 of 2012-08-10([ng] tests:
- reorganize gettext tests a bit) in Automake-NG.
- * t/gettext.sh: Rename ...
- * t/gettext-basics.sh: ... like this, enhance a little, and
- move checks on requirement of 'config.rpath' out into ...
- * t/gettext-config-rpath.sh: ... into this new test, and move
- checks about PR/381...
- * t/gettext-pr381.sh: ... into this new test.
- * t/gettext2.sh: Rename ...
- * t/gettext-external-pr338.sh: ... like this, and enhance a
- little.
- * t/gettext3.sh: Rename ...
- * t/gettext-intl-subdir.sh: ... like this, and add trailing
- ':' command.
- 2013-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- post-release: micro version bump (1.13.4a)
- release: stable micro release 1.13.4
- sync: update config.guess
- 2013-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump (1.13.4a)
- * configure.ac: Bump version: 1.13.4 -> 1.13.4a
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable micro release 1.13.4
- * configure.ac (AC_INIT): Bump version number to 1.13.4.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update config.guess
- * lib/config.guess: This. Actually, only the timestamp has been
- updated (apparently, it was mistakenly not updated in the previous
- real change to the script).
- 2013-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- THANKS: update e-mall address for Ralf Corsepius
- lang, suffix rules: don't require C stuff needlessly
- tests: expose automake bug#14560
- 2013-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr14560' into micro
- * fix-pr14560:
- lang, suffix rules: don't require C stuff needlessly
- tests: expose automake bug#14560
- 2013-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- THANKS: update e-mall address for Ralf Corsepius
- 2013-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- lang, suffix rules: don't require C stuff needlessly
- This change fixes automake bug#14560: when two or more user-defined suffix
- rules were present in a single Makefile.am, automake would needlessly
- include definition of some make variables related to C compilation in the
- generated Makefile.in.
- * automake.in (handle_languages): Fix logic to decide whether or not to
- include definitions of C compilation related variables in the generated
- Makefile.in: instead of doing so when two or more user-defined suffix
- rules are seen (which is a completely bogus criterion), do so when two
- or more compiled languages are used.
- * lib/Automake/Rule.pm (suffix_rules_count): Remove as no longer used.
- (@EXPORT): Adjust.
- * t/list-of-tests.mk (XFAIL_TESTS): No longer list the test script
- 'suffix-extra-c-stuff-pr14560.sh', which now passes.
- * NEWS: Update.
- 2013-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose automake bug#14560
- Automake needlessly generates definition of make variables related
- to C compilation when two or more user-defined suffix rules are
- present in a single Makefile.am.
- * t/suffix-extra-c-stuff-pr14560.sh: New test, exposing the bug.
- This test is still xfailing.
- * t/no-extra-c-stuff.sh: New test, check for a potential related
- regression. This regression is not actually present here (so this
- test passes), but it still took place in our first attempt at
- fixing bug#14560 -- so this test has proven to be actually useful.
- * t/no-extra-makefile-code.sh: Improve comments, and tighten the
- grepping checks a little.
- * t/list-of-tests.mk (handwritten_TESTS): Add the new tests.
- (XFAIL_TESTS): Add the new xfailing test.
- 2013-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- maint: add a missing copyright notice
- sync: update config.guess from upstream
- tests: expose automake bug#13928
- comments: fix some out-of-sync refs to test scripts
- tests: expose automake bug#13940
- 2013-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: add a missing copyright notice
- * t/ax/deltree.pl: Here. Issue revealed by "make update-copyright".
- 2013-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update config.guess from upstream
- * lib/config.guess: Here.
- 2013-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose automake bug#13928
- * t/subobj-indir-pr13928.sh: New test, still xfailing.
- * t/subobj-vpath-pr13928.sh: Likewise.
- * t/list-of-tests.mk (XFAIL_TESTS, handwritten_TESTS): Update.
- 2013-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- comments: fix some out-of-sync refs to test scripts
- Those script has been renamed since those comments where written.
- * lib/Automake/Rule.pm: Adjust.
- * lib/am/distdir.am: Likewise.
- 2013-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose automake bug#13940
- * t/override-conditional-pr13940.sh: New test, still xfailing.
- * t/list-of-tests.mk (XFAIL_TESTS, handwritten_TESTS): Add it.
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- configure: remove an obsolete TODO comment
- post-release: micro version bump (1.13.3a)
- release: stable micro release 1.13.3
- typofix: fix grammaro in comments in t/tags-pr12372.sh
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: remove an obsolete TODO comment
- * configure.ac: Here.
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump (1.13.3a)
- * configure.ac: Bump version: 1.13.3 -> 1.13.3a
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable micro release 1.13.3
- * configure.ac (AC_INIT): Bump version number to 1.13.3.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-06-03 Peter Rosin <peda@lysator.liu.se>
- typofix: fix grammaro in comments in t/tags-pr12372.sh
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- NEWS: minor fixlets, re-wording, and better text wrapping
- tests: slightly stricter checks in t/cxx-demo.sh
- tests: fix spurious failure when 'etags' program is Exuberant Ctags
- tests: fix spurious failure due to missing sleeps
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: minor fixlets, re-wording, and better text wrapping
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: slightly stricter checks in t/cxx-demo.sh
- This is a follow-up to the commit fixing automake bug#14493.
- * t/cxx-demo.sh: Also check that the built program returns the
- correct (i.e., zero) exit status when run. And improve comments
- a little while at it.
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure when 'etags' program is Exuberant Ctags
- Fixes automake bug#14517.
- * t/tags-pr12372.sh: If the 'etags' program in use supports the
- '--langmap' option, use it. That is required to avoid spurious
- failures with Exuberant Ctags (at least version 5.8), which by
- default do not generate any tags for file extensions it doesn't
- recognize.
- 2013-06-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to missing sleeps
- Fixes automake bug#14528.
- * THANKS: Give credit to that bug's original reporter.
- * t/remake-configure-dependencies.sh: Add few missing '$sleep'
- invocations. I thought that the sleeps implicit in the configure
- invocation were enough, but they were not, actually. Here is what
- can happen:
- 1. The config.status script is generated by a configure run.
- 2. ./config.status and make are run.
- 3. The 'print-version' script is modified.
- 4. Since that script is listed in $(CONFIGURE_DEPENDENCIES),
- autoconf is re-run.
- 5. On a fast-enough machine, the three steps 2-4 above, even
- combined, might have taken less than a second to run;
- 6. If the filesystem doesn't have a sub-second timestamp
- resolution, that means the newly-generated configure has
- the same timestamp of the old config.status;
- 7. So, config.status is not re-run, and the Makefiles are
- not updated.
- 8. Spurious failure!
- So we really need more explicit sleeps.
- 2013-05-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release 1.13b
- * configure.ac (AC_INIT): Bump version number to 1.13c.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-05-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.13b (will become 1.14)
- * configure.ac (AC_INIT): Bump version number to 1.13b.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- maint: support new Automake versioning scheme in tagging/uploading rules
- announcement: can be generated from development snapshots as well
- announcement: can be generated from development snapshots as well
- announcement: be less strict in the paring of NEWS
- maint: version bump after beta release 1.13.2b
- release: beta release 1.13.2b (will become 1.13.3)
- sync: update config.guess from upstream
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: support new Automake versioning scheme in tagging/uploading rules
- * maint.mk (base_version_rx: Drop.
- (rx-0, rx-1): New.
- (stable_major_version_rx, stable_minor_version_rx, beta_version_rx):
- Update.
- (stable_micro_version_rx, alpha_version_rx: New.
- (determine_release_type): Adjust.
- (web-manual-update): Likewise.
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- announcement: can be generated from development snapshots as well
- And not only from checkouts corresponding exactly from a beta
- or stable release. That was only getting in the way of proper
- testing for the 'announcement' recipe.
- * maint.mk (determine_release_type): If the make variable
- DEVEL_SNAPSHOT is set, do not error out if the current version
- denotes a development snapshot (e.g., "1.13.2c" or "1.99a").
- (announcement): Relax, by also accepting to run from development
- snapshots, not only stable or beta releases. Do so by defining
- the target-specific variable DEVEL_SNAPSHOT to "yes".
- (print-release-type): Micro enhancement while at it.
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- announcement: can be generated from development snapshots as well
- And not only from checkouts corresponding exactly from a beta
- or stable release. That was only getting in the way of proper
- testing for the 'announcement' recipe.
- * maint.mk (determine_release_type): If the make variable
- DEVEL_SNAPSHOT is set, do not error out if the current version
- denotes a development snapshot (e.g., "1.13.2c" or "1.99a").
- (announcement): Relax, by also accepting to run from development
- snapshots, not only stable or beta releases. Do so by defining
- the target-specific variable DEVEL_SNAPSHOT to "yes".
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- announcement: be less strict in the paring of NEWS
- So that the file generated by "make announcement" is correct also
- for beta releases.
- * maint.mk (announcement): Relax the awk program processing NEWS a
- little.
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release 1.13.2b
- * configure.ac (AC_INIT): Bump version number to 1.13.2c.
- * m4/amversion.m4: Likewise (autoupdated by "make bootstrap").
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.13.2b (will become 1.13.3)
- * configure.ac (AC_INIT): Bump version number to 1.13.2b.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update config.guess from upstream
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- NEWS: document recent testsuite fixes (MinGW/MSYS related)
- depcomp: avoid trailing backslash in depfile for depmode=msvc7
- tests: prune some weed in a non-POSIX test
- tests: avoid a spurious failure on MSYS
- 2013-05-30 Peter Rosin <peda@lysator.liu.se>
- automake: assume we can always pass '-o' to the C compiler
- It is assumed that we can pass -c -o to the C compiler, so remove
- some special casing and always do that.
- This change is similar in spirit to v1.13.1d-217-g7299c4d "depend: assume
- we can always pass '-o' to the C compiler"
- This change also happen to fix a testsuite failure
- (t/silent-many-languages.sh) when mixing MSVC and GNU fortran, which
- have different default object file extensions (.obj vs. .o). This
- difference in object file extension is not handled well and caused
- Automake to look for MSVC objects with .o extension. Always using -o
- makes MSVC create .o object files and linking succeeds. Not that
- anybody recommends mixing toolchains or anything.
- * bin/automake.in (handle_languages): Remove conditional modification
- of 'output_flag' entry for 'c'.
- (register_language ('name' => 'c')): Add 'output_flag' entry set to '-o'.
- 2013-05-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document recent testsuite fixes (MinGW/MSYS related)
- 2013-05-30 Peter Rosin <peda@lysator.liu.se>
- depcomp: avoid trailing backslash in depfile for depmode=msvc7
- When compiling a file without any dependencies (no #includes), the
- msvc7 depmode (and consequently msvc7msys) generates a depfile
- Makefile fragment with the last line ending with a backslash. This
- is less robust than needed.
- Fixes automake bug#14501.
- * lib/depcomp (msvc7): Finish off the depfile Makefile fragment with
- an empty line.
- (scriptversion): Update.
- 2013-05-29 Peter Rosin <peda@lysator.liu.se>
- Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prune some weed in a non-POSIX test
- Fixes automake bug#14494.
- * t/distcheck-pr10470.sh: Make sure the test-driver is installed. Adjust
- to run_make changes. Adjust grep pattern to match new output.
- 2013-05-29 Peter Rosin <peda@lysator.liu.se>
- tests: avoid a spurious failure on MSYS
- Fixes automake bug#14493.
- * t/cxx-demo.sh: Strip CR characters from the program output.
- 2013-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- t/README: document "run_make", discourage "make -e"
- cosmetics: tiny whitespace fixlets
- tests: avoid a spurious failure with MSVC
- tests: avoid a spurious failure on non-POSIX systems
- 2013-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- t/README: document "run_make", discourage "make -e"
- 2013-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: tiny whitespace fixlets
- 2013-05-29 Peter Rosin <peda@lysator.liu.se>
- tests: avoid a spurious failure with MSVC
- Fixes automake bug#14498.
- * t/yacc-bison-skeleton.sh: inline was not standardized prior to C99.
- 2013-05-29 Peter Rosin <peda@lysator.liu.se>
- tests: avoid a spurious failure on non-POSIX systems
- Fixes automake bug#14495.
- * t/lex-header.sh: Make sure unistd.h isn't included.
- 2013-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- NEWS: fix typos and grammaros
- NEWS: document fix for bug#14441
- Automake::Rule: consistently prepend underscore to private variables
- Automake::Rule: rename: suffix_rule() -> next_in_suffix_chain()
- Automake::Rule: adjust comments and POD according to previous changes
- Automake::Rule: make private variables lexically scoped
- suffix rules: better distinction between builtin and user-derived
- Automake::Rule: expose suffix rules as a function, not a scalar
- tests: expose automake bug#14441
- 2013-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix typos and grammaros
- Reported-by: Peter Rosin <peda@lysator.liu.se>
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'suffix-rules-work' into micro
- * suffix-rules-work:
- NEWS: document fix for bug#14441
- Automake::Rule: consistently prepend underscore to private variables
- Automake::Rule: rename: suffix_rule() -> next_in_suffix_chain()
- Automake::Rule: adjust comments and POD according to previous changes
- Automake::Rule: make private variables lexically scoped
- suffix rules: better distinction between builtin and user-derived
- Automake::Rule: expose suffix rules as a function, not a scalar
- tests: expose automake bug#14441
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix typo
- Reported-by: Peter Rosin <peda@lysator.liu.se>
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- NEWS: report recent documentation fix about AM_PROG_MKDIR_P
- NEWS: Automake 2.0 will assume "rm -f" without args work
- NEWS: fix a couple of typos in older entries
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: report recent documentation fix about AM_PROG_MKDIR_P
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: Automake 2.0 will assume "rm -f" without args work
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: on assuming "rm -f" without arguments work
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix a couple of typos in older entries
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- docs: AM_PROG_MKDIR_P: will not be removed in 2.0 release of Automake
- maint: sanity checks in 'check-minimal-autoconf' convenience target
- maint: test minimal supported autoconf through convenience target
- maint: install minimal supported autoconf through convenience targets
- test-lib: typofix in comments
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: AM_PROG_MKDIR_P: will not be removed in 2.0 release of Automake
- See the 'PLANS/obsolete-removed/am-prog-mkdir-p.txt' file in the 'maint'
- branch (as of commit v1.13.2-201-gd99e3f3) for details.
- * doc/automake.texi: Adjust.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: AM_PROG_CC_C_O: correct imprecise statements about it
- * doc/automake.texi: Here.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: sanity checks in 'check-minimal-autoconf' convenience target
- * maint.mk (check-minimal-autoconf): Here, check that autoconf seems
- to be locally installed, and that such local install refers to the
- correct expected minimal version.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: test minimal supported autoconf through convenience target
- * maint.mk (check-minimal-autoconf): New convenience target.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: install minimal supported autoconf through convenience targets
- To make testing of Automake in conjunction with it easier and more
- reproducible. It might be nice to also have convenience targets to
- actually automatically run the Automake testsuite with such autoconf
- version, but that is left to later patches.
- * configure.ac: AC_SUBST the definition of $required_autoconf_version.
- * maint.mk (WGET): Move definition earlier.
- (gnu-ftp, ac-v, ac-n, ac-p, ac-t, ac-l, ac-d): New auxiliary variables.
- (fetch-minimal-autoconf, build-minimal-autoconf): New convenience
- targets.
- * .gitignore: Update.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document fix for bug#14441
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Automake::Rule: consistently prepend underscore to private variables
- * lib/Automake/Rule.pm (%suffix_rules): Rename ...
- (%_suffix_rules): ... like this.
- (%suffix_rules_builtin): Rename ...
- (%_suffix_rules_builtin): ... like this.
- (reset, next_in_suffix_chain, register_suffix_rule, suffix_rules_count):
- Adjust.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Automake::Rule: rename: suffix_rule() -> next_in_suffix_chain()
- * lib/Automake/Rule.pm (suffix_rule): Rename ...
- (next_in_suffix_chain): ... like this.
- (%suffix_rules): Adjust comments.
- (@EXPORT): Adjust.
- * automake.in (derive_suffix): Likewise.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Automake::Rule: adjust comments and POD according to previous changes
- * lib/Automake/Rule.pm: Here, in several places.
- * automake.in (register_language): And a tiny adjustment here as well.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Automake::Rule: make private variables lexically scoped
- * lib/Automake/Rule.pm (@_known_extensions_list): This one.
- (@_suffixes): And this one.
- (%_rule_dict): And this one.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- suffix rules: better distinction between builtin and user-derived
- Fixes automake bug#14441.
- * lib/Automake/Rule.pm ($_suffix_rules_default): Remove, superseded by ...
- (%suffix_rules_builtin): ... this lexical variable.
- ($suffix_rules): Remove, superseded by ...
- (%suffix_rules): ... this lexical variable.
- (suffix_rules, suffix_rules_count): Adjust.
- (register_suffix_rule): Update '%suffix_rules_builtin' rather than
- '%suffix_rules' if the location (as passed by the '$where' argument)
- is an "internal" one (doesn't come from user-provided Makefile.am).
- (reset): Simplify resetting of '%suffix_rules' to the default ones
- accordingly.
- * t/list-of-tests.mk (XFAIL_TESTS): Drop test 'suffix-custom-pr14441.sh'.
- 2013-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Automake::Rule: expose suffix rules as a function, not a scalar
- This is just a preparatory refactoring in view of future patches.
- No semantic change is intended.
- * lib/Automake/Rule.pm ($suffix_rules): Turn from a package-level
- variable to a lexical variable.
- (suffix_rule): New function, expose the details of $suffix_rules
- that are actually required by code outside thus modules --- and
- only those details, no more.
- (@EXPORT): Adjust.
- * automake.in (derive_suffix): Likewise.
- 2013-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose automake bug#14441
- * t/suffix-custom-pr14441.sh: New test, still failing.
- * t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add it.
- Helped-by: Felix Salfelder <felix@salfelder.org>
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test-lib: typofix in comments
- * t/ax/am-test-lib.sh: In here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: remove an "unworthy" FIXME comment
- tests: remove one obsolete workaround for long-lifted limitations
- tests: couple of minor tweaks in demo tests in C++ and Libtool
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an "unworthy" FIXME comment
- * t/location.sh: Here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove one obsolete workaround for long-lifted limitations
- * t/silent-many-languages.sh: Here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: couple of minor tweaks in demo tests in C++ and Libtool
- * t/cxx-lt-demo.sh: Here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: adjust or remove some obsolete comments
- tests: remove some useless 'unset' of variables
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document deprecation of 'shar' and 'compress' dist formats
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'prog-cc-c-o-work' into maint
- * prog-cc-c-o-work:
- tests: some tests make no sense if "$CC -c -o" doesn't work
- AM_PROG_CC_C_O: don't rely on AC_PROG_CC_C_O, re-implement similar logic
- compile: rewrite AC_PROG_CC with AM_PROG_CC_C_O contents
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: rename minuso.m4 -> prog-cc-c-o.m4
- The new name is much clearer.
- * m4/minuso.m4: Rename ...
- * m4/prog-cc-c-o.m4: ... like this.
- * m4/Makefile.in (dist_automake_DATA): Adjust.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: adjust or remove some obsolete comments
- * t/ax/am-test-lib.sh: Here.
- * t/distcheck-configure-flags.sh: And here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove some useless 'unset' of variables
- They are redundant, now that we no longer call "make -e".
- * t/javaflags.sh: Don't unset JAVAC.
- * t/lflags.sh: Don't unset LEX.
- * t/lflags2.sh: Likewise.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: avoid a couple of extra sleep with GNU make
- NEWS: document testsuite work for 1.13.3
- lint: remove a couple of obsolete syntax checks
- lint: cosmetics: use #-comments, not ##-comments
- lint: cosmetics: some reordering
- lint: recipes of syntax check require GNU grep; ensure it is used
- lint: better name for a syntax check
- tests: rename $am_make_rc_got -> $am_make_rc
- tests: ensure $required is not set too late
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a couple of extra sleep with GNU make
- They are only required by BSD make in order to avoid spurious failures.
- * t/deleted-am.sh: Here.
- * t/parallel-tests-recheck-pr11791.sh: And here.
- 2013-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document testsuite work for 1.13.3
- 2013-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: remove a couple of obsolete syntax checks
- * syntax-checks.mk (sc_obsolete_requirements_rules): Remove
- definition of this variable.
- (modern-requirement.texi2dvi-o): Likewise.
- (modern-requirement.makeinfo-html): Likewise.
- ($(sc_obsolete_requirements_rules)): Remove these obsolete
- syntax checks.
- 2013-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: cosmetics: use #-comments, not ##-comments
- * syntax-checks.mk: Here. This makes sense because this file is
- not meant to be processed by Automake, so the ##-comments are not
- treated specially.
- 2013-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: cosmetics: some reordering
- * syntax-checks.mk: Here.
- 2013-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: recipes of syntax check require GNU grep; ensure it is used
- * syntax-checks.mk (sc_sanity_gnu_grep): New.
- ($(syntax_check_rules)): Depend on it.
- 2013-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: better name for a syntax check
- * syntax-checks.mk (sc_tests_make_without_am_makeflags): Rename ...
- (sc_make_without_am_makeflags): ... like this.
- (syntax_check_rules): Adjust.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename $am_make_rc_got -> $am_make_rc
- The latter is more natural More importantly, I keep misspelling
- the former over and over.
- * t/ax/am-test-lib.sh (run_make): Update.
- * t/ax/tap-summary-aux.sh: Adjust.
- * t/ax/testsuite-summary-checks.sh: Likewise.
- * t/parallel-tests-exit-statuses.sh: Likewise.
- * t/parallel-tests-extra-programs.sh: Likewise.
- * t/parallel-tests-fd-redirect-exeext.sh: Likewise.
- * t/parallel-tests-fd-redirect.sh: Likewise.
- * t/parallel-tests-fork-bomb.sh: Likewise.
- * t/parallel-tests-no-spurious-summary.sh: Likewise.
- * t/parallel-tests-recheck-pr11791.sh: Likewise.
- * t/parallel-tests-reset-term.sh: Likewise.
- * t/tap-signal.tap: Likewise.
- * t/test-driver-acsubst.sh: Likewise.
- * t/test-driver-cond.sh: Likewise.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: some tests make no sense if "$CC -c -o" doesn't work
- So just skip them, to avoid spurious failures when running
- "make check-no-cc-c-o".
- * t/ax/am-test-lib.sh (require_tool): New requirement '-c-o'.
- * t/subobj10.sh ($required): Add it.
- * gen-testsuite-part (%depmodes): Adjust so that tests that
- use 'makedepend' will be skipped if the compiler is being
- forced not to grasp "-c -o".
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- AM_PROG_CC_C_O: don't rely on AC_PROG_CC_C_O, re-implement similar logic
- ** Theoretical problems of AC_PROG_CC_C_O:
- Both cc and $CC are checked to see if they support the '-c' and '-o'
- options together.
- This behaviour is highly inconsistent with that of the other macros
- related to C compiler checks -- which test only $CC.
- It can also cause unwarranted uses of the 'compile' script on systems
- where the default 'cc' is inferior, but the user is compiling with a
- proper, different compiler (e.g., gcc).
- ** Practical problems with our previous implementation of C support m4
- macros in Automake:
- - AM_PROG_AR must now be called *before* AC_PROG_CC; this wasn't the
- case before, and it turns out there are packages in the wild that
- relied on the old behaviour.
- - The cross-referenced requirements and macro rewrites juggled among
- AC_PROG_CC, AC_PROG_CC_C_O and AM_PROG_CC_C_O caused warnings in
- autoconf; for example, in our test 't/libobj3.sh', we could see
- warnings like these (here slightly tweaked for legibility):
- configure.ac:5: AC_REQUIRE: `AC_PROG_CC' expanded before required
- autoconf/c.m4:567: AC_PROG_CC_C_O is expanded from...
- autoconf/c.m4:429: AC_LANG_COMPILER(C) is expanded from...
- autoconf/lang.m4:329: AC_LANG_COMPILER_REQUIRE is expanded from...
- autoconf/general.m4:2606: AC_COMPILE_IFELSE is expanded from...
- m4sugar/m4sh.m4:639: AS_IF is expanded from...
- autoconf/general.m4:2031: AC_CACHE_VAL is expanded from...
- autoconf/general.m4:2052: AC_CACHE_CHECK is expanded from...
- aclocal.m4:70: AM_PROG_AR is expanded from...
- configure.ac:5: the top level
- ** Fix all of that:
- We fix all of the described issues with a new internal m4 macro
- _AM_PROG_CC_C_O (inspired to, but not based on, AC_PROG_CC_C_O) that
- gets tacked on to AC_PROG_CC automatically (this is done in the
- Automake-generated aclocal.m4) and that takes care of checking and
- adjusting '$CC' for "-c -o" support.
- The macro AM_PROG_CC_C_O is still present, but is now just a thin
- wrapper around such Automake-enhanced AC_PROG_CC.
- It is worth noting that the present patch causes three slight
- *backward-incompatibilities*:
- 1. The name cache variable used by AM_PROG_CC_C_O is no longer
- computed (at configure runtime!) from the content of '$CC',
- but is statically defined as 'am_cv_prog_cc_c_o'.
- 2. 'cc' is no longer checked by AM_PROG_CC_C_O, only '$CC' is.
- 3. AM_PROG_CC_C_O no longer AC_DEFINE the C preprocessor symbol
- 'NO_MINUS_C_MINUS_O'.
- Given however that the third change can easily be worked around, that
- the first two changes can be legitimately seen as bug fixes, and that
- the new semantics introduced by such changes will simplify the transition
- to Automake 2.0 (when the 'subdir-objects' will always be enabled
- unconditionally), we believe they are acceptable to be shipped with
- Automake 1.14.
- With this patch, we also revert some of the testsuite adjustments done
- in previous commit v1.13.2-178-g9877109 of 2013-05-24 (compile: rewrite
- AC_PROG_CC with AM_PROG_CC_C_O contents). Such adjustments are no longer
- needed.
- * m4/minuso.m4 (_AM_PROG_CC_C_O): New internal macro, basically and
- adjusted version of a merge between Autoconf-provided AC_PROG_CC_C_O
- and our old implementation of AM_PROG_CC_C_O.
- (AM_PROG_CC_C_O): Redefine as a simple wrapper around AC_PROG_CC.
- * m4/init.m4 (AC_PROG_CC): Append _AM_PROG_CC_C_O, not AM_PROG_CC_C_O,
- to the pre-existing expansion of this macro.
- * m4/ar-lib.m4 (AM_PROG_AR): No longer require it to be expanded after
- AC_PROG_CC.
- * t/aclocal-deps.sh: Move AC_PROG_CC invocation after AC_PROG_RANLIB
- and AM_PROG_AR invocations. Things should work this way too (as they
- used to).
- * t/subobj-clean-lt-pr10697.sh: Likewise.
- * t/alloca.sh: Move AC_PROG_CC invocation after AM_PROG_AR invocation.
- * t/condlib.sh: Likewise.
- * t/aclocal-deps.sh: Move AC_PROG_CC invocation after LT_INIT and
- AM_PROG_AR invocations. Make autoconf and autoheader warnings fatal.
- * t/am-prog-cc-c-o.sh: Adjust to the new semantics, enhance a little,
- and reduce code duplication.
- * t/ccnoco.sh: Make autoconf warnings fatal.
- * t/subpkg.sh: Likewise.
- * t/ccnoco-lib.sh: Likewise, and fix a comment.
- * t/link_cond.sh: Enhance a couple of error messages.
- * configure.ac: Drop "nullification" of AM_PROG_CC_C_O.
- * NEWS: Adjust.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- compile: rewrite AC_PROG_CC with AM_PROG_CC_C_O contents
- This is a much simpler rewrite than the one we attempted in the past,
- and that was later removed by commit 'v1.13.1d-137-g32eb770' of
- 2013-05-11 (compile: avoid AC_PROG_CC messy rewrite).
- Not only this change simplifies the code a little, but has the welcome
- collateral effect of making automatic dependency tracking work better
- with compilers that doesn't grasp the '-c' and '-o' options together.
- Issues in that setup have been caught by several failures in the target
- 'check-no-cc-c-o'.
- Unfortunately, this change has less welcome collateral effects:
- 1. AM_PROG_AR must now be called *after* AC_PROG_CC;
- 2. Autoconf emits extra warnings when used with Automake-generated
- aclocal.m4.
- These are unacceptable regressions for a release, but since we are
- going to fix them soon enough in a follow-up patch (surely to be
- applied before Automake 1.14 is released) we don't worry too much.
- * m4/init.m4: Redefine AC_PROG_CC early, to automatically invoke
- AM_PROG_CC_C_O as well. Accordingly, drop now-unneeded "automagical"
- AM_PROG_CC_C_O expansion at later time (which took place thanks to
- a AC_CONFIG_COMMANDS_PRE call).
- * m4/minuso.m4 (AM_PROG_CC_C_O): Ensure the expansion of the body
- of this macro takes place with C as "current Autoconf language" (use
- AC_LANG_PUSH/AC_LANG_POP).
- * m4/ar-lib.m4 (AM_PROG_AR): Likewise. Also, require this macro to
- be expanded *after* AC_PROG_CC (so that any rewrite of $CC, if required,
- has already taken place).
- * t/add-missing.tap: Adjust to avoid spurious failures.
- * t/aclocal-deps.sh: Likewise, by having AM_PROG_AR called *after*
- AC_PROG_CC.
- * t/subobj-clean-lt-pr10697.sh: Likewise.
- * t/alloca.sh: Likewise.
- * t/condlib.sh: Likewise.
- * t/discover.sh: Likewise.
- * t/objc-megademo.sh: Likewise.
- * t/ccnoco.sh: Extend a little.
- * t/ccnoco-deps.sh: New test.
- * t/ccnoco-lib.sh: Likewise.
- * t/ccnoco-lt.sh: Likewise.
- * t/list-of-tests.mk: Add them.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: ensure $required is not set too late
- And do so in a safer way, with a runtime check rather than a brittle
- static maintainer check.
- * t/ax/test-init.sh: Set the 'required' variable to readonly.
- * syntax-checks.mk (sc_tests_required_after_defs): Remove.
- (syntax_check_rules): No longer list it.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: use append mode to capture parallel make output
- tests: new convenience target 'check-parallel'
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: use append mode to capture parallel make output
- This will allow us to run the Automake testsuite forcing all the make
- invocations in the test cases to run in parallel mode [1], but without
- hitting the spurious failure reported in automake bug#11413.
- See also:
- <http://lists.gnu.org/archive/html/bug-make/2013-05/msg00135.html>
- The make invocations in the test cases can be forced to run in parallel
- mode by, e.g., invoking "make check" like this:
- make check AM_TESTSUITE_MAKE="make -j16"
- The possible spurious failures hinted above are due to the fact that
- the redirected output of parallel make can racily lose lines. For
- example, if GNU make (3.82) is run with -j10 on a Makefile like this:
- all = 0 1 2 3 4 5 6 7 8 9
- default: $(all)
- $(all):
- @sleep 0.$$(($RANDOM % 10)); echo $@
- and has its standard output redirected in overwrite-mode to a regular
- file, it looses a line of that output every 15 runs or so on a Fedora
- 17 system with 64 ppc64 cores. Redirection in append mode does not
- suffer of this problem, as explained here:
- <http://lists.gnu.org/archive/html/automake-patches/2009-03/msg00073.html>
- See also previous commits v1.12-63-g45c1fcd of 2012-05-05 (tests: use
- append mode to capture parallel make output) and Release-1-10-280-g6426999
- of 2009-03-10 (Use append mode to capture parallel test output).
- * t/ax/am-test-lib.sh (run_make): Adjust and enhance.
- * t/lisp8.sh: Take advantage of the enhancement, nd stop doing output
- redirection for $MAKE by hand.
- * t/tap-more.sh: Likewise.
- * t/parallel-tests-concurrency.sh: Likewise.
- 2013-05-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: new convenience target 'check-parallel'
- To force the test scripts to invoke make in parallel mode. This should
- enhance coverage of use cases (make concurrency) that are becoming more
- and more important with today multicore fast machines.
- * Makefile.am (check-parallel): New .PHONY target.
- 2013-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid few lingering $MAKE redirections
- These were present in the 'maint' branch, but not in the 'micro' branch.
- Their occurrences has been found by the 'sc_tests_no_run_make_redirect'
- maintainer check.
- * t/fort2.sh: Adjust.
- * t/preproc-demo.sh: Likewise.
- 2013-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: avoid '$MAKE' redirections, use 'run_make' instead
- tests: avoid use of redirected 'run_make' invocations
- lint: warn against redirected 'run_make' invocations
- comments: next GNU make release 4.0, not 3.83
- tests: fix a potential spurious failure due to global config.site
- HACKING: it's OK to do testsuite refactoring in a micro version
- 2013-05-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid '$MAKE' redirections, use 'run_make' instead
- The use 'run_make' with the -E, -O and -M option, it is more
- idiomatic now. Also, this way, centralized fixes and improvements
- done in 'run_make' will automatically propagate through most of
- the testsuite.
- * syntax-checks.mk (sc_tests_no_run_make_redirect): Also check against
- '$MAKE' invocations that uses output redirections (and not only against
- 'run_make' invocation that do so).
- * Several tests: Adjust (and few minor cosmetic changes as well, while
- at it).
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid use of redirected 'run_make' invocations
- Instead, properly use the -E, -O, or -M options of run_make.
- The occurrences of the 'run_make' invocations using output
- redirection has been found by the recently-introduced maintainer
- check 'sc_tests_no_run_make_redirect'.
- * t/ax/tap-summary-aux.sh: Adjust.
- * t/ax/testsuite-summary-checks.sh: Likewise.
- * Several other tests: Likewise.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: warn against redirected 'run_make' invocations
- The testsuite shell function 'run_make()' has the three options
- -E, -O and -M to perform the various kind of output redirections,
- so the test scripts should use them instead of redirecting the
- output "by hand":
- run_make ARGS >stdout => run_make -O ARGS
- run_make ARGS >stderr => run_make -E ARGS
- run_make ARGS >stdout 2>stderr => run_make -O -E ARGS
- run_make ARGS >output 2>&1 => run_make -M ARGS
- See the commit message of v1.13.2-13-gc7cfa09, 2013-05-22
- (tests: run_make: options to do command redirection) for an
- explanation of why this is a good idea.
- It's worth noting that the present patch only introduced a new
- static maintainer check looking against the undesired idioms,
- but doesn't yet remove usages of such idioms from the testsuite.
- That will be done by follow-up patch(es).
- * syntax-checks.mk (sc_tests_no_run_make_redirect): New check.
- (syntax_check_rules): List it.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- comments: next GNU make release 4.0, not 3.83
- See: <http://lists.gnu.org/archive/html/bug-make/2013-05/msg00093.html>
- * lib/am/header-vars.am (am__make_running_with_option): Adjust
- comments.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a potential spurious failure due to global config.site
- * t/instdir-no-empty.sh: Here.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: it's OK to do testsuite refactoring in a micro version
- Reported-by: Peter Rosin <peda@lysator.liu.se>
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: remove some code duplication
- cosmetics: remove a couple of extra whitespaces in tests
- tests: two minor fixups
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove some code duplication
- * t/ax/am-test-lib (null_install): New function.
- * t/instdir-java.sh: Use it instead of copied & pasted code.
- * t/instdir-lisp.sh: Likewise.
- * t/instdir-ltlib.sh: Likewise.
- * t/instdir-prog.sh: Likewise.
- * t/instdir-python.sh: Likewise.
- * t/instdir-texi.sh: Likewise.
- * t/instdir.sh: Likewise.
- * t/instdir2.sh: Likewise.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove a couple of extra whitespaces in tests
- * t/instdir.sh: Here.
- * t/instdir2.sh: And here.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: two minor fixups
- * t/make-keepgoing.tap: Here.
- * t/parallel-tests-exit-statuses.sh: And here.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: run_make: options to do command redirection
- tests: only activate 'unset' alias if required
- tests: better idiom to override make macro defs on the cmdline
- test-lib: minor style changes
- test-lib: fix botched function name in an error message
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: run_make: options to do command redirection
- Let's improve the API of the 'run_make()' helper shell function by
- adding three new options:
- -O Save the standard output from make on disk, in a regular file
- named 'stdout'.
- -E Save the standard error from make on disk, in a regular file
- named 'stderr'.
- -M Save both the standard output and standard error from make on
- disk, in a regular file named 'output'. This option supersedes
- both the '-O' and '-E' options.
- This new API has two main advantages.
- 1. Its use will allow us to get rid of more cumbersome idioms
- like, e.g.,
- $MAKE check >stdout && { cat stdout; exit 1; }
- cat stdout
- That can now be substituted with a simpler one:
- run_make -e FAIL -O check
- 2. More importantly, using the new API we will prevent any extra output
- from the shell traces of the code in run_make to be redirected along
- with the make stderr (where that was redirected). This problem was
- present in usages like, e.g.,
- run_make TESTS=foo.test check 2>stderr && exit 1
- grep 'expected error message' stderr
- Such usages are now to be rewritten as follows:
- run_make -e FAIL -E TESTS=foo.test check
- grep 'expected error message' stderr
- ensuring that 'stderr' won't end up containing unrelated stuff.
- Note that we do not convert in bulk the old idioms and the use of
- redirected 'run_make' invocations with this patch. We only convert
- some occurrences, to ensure that the new implementation of 'run_make'
- is sound enough. More sweeping conversions will likely be done in
- follow-up patches.
- * t/ax/am-test-lib.sh (run_make): Enhance and implement the extended API.
- * t/tap-xfail-tests.sh: Use the new 'run_make' API.
- * t/test-driver-cond.sh: Likewise.
- * t/tests-environment-fd-redirect.sh: Likewise.
- * t/uninstall-fail.sh: Likewise.
- * t/yacc-dist-nobuild.sh: Likewise.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: only activate 'unset' alias if required
- This makes the test logs easier to read for most shells (which do not
- actually require that alias). This is especially important now that
- 'unset' is used in the new 'run_make()' function, and that function is
- likely going to be used more and more in the future.
- * t/ax/test-lib.sh (_am_unset, unset): Only define this function and
- alias if "unset VAR" returns a non-zero exit status when VAR is already
- unset.
- 2013-05-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better idiom to override make macro defs on the cmdline
- We now do so with a new wrapper shell function 'run_make()', which
- relies on the use of AM_MAKEFLAGS, avoiding the use of the '-e' make
- option. The use of that option (that causes the environment variables
- to take precedence over the macro definitions in the Makefile) has
- proved to be quite brittle in the past, causing annoying and sometimes
- problematic spurious failures. This has worsened in some still
- unpublished work going on in development branches. It's time to solve
- the issue once and for all.
- Note that we do not convert all uses of $MAKE in the testsuite right
- away; we might do so in follow-up changes, with leisure, to avoid a
- "patch bomb" effect (this commit is already too much of a bomb itself).
- What we do in this commit is to get rid of all "$MAKE -e" invocations.
- We admit that the implementation and feature-set of 'run_make()' are
- far from perfect, but good enough for our current purposes. We'll
- improve 'run_make()' if and when the need arises.
- * syntax-checks.mk (sc_tests_no_make_e): New syntax check, guard against
- the use of "$MAKE -e".
- (syntax_check_rules): Add it.
- (sc_tests_overriding_macros_on_cmdline): Adjust.
- (lint): New, alias for 'maintainer-check', for lazy typists. Idea
- backported from the 'maint' branch (Automake 1.13a).
- * t/ax/am-test-lib.sh (run_make): New function. Run $MAKE with the
- given command-line arguments, handling command-line override of variable
- definitions in a smart way (using AM_MAKEFLAGS if a non-GNU make
- implementation is detected to be in use).
- (useless_vpath_rebuild): Adjust to use 'run_make', to avoid a spurious
- maintainer check failure.
- (yl_distcheck): Use 'run_make' rather than bare '$MAKE'.
- (single_quote, append_single_quoted, is_valid_varname): New auxiliary
- function, used, directly or indirectly, by it.
- * Many tests: Adjust to avoid the use of "$MAKE -e", and prefer the
- use of 'run_make' in few other contexts as well, where it makes sense.
- Other minor fixlets while at it.
- 2013-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- test-lib: minor style changes
- * t/ax/am-test-lib.sh (require_tool): Here.
- 2013-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- test-lib: fix botched function name in an error message
- * t/ax/am-test-lib.sh (useless_vpath_rebuild): Here.
- 2013-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- maintcheck: minor tweaks and fixlets
- 2013-05-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: minor tweaks and fixlets
- * syntax-checks.mk: Here.
- 2013-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure on NetBSD 5.1
- * t/dist-shar.sh ($required): Also require the 'unshar' program.
- Apparently, NetBSD has a 'shar' program but not the corresponding
- 'unshar' one.
- 2013-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: build version.texi and stamp-vti in srcdir
- Do so even when the 'info-in-builddir' option is present, or when
- the corresponding '*.info' files are listed in $(CLEANFILES) or in
- $(DISTCLEANFILES).
- This fixes failures in the following tests, when they are run with
- $MAKE pointing to FreeBSD make:
- - txinfo-nodist-info.sh
- - txinfo23.sh
- - txinfo24.sh
- - txinfo28.sh
- - txinfo25.sh
- BTW, notice that the test 'txinfo-builddir.sh' fails with FreeBSD make
- as well, but that is due to a known FreeBSD make VPATH issue (the same
- described in automake bug#7884). But that is not a regression, since
- the 'info-in-builddir' option will be new in Automake 1.14. Moreover,
- we already warn in the manual that the use of that option can indeed
- cause problems with VPATH builds done by non-GNU make.
- * bin/automake.in (handle_texinfo_helper): New local variable
- '$soutdir'. Use it instead of '$outdir' where appropriate (in
- particular, in the transform used on file 'texi-vers.am'.
- * t/txinfo-builddir.sh: Adjust to avoid spurious failures.
- 2013-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a botched heading comment
- * t/parallel-tests-recheck-pr11791.sh: Here.
- 2013-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix another spurious with FreeBSD make
- * t/parallel-tests-recheck-pr11791.sh: Here.
- 2013-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure with FreeBSD make
- Failures due to known VPATH support issues in that make implementation
- (the same issues that have been causing the long-standing bug#7884).
- * t/lex-multiple.sh: Adjust.
- 2013-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- lisp: fix a failure with Solaris /usr/xpg4/bin/sh
- tests: sanitize 'unset' usages
- tests: fix some botched/outdated comments
- tests: use perl, not find+rm, to remove temporary directories
- 2013-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- lisp: fix a failure with Solaris /usr/xpg4/bin/sh
- * lib/am/lisp.am (.el.elc): By initializing the 'am__dir' properly
- here. For most shells, the lacking initialization, while technically
- incorrect, didn't cause any issue in practice, because in those shells
- "test -d" returns an exit status of 0. But with /usr/xpg4/bin/sh, the
- shell complains like this: "test: argument expected", and returns a
- non-zero exit status. This caused testsuite failures in several lisp
- tests.
- Also, while we are at it, use more proper quoting in the recipe, to
- ensure a missing initialization to now be caught by more forgiving
- shells as well.
- * NEWS: Update.
- 2013-05-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: sanitize 'unset' usages
- In some shells (e.g., Solaris 10 /bin/ksh, or NetBSD 5.1 /bin/sh),
- "unset VAR" returns a non-zero exit status in case the VAR variable
- is already unset. This doesn't interact well with our usage of
- "set -e" in the testsuite. So far, we've avoided spurious failures
- by either explicitly ignoring the exit status from unset:
- unset VAR || :
- or explicitly ensuring that a variable is set, before trying to
- unset it:
- VAR=; unset VAR
- But we can do better, by aliasing the 'unset' command to a custom
- function that will take care of these details for us. This will
- avoid us annoying spurious failures in the future, failures that
- have already bitten us too much times. For an example, refer to
- commit 'v1.12.2-88-g5b1dae5' of 2012-08-05 (tests: avoid tons of
- spurious failures on NetBSD).
- * t/ax/test-lib.sh (_am_unset): New function.
- (unset): New alias to it.
- (_am_exit): Adjust comments.
- * t/ax/am-test-lib.sh: No need to temporary disable the 'errexit'
- shell flag when unsetting variables that are potentially already
- unset.
- (am_process_requirements): Adjust to remove a now-useless
- workaround related to unset.
- * t/aclocal-macrodir.tap: Likewise.
- * t/aclocal-macrodirs.tap: Likewise.
- * t/auxdir-autodetect.sh: Likewise.
- * t/ax/am-test-lib.sh: Likewise.
- * t/ax/test-lib.sh: Likewise.
- * t/check-tests-in-builddir.sh: Likewise.
- * t/dist-formats.tap: Likewise.
- * t/distcheck-configure-flags-am.sh: Likewise.
- * t/distcheck-configure-flags.sh: Likewise.
- * t/java-empty-classpath.sh: Likewise.
- * t/javaflags.sh: Likewise.
- * t/lflags.sh: Likewise.
- * t/lflags2.sh: Likewise.
- * t/lisp-flags.sh: Likewise.
- * t/lisp6.sh: Likewise.
- * t/missing-auxfile-stops-makefiles-creation.sh: Likewise.
- * t/parallel-am.sh: Likewise.
- * t/parallel-am2.sh: Likewise.
- * t/parallel-am3.sh: Likewise.
- * t/parallel-tests-log-override-recheck.sh: Likewise.
- * t/pkg-config-macros.sh: Likewise.
- * t/python-missing.sh: Likewise.
- * t/python-too-old.sh: Likewise.
- * t/python11.sh: Likewise.
- * t/self-check-dir.tap: Likewise.
- * t/self-check-report.sh: Likewise.
- * t/self-check-seq.tap: Likewise.
- * t/silent-configsite.sh: Likewise.
- * t/suffix6c.sh: Likewise.
- * t/tar-override.sh: Likewise.
- * t/tests-environment-and-log-compiler.sh: Likewise.
- * t/vala-configure.sh: Likewise.
- * t/werror3.sh: Likewise.
- * t/yflags-cmdline-override.sh: Likewise.
- * t/yflags.sh: Likewise.
- * t/yflags2.sh: Likewise.
- 2013-05-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix some botched/outdated comments
- * t/ax/test-defs.in: Here. Also, fix a couple of grammaros while at it.
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: use perl, not find+rm, to remove temporary directories
- The File::Path::rmtree function from perl, if used right, is
- more reliable and more portable of our past idiom:
- find $dirs -type d ! -perm -700 -exec chmod u+rwx {} ';';
- rm -rf $$dirs || exit 1
- at least of the face of unreadable dirs/files and other similar
- permission issues (and we have those in our test directories).
- In fact, this change fixes some spurious failures seen in
- "make distcheck" on Solaris 10.
- * t/ax/deltree.pl: New.
- * Makefile.am (EXTRA_DIST): Add it.
- (clean-local-check): Use it.
- * t/ax/test-lib.sh (rm_rf_): Use it.
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove remaining exec bits ('maint' branch)
- The executable bit gives the impression that the tests are directly
- runnable, as with "./t/foo.sh", but it has been a while since that
- was the case. Today, tests are runnable only through "make check"
- or "./runtest".
- This change is for the 'maint' branch (automake 1.13a), and is a
- follow-up to commit 'v1.13.2-3-g74017b5', done on the 'micro' branch
- (automake 1.13.2a). It will soon be followed by a similar patch
- for the 'master' branch (automake 1.99a).
- * t/am-prog-cc-c-o.sh: Remove executable bit.
- * t/ccnoco4.sh: Likewise.
- * t/dist-shar.sh: Likewise.
- * t/dist-tarZ.sh: Likewise.
- * t/lex-multiple.sh: Likewise.
- * t/preproc-basics.sh: Likewise.
- * t/preproc-c-compile.sh: Likewise.
- * t/preproc-demo.sh: Likewise.
- * t/preproc-errmsg.sh: Likewise.
- * t/rm-f-probe.sh: Likewise.
- * t/self-check-cc-no-c-o.sh: Likewise.
- * t/txinfo-builddir.sh: Likewise.
- * t/txinfo-nodist-info.sh: Likewise.
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- tests: remove exec bit from all of them ('micro' branch)
- maint: tests no longer need to have executable bit set
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove exec bit from all of them ('micro' branch)
- It gives the impression that they are directly runnable, as with
- "./t/foo.sh", but it has been a while since that was the case. Today,
- tests are runnable only through "make check" or "./runtest".
- This change is for the 'micro' branch (automake 1.13.2a). It will
- soon be followed by similar patches for the 'maint' branch (automake
- 1.13a) and the 'master' branch (automake 1.99a).
- * t/*.sh, t/*.tap: Remove executable bit.
- * maint.mk (sc_tests_executable): Remove.
- (syntax_check_rules): Adjust.
- * gen-testsuite-part: Set permissions of generated tests to
- '444' (-r--r--r--), rather than 555 (-r-xr-xr-x).
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: tests no longer need to have executable bit set
- It has been a while since they are runnable only through "make check"
- or "./runtest", and not directly.
- * HACKING: Adjust.
- * t/README: Likewise, and updated the surrounding text to get rid of
- obsolete statements and advices.
- 2013-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- PLANS: subdir-objects: various updates
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'micro' into maint
- * micro:
- post-release: micro version bump (1.13.2a)
- release: stable micro release 1.13.2
- vala tests: skip in a cross compiler setup
- HACKING: miscellaneous fixes, updates and enhancements
- NEWS: minor improvements to wording (about new versioning scheme)
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: micro version bump (1.13.2a)
- * configure.ac, m4/amversion.m4: Bump version: 1.13.2 -> 1.13.2a
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable micro release 1.13.2
- * configure.ac (AC_INIT): Bump version number to 1.13.2.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: skip in a cross compiler setup
- The "vala + pkg-config" doesn't interact well with cross-compilation:
- <https://mail.gnome.org/archives/vala-list/2012-September/msg00094.html>
- That is causing annoying failures in our testsuite when it's run in
- cross-compilation mode. It's not worth trying too be overly smart and
- work around these problems; just skip the affected tests instead.
- * t/ax/am-test-lib.sh (require_tool): A new requirement 'valac', telling
- that the test needs to compile Vala-generated C files. In particular,
- this causes the test to be skipped when using a cross-compiler.
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: miscellaneous fixes, updates and enhancements
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: minor improvements to wording (about new versioning scheme)
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- THANKS: update Akim's e-mail address
- 2013-05-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o'
- That is, when the testsuite is run using a fake C compiler that doesn't
- grasp the '-c' and '-o' options together.
- * t/instdir-prog.sh: Adjust.
- * t/instdir-ltlib.sh: Likewise.
- * t/python-virtualenv.sh: Likewise.
- 2013-05-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: be more respectful of user-specified verbosity
- * t/Makefile.in (check-cc-no-c-o, check-no-trailing-backslash-in-recipes,
- installcheck-testsuite, perf): Here.
- 2013-05-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- check-cc-no-c-o: unify initializations in a single place
- * t/ax/test-defs.in: That is, by setting CC and GNU_CC here, in accord
- with the value of the variable 'AM_TESTSUITE_SIMULATING_NO_CC_C_O'.
- * t/Makefile.in (check-cc-no-c-o) : No need to reset CC and GNU_CC any
- longer in the recursive "make check" invocation.
- 2013-05-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- check-cc-no-c-o: avoid a spurious failure
- * t/am-prog-cc-c-o.sh: In this test, by relying on the knowledge
- that we are running under the aegis of the 'check-cc-no-c-o'
- maintainer-specific target, knowledge given us by ...
- * t/Makefile.in (check-cc-no-c-o) : ... the new environment
- variable 'AM_TESTSUITE_SIMULATING_NO_CC_C_O', set to a value
- of "yes" by this rule.
- * t/ax/test-defs.in: Initialize the new variable to "no" by
- default, and add an explanatory comment.
- 2013-05-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: fixup for building in a VPATH setup
- * bin/Makefile.inc (%D%/automake, %D%/aclocal): Make sure that the
- directory where the targets scripts are going to be built exists,
- before trying to create said scripts.
- 2013-05-11 Nick Bowler <nbowler@elliptictech.com> (tiny change)
- Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O
- If AM_PROG_CC_C_O is expanded multiple times, and the compiler does not
- support -c and -o together, each expansion of the macro will prepend
- the compile script to CC. This can result in the compile script
- invoking the compile script, which at best pointless and silly.
- Fortunately, there does not appear to be any serious problems as the
- first compile invocation strips out -o options, causing subsequent
- invocations of the script to merely exec their arguments.
- Other than fixing the above, this should not normally cause any changes
- to the resulting configure script, except in the (hopefully rare) case
- where AM_PROG_CC_C_O is directly expanded (i.e., *not* using AC_REQUIRE)
- in the body of a macro defined with AC_DEFUN. In that case, the use of
- AC_DEFUN_ONCE may cause the expansion of AM_PROG_CC_C_O to appear
- earlier in the configure script.
- * m4/minuso.m4: Change the definition of AM_PROG_CC_C_O to use
- AC_DEFUN_ONCE, avoiding problems caused by multiple expansions.
- 2013-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- compile: avoid AC_PROG_CC messy rewrite
- Instead, add an hook to AC_OUTPUT to have AM_PROG_CC_C_O invoked
- automatically.
- See also the long-winded discussion about automake bug#13378.
- * m4/minuso.m4 (AM_PROG_CC_C_O): Bring back the old implementation,
- from commit v1.13.1-55-g1ab8fb6.
- * m4/init.m4 (AC_PROG_CC): Remove this horrible, hacky re-write.
- * (AM_INIT_AUTOMAKE): Arrange for AM_PROG_CC_C_O to be called if
- necessary.
- * t/am-prog-cc-c-o.sh: Adjust to avoid spurious failure.
- * t/subobj.sh: Likewise.
- Suggested-by: Nick Bowler <nbowler@elliptictech.com>
- 2013-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: tiny simplification in dealing with incompatible versions
- * lib/Automake/Options.pm (_process_option_list): Here, when an
- incompatible version number option is detected, there's no need
- to call error() with the "uniq_scope => US_GLOBAL" switch.
- In fact, if the same incompatible version number is specified in
- AUTOMAKE_OPTIONS in both (say) 'Makefile.am' and 'sub/Makefile.am',
- we want each such erroneous usage reported separately, rather than
- just the first time it is encountered (as we'd expect to happen
- when "uniq_scope => US_GLOBAL" is used).
- Ideally, this change should have been folded into the similar
- commit 'v1.13.1d-129-gf7ef16f', but we noticed that too late.
- Oh well.
- 2013-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: try to report as much errors as possible
- For example, if two invalid options are used in AUTOMAKE_OPTIONS, don't
- report just the first one, but both of them.
- * lib/Automake/Options.pm (_process_option_list): Do so by avoiding
- early returns in here.
- 2013-05-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- warns: don't tell AM_PROG_MKDIR_P is going to be removed
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- warns: don't tell AM_PROG_MKDIR_P is going to be removed
- That is no longer true. For a more extended rationale, see file
- 'PLANS/obsolete-removed/am-prog-mkdir-p.txt' in the maint branch
- (as of commit v1.13.1d-132-g90ec3fe).
- * automake.in (scan_autoconf_traces): So adjust the warning message
- here.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: fix few "inverted boolean" usages
- In some subroutines, we used a return value of 0 to indicate success,
- and a return status of 1 to indicate failure. That was not very
- consistent with the perl interpretation of 0 as a false value and 1 as
- a true value. So we now invert the meaning of the exit statuses.
- * lib/Automake/Options.pm (_process_option_list): Here.
- (process_global_option_list, process_option_list): And by reflex,
- here as well.
- * bin/automake.in (handle_options): And here.
- (generate_makefile, scan_autoconf_traces): Adjust.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: better name for an internal function
- * lib/Automake/Options.pm (_option_must_be_from_configure): Rename ...
- (_option_is_from_configure): ... like this.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: more consistency in use of return statuses to report errors
- * lib/Automake/Options.pm (_option_must_be_from_configure): By giving
- a proper return status here.
- (_process_option_list): And using it here.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: tiny simplification in dealing with erroneous opts
- * lib/Automake/Options.pm (_process_option_list): Here, when an
- invalid option is detected, there's no need to call &error with
- the "uniq_scope => US_GLOBAL" switch. In fact, if the same
- erroneous option is specified in AUTOMAKE_OPTIONS in both (say)
- 'Makefile.am' and 'sub/Makefile.am', we want each such erroneous
- usage reported separately, rather than just the first time it is
- encountered (as happens when "uniq_scope => US_GLOBAL" is used).
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: consistently use return statuses to report errors
- * lib/Automake/Options.pm (_process_option_list): Here.
- (process_option_list, process_global_option_list): Remove
- redundant use of 'return'.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- options: re-enable some sanity checks
- They had been unwittingly disabled by a slightly incorrect
- code ordering.
- * lib/Automake/Options.pm (process_option_list): Here.
- (process_global_option_list): And here.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- THANKS: update Eric Blake's e-mail address
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: typofix
- Reported-by: Eric Blake <eblake@redhat.com>
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document new 'subdir-objects' warning
- * NEWS: Automake 1.14 will warn if a subdir source file is
- specified but the 'subdir-objects' option is not given. This
- is done to smooth the transition to Automake 2.0, which will
- unconditionally assume the behaviour now given only with the
- 'subdir-objects' option.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- PLANS: one minor fixlet (mostly cosmetic)
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- PLANS: we have already dropped support for split info files in master
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- PLANS: fix reference to non-existent 'next' branch
- * PLANS/obsolete-removed/configure.in.txt: Here. We should refer
- to the 'master' branch instead.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- PLANS: fix botched version reference
- * PLANS/rm-f-without-args.txt: Here. The probe checking that "rm -f"
- without arguments works will be introduced in Automake 1.14, not in
- Automake 1.13.2.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix two references to old location of aclocal and automake
- * maintainer/syntax-checks.mk (sc_perl_at_substs): Here: it should
- refer to 'bin/automake' and 'bin/aclocal', not 'automake' and
- 'alocal'.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: deprecated shar and tar+compress formats
- See also discussion about automake wishlist bug#13324.
- * lib/Automake/Options.pm: Give proper warnings in the 'obsolete'
- category if the 'dist-shar' or 'dist-tarZ' options are used.
- * lib/distdir.am: When the 'dist-tarZ' or 'dist-shar' targets are
- invoked, make them give a non-fatal warning.
- * doc/automake.texi: Report the new deprecations.
- * t/dist-shar.sh: New test.
- * t/dist-tarZ.sh: Likewise.
- * t/lzma.sh: While at it, rename ...
- * t/dist-lzma.sh: ... like this, and tweak it to keep more in
- sync with the new tests.
- * t/dist-formats.tap: Remove references to deprecated formats.
- * t/list-of-tests.mk: Adjust.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'dog-feeding' into maint
- * dog-feeding:
- build: move automake and aclocal in 'bin' subdir
- build: break up monolithic Makefile.am in subdir-specific fragments
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- am: prefer a shorter idiom where possible
- That is, prefer:
- test -f FILE || do_action
- over:
- if test ! -f FILE; then do_action; else :; fi
- * lib/am/remake-hdr.am (%CONFIG_H%): Here.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- cosmetics: fix few typos, grammaros and missing whitespace
- fixup: remove an obsolete comment
- docs: we still don't have the promised better Java interface
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix few typos, grammaros and missing whitespace
- * lib/am/*.am: In comments in some of these files.
- 2013-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: remove an obsolete comment
- * lib/am/header-vars.am (am__make_running_with_option): Here.
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: we still don't have the promised better Java interface
- Reported by Michael Zucchi:
- <http://lists.gnu.org/archive/html/automake/2013-05/threads.html>
- See also automake bug#9088.
- * doc/automake.texi (Java): Adjust and clarify.
- * THANKS: Update.
- Reported-by: Michael Zucchi <notzed@gmail.com>
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: re-run "make update-copyright" ...
- * t/lex-multiple.sh: ... which updates the copyright years
- of this test (they were somehow not bumped in the past).
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure with older flex (2.5.4)
- That old version is unfortunately still relevant, being the one
- installed on NetBSD 5.1.
- * t/lex-multiple.sh: Use the '-o' option rather than the longer
- equivalent '--outfile'. The latter is not supported by older
- versions of flex (e.g., flex 2.5.4).
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- announcement: cater to more flexible NEWS format
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- announcement: cater to more flexible NEWS format
- * maint.mk (announcement): Here, be prepared to handle the case
- in which the first section of the NEWS file is dedicated to report
- future backward-incompatibilities and/or other warnings.
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: move automake and aclocal in 'bin' subdir
- * automake.in: Rename ...
- * bin/automake.in: ... like this.
- * aclocal.in: Rename ...
- * bin/aclocal.in: ... like this.
- * Makefile.am: Move parts that dealt with the building/distribution
- of aclocal and Automake ..
- * bin/Makefile.inc): ... in this new included fragment. Adjust as
- needed, and make deliberate use of the '%D%' substitution.
- * lib/gen-perl-protos: Move ...
- * bin/gen-perl-protos: ... here.
- * bootstrap.sh, configure.ac, maintainer/rename-tests,
- t/wrap/aclocal.in, t/wrap/automake.in, doc/Makefile.inc,
- t/ax/tap-setup.sh, .gitignore: Adjust.
- * maintainer/syntax-checks.mk: Likewise, and enhance a little.
- 2013-05-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: break up monolithic Makefile.am in subdir-specific fragments
- This is convenient to do, now that we have improved "relative directory"
- support with the '%reladir%' (a.k.a. '%D%') and '%canon_reladir%' (a.k.a.
- '%C%') Automake-time substitutions for included makefile fragments.
- This move also satisfy our philosophy of using new Automake features in
- our own build system, as a way of facilitating early discovery of possible
- bugs or interface warts.
- * Makefile.am: Break up ...
- * doc/Makefile.inc, lib/Automake/Makefile.inc, lib/Makefile.inc,
- lib/am/Makefile.inc, m4/Makefile.inc, t/Makefile.inc): ... in this
- new included fragments. Adjust as needed, and make deliberate use
- of the '%D%' substitution.
- * contrib/t/local.am: Rename ...
- * contrib/t/Makefile.inc: ... like this.
- 2013-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint branch: we are going to become Automake 1.14
- * configure.ac (AC_INIT): So adjust beta version in here, from
- 1.13.2a to 1.13a.
- * m4/amversion.m4: Regenerate.
- 2013-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- maint: version bump after beta release 1.13.1d
- release: beta release 1.13.1d (will become 1.13.2)
- NEWS: document more robust handling/recognition of make options
- 2013-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release 1.13.1d
- * configure.ac (AC_INIT): Bump version number to 1.13.1e.
- * m4/amversion.m4: Likewise (autoupdated by "make bootstrap").
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.13.1d (will become 1.13.2)
- * configure.ac (AC_INIT): Bump version number to 1.13.1d.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document more robust handling/recognition of make options
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: typofixes in comments in t/preproc-c-compile.sh
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove bashism from a test
- * t/preproc-c-compile.sh (Makefile.am): Use "test foo = bar", not the
- bash-specific "test foo == bar".
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- maint: targets and recipes to simplify testing on real-world packages
- build: preparatory refactoring
- build: tiny reduction in code duplication
- make flags analysis: handle more options with args
- make flags analysis: use simpler variable names
- make flags analysis: whitespace changes
- make flags analysis: embed in a subshell
- make flags analysis: be more robust
- make flags analysis: cater to GNU make 3.83 (still unreleased as of now)
- tests: expose weaknesses in make flags analysis
- tests: improve debugging output in checks on make flags analysis
- make flags analysis: refactor, to reduce code duplication
- tests: avoid one tricky use of "make -e"
- tests: avoid a spurious error with Solaris make
- subdirs: don't return false positives for the '-k' option's presence
- header-vars: recognize more make flags ('-k' in particular)
- header-vars: simplify how make flags are determined
- tests: remove dead code from t/make-dryrun.tap
- header-vars: new variable $(am__running_with_option)
- tests: expose bug#12554 (false positives for presence of '-k' make option)
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge 'better-makeflags-recognition' and 'testing-work' into branch-1.13.2
- * better-makeflags-recognition:
- make flags analysis: handle more options with args
- make flags analysis: use simpler variable names
- make flags analysis: whitespace changes
- make flags analysis: embed in a subshell
- make flags analysis: be more robust
- make flags analysis: cater to GNU make 3.83 (still unreleased as of now)
- tests: expose weaknesses in make flags analysis
- tests: improve debugging output in checks on make flags analysis
- make flags analysis: refactor, to reduce code duplication
- * testing-work:
- maint: targets and recipes to simplify testing on real-world packages
- build: preparatory refactoring
- build: tiny reduction in code duplication
- 2013-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: targets and recipes to simplify testing on real-world packages
- We introduce a new section in the maintainer-specific makefile that
- contains recipes to test the build system of some well-known GNU
- packages with the current development version of Automake. Not the
- cleanest way to do so, but good enough for the moment. We'll revisit
- the matter after the 1.13.2 release (which we now hope will happen
- soon).
- * maint.mk (git-sv-host): New.
- (SV_GIT_CF, SV_GIT_AC, SV_GIT_GL): Use it to reduce code duplication.
- (ALL_PACKAGES, FEW_PACKAGES): New, lists of GNU packages to try out.
- (ttp-check, ttp-check-all): New targets, do the checking with said
- packages.
- (ttp): New, alias for 'ttp-check'.
- (ttp-all): New, alias for 'ttp-check-all'.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: preparatory refactoring
- No semantic change intended. This change will be required
- by a later patch.
- * Makefile.am (setup_autotools_paths): New.
- ($(srcdir)/doc/amhello-1.0.tar.gz): Use it.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: tiny reduction in code duplication
- The code was only duplicated two times, but we are soon going to
- need a third occurrence, and that would be one to much.
- * Makefile.am (extend_path): New.
- (update_mans): Use it instead of copying & pasting its contents.
- ($(srcdir)/doc/amhello-1.0.tar.gz): Likewise, and minor related
- adjustments.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: handle more options with args
- That is, not only -I, but also -O (for upcoming GNU make 3.83),
- -l (GNU make), -d, -E, -D, -m (BSD make), -J, -T (NetBSD make).
- * lib/am/header-vars.am (am__make_running_with_option): Extend
- and adjust, both code and comments.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: use simpler variable names
- * lib/am/header-vars.am (am__make_running_with_option): Here. Now
- that we expect to be run in a subshell, we don't have to worry about
- being namespace-safe. And '$foo' is much more pleasant to read than
- '$am__foo' -- and pleasant code tends to be more correct.
- (am__make_dryrun, am__make_keepgoing): Adjust.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: whitespace changes
- * lib/am/header-vars.am (am__make_running_with_option): Here.
- No semantic change is intended.
- 2013-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: embed in a subshell
- So that we won't have to worry about leaking temporary variables,
- and similar stuff.
- * lib/am/header-vars.am (am__make_dryrun, am__make_keepgoing): Here.
- (am__make_running_with_option): Minor adjustments.
- 2013-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: be more robust
- In particular, catering to option-with-argument bundled together
- with options-without-arguments, as in:
- # With GNU make 3.82:
- $ make -f- <<<'all:; echo "$$MFLAGS"' -s -k -I none
- -skiI none
- # With development version of GNU make (Git commit b5ea49b):
- $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
- -skiI none
- This fixes some lingering failures in the testsuite; precisely, in
- tests 'make-dryrun.tap' and 'make-keepgoing.tap'.
- * t/header-vars.am (am__make_running_with_option): Enhance.
- 2013-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: cater to GNU make 3.83 (still unreleased as of now)
- The current development version of GNU make (that is planned to become
- GNU make 3.83, sooner or later) has changed the format its $(MFLAGS)
- variable slightly, removing the space between an option and its argument:
- # With GNU make 3.82, compiled from official tarball:
- $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
- -I none
- # With development version of GNU make (Git commit b5ea49b):
- $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
- -Inone
- This was done on purpose, in order to support more easily the new
- option '-O', which takes an optional argument; see:
- <http://lists.gnu.org/archive/html/bug-make/2013-05/msg00001.html>
- So Just adapt to the new format as well.
- * t/header-vars.am (am__make_running_with_option): Adjust to cater
- to the new GNU make behaviour.
- 2013-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose weaknesses in make flags analysis
- This introduces some failures in the testsuite, that will be fixed
- soon enough by follow-up patches.
- * t/make-dryrun.tap: Enhance and extend.
- * t/make-keepgoing.tap: Likewise.
- 2013-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: improve debugging output in checks on make flags analysis
- * t/make-dryrun.tap: Here.
- * t/make-keepgoing.tap: And here.
- 2013-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- make flags analysis: refactor, to reduce code duplication
- And make it a little more reliable.
- * t/header-vars.am (am__make_running_with_option): Here.
- 2013-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid one tricky use of "make -e"
- Which was causing a spurious failure on FreeBSD. Not particularly
- surprising, given how brittle "make -e" is in general ...
- * t/cxx-lt-demo.sh: Instead of forcing $(CC) to be 'false' by
- exporting "CC=false" in the environment and then passing the '-e'
- option to make, do so by passing "CC=false" on the make command
- line, both directly and using AM_MAKEFLAGS.
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr12554' into branch-1.13.2
- * fix-pr12554:
- tests: avoid a spurious error with Solaris make
- subdirs: don't return false positives for the '-k' option's presence
- header-vars: recognize more make flags ('-k' in particular)
- header-vars: simplify how make flags are determined
- tests: remove dead code from t/make-dryrun.tap
- header-vars: new variable $(am__running_with_option)
- tests: expose bug#12554 (false positives for presence of '-k' make option)
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- cosmetics: remove few trailing whitespace occurrences
- typofix: in NEWS (extra whitespace)
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove few trailing whitespace occurrences
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in NEWS (extra whitespace)
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- sync: update files from upstream with "make fetch"
- maintcheck: remove outdated whitelisting
- tar: format 'ustar' cannot support UID/GID longer than 21 bits
- 2013-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr13588-pax-hangs' into branch-1.13.2
- * fix-pr13588-pax-hangs:
- tar: format 'ustar' cannot support UID/GID longer than 21 bits
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious error with Solaris make
- * t/make-keepgoing.tap (Makefile.am): Here.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdirs: don't return false positives for the '-k' option's presence
- This change fixes automake bug#12554.
- The old implementation of the code descending into $(SUBDIRS)
- entries used the following snippet to decide whether make is running
- with the '-k' a.k.a. '--keep-going' option, and thus whether a failure
- in a subdirectory should prevent the descent in the following ones:
- fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done
- It's clear that the second pattern in the 'case' construct could possibly
- match false positives, for examples in these two cases:
- make check TESTS="x.test k.test"
- make -I /usr/local/kool-fragments
- which are somewhat unusual, but not invalid. So we need a more resilient
- implementation, as we did for the detection of the '-n' flag.
- This implementation is now provided by the new private macro
- '$(am__make_keepgoing)' (introduced in recent commits); so we can
- just us that to fix the bug.
- * lib/am/subdirs.am ($(am__recursive_targets)): Use '$(am__make_keepgoing)'
- instead of ad-hoc and more brittle checks.
- * t/list-of-tests.mk (XFAIL_TESTS): Remove the now-passing test case
- 't/subdir-keep-going-pr12554.sh'.
- Reported-by: Michael Daniels <mdaniels@rim.com>
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- header-vars: recognize more make flags ('-k' in particular)
- * lib/am/header-vars.am (am__running_with_option): Here.
- Few improvements to comments, while at it.
- (am__make_keepgoing): New, tell whther make is being runt with
- the '-k' option.
- * t/make-keepgoing.tap: New test.
- * t/list-of-tests.mk: Add it.
- * t/make-dryrun.tap: Minor edits to keep it more in sync with
- the new test.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: remove outdated whitelisting
- * syntax-checks.mk (sc_tests_overriding_macros_on_cmdline): Here.
- The test 'make-dryrun.sh' has been since long rewritten as the TAP
- test 'make-dryrun.tap', and no longer spuriously triggers this
- maintainer check.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- header-vars: simplify how make flags are determined
- Actually, son far only the '-n' option ("dry mode") was detected,
- but this change will allow us to soon detect more options.
- * lib/am/header-vars.am (am__running_with_option): Even when $MAKEFLAGS
- appears to contain definition of variables with embedded whitespace,
- use simple textual pre-processing over $MAKEFLAGS rather than tricky
- recursive invocations of make to determine whether the '-n' option was
- given. This is enough to correctly handle all the tricky usages covered
- in the testsuite.
- * t/nodep.sh: Adjust to avoid a spurious failure.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove dead code from t/make-dryrun.tap
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- header-vars: new variable $(am__running_with_option)
- This is a preparatory refactoring, needed by later patches.
- No semantic change is intended.
- * lib/am/header-vars.am (am__running_with_option): New, contains
- shell code that determines whether the current make instance is
- running with a given one-letter option (e.g., -k, -n) that takes
- no argument. Actually, the only supported option at the moment
- is '-n' (support for '-k' will be added soon).
- (am__make_dryrun): Rewrite as a thin wrapper around
- '$(am__make_running_with_option)'.
- 2013-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose bug#12554 (false positives for presence of '-k' make option)
- The current implementation of the code descending into $(SUBDIRS)
- entries uses the following snippet to decide whether make is running
- with the '-k' a.k.a. '--keep-going' option, and thus whether a failure
- in a subdirectory should prevent the descent in the following ones:
- fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done
- It's clear that the second pattern in the 'case' construct can possibly
- match false positives, for examples in these two cases:
- make check TESTS="x.test k.test"
- make -I /usr/local/kool-fragments
- which are somewhat unusual, but not invalid. So we need a more resilient
- implementation, as we did for the detection of the '-n' flag.
- But alas, such an implementation seems quite tricky to obtain in portable
- make. So for the moment we content ourselves with exposing the bug, with
- the hope of being able to fix soon enough.
- * t/subdir-keep-going-pr12554.sh: New test.
- * t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add it.
- * THANKS: Update
- Reported-by: Michael Daniels <mdaniels@rim.com>
- 2013-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tar: format 'ustar' cannot support UID/GID longer than 21 bits
- See automake bug#8343 and bug#13588.
- POSIX 1988 'ustar' format is defined with *fixed-size* fields. There
- is notably a 21 bits limit (2097151) for the UID and the GID.
- Tom Rini tom_rini@mentor.com says (in bug#8343):
- When the user has a UID or GID that is larger than the ustar format
- supports, pax does not error out gracefully in some cases (FC13).
- Marc Herbert <marc.herbert@intel.com> adds (in bug#8343):
- When "configure" is run by a user with an UID bigger than 21 bits,
- BSD pax 3.4 aborts when trying to create the 'conftest.tar' test
- archive and leaves an empty or corrupted conftest.tar file behind.
- In the next step, pax tries to extract this incomplete or corrupted
- archive and this *** hangs the whole ./configure script ***.
- Note: GNU cpio 2.9 pretends to pass the test but it is a LIE: it
- silently truncates any big UID to its lower 21 bits. I don't know
- what can be the consequences of this lie.
- I think there is currently a design issue in automake/m4/tar.m4
- considering that a ustar archive should should *never* succeed when
- ./configure is run from a big user ID.
- Months later, Petr Hracek <phracek@redhat.com> reports a similar issue
- (in bug#13588) for Fedora 17:
- I am trying to solve problem in case a user is created with big
- UID and during configuration pax hangs with message
- ATTENTION! pax archive volume change required.
- Ready for archive volume: 1
- Input archive name or "." to quit pax.
- Archive name >
- and needs user interaction.
- Reference: <https://bugzilla.redhat.com/show_bug.cgi?id=843376>
- Time to fix this issue, on the line of a preliminary patch provided by
- Petr Hracek in bug#13588. The final patch ended up being remarkably
- different from that original proposition, though.
- * m4/tar.m4 (_AM_PROG_TAR): If the UID or GID of the current user is
- too high (> 2097151), the 'ustar' format cannot work. Adjust checks
- accordingly. Some related code reordering and clean-up.
- * t/tar-ustar-id-too-high.sh: New test.
- * t/list-of-tests.mk: Add it.
- * t/tar.sh: While at it, tweak and enhance a little.
- * t/tar2.sh: Likewise.
- * t/tar3.sh: Likewise.
- * t/tar-override.sh: Likewise.
- * NEWS: Update.
- * THANKS: Likewise.
- Helped-by: Pavel Raiskup <praiskup@redhat.com>
- Helped-by: Petr Hracek <phracek@redhat.com>
- Helped-by: Marc Herbert <marc.herbert@intel.com>
- Helped-by: Tom Rini <tom_rini@mentor.com>
- 2013-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- docs: issues with configure substitutions in TESTS
- tests: avoid possible autotools caching issues (automake bug#13832)
- docs: add myself and Ralf Wildenhues as authors
- authors: add myself
- dry-run: don't get confused by '-I' option
- tests: avoid a spurious failure with the Korn Shell
- dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
- header vars: can determine whether we are running under GNU make
- NEWS: improve wording for automake bug#13514 fix
- NEWS: document fix for automake bug#13514
- 2013-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge few bug-fixing branches into branch-1.13.2
- * fix-part-pr13832:
- tests: avoid possible autotools caching issues (automake bug#13832)
- * fix-pr13760:
- dry-run: don't get confused by '-I' option
- dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
- header vars: can determine whether we are running under GNU make
- * fix-doc-pr14019:
- docs: issues with configure substitutions in TESTS
- * news-wording-improve:
- NEWS: improve wording for automake bug#13514 fix
- 2013-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: issues with configure substitutions in TESTS
- Motivated by automake bug#14019.
- * doc/automake.texi: Currently, when the parallel test harness is in use,
- configure substitutions in TESTS definitions can only work if they expand
- to tests that ends with a suffix listed in TEST_EXTENSIONS. Document this
- limitation.
- 2013-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid possible autotools caching issues (automake bug#13832)
- * t/ar-lib4.sh: Here, by removing the autom4te cache before editing
- configure.ac and re-running the autotools.
- 2013-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename some with more descriptive names
- * t/tar3.sh: Rename ...
- * t/tar-opts-errors.sh: ... like this.
- * t/tar2.sh: Rename...
- * t/tar-pax.sh: ... like this.
- * t/tar.sh: Rename ...
- * t/tar-ustar.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2013-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: add myself and Ralf Wildenhues as authors
- * doc/automake.texi: Here.
- 2013-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- authors: add myself
- 2013-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- dry-run: don't get confused by '-I' option
- Fixes automake bug#13760 for non-GNU make implementations that still
- support the option '-I'. So far, the only such make implementation
- are FreeBSD (8.x) make and NetBSD (5.x) make.
- * lib/am/header-vars.am (am__make_dryrun): If a non-GNU make is being
- used, try to handle the '-I' option in $MAKEFLAGS correctly. For GNU
- make, that is already done by the proper use of the $MFLAGS variable.
- 2013-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure with the Korn Shell
- * t/list-flags.sh: Ensure the EMACS variable is set before unsetting it.
- 2013-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
- Fixes automake bug#13760 for GNU make.
- * lib/am/header-vars.am (am__make_dryrun): If GNU make is being used, rely
- on the contents of the $(MFLAGS) variable rather than of the $(MAKEFLAGS)
- to decide whther make is being executed in "dry run" mode. Not only this
- makes the code possibly faster and less brittle, but also fixes automake
- bug#13760 (at least when GNU make is in use).
- * t/make-dryrun.tap: Adjust: some tests that were xfailing now pass.
- 2013-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- header vars: can determine whether we are running under GNU make
- This is mostly a preparatory patch in view of future changes.
- * lib/am/header-vars.am (am__is_gnu_make): New, contains shell code that
- determines whether we are running under GNU make.
- * t/make-is-gnu.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2013-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: improve wording for automake bug#13514 fix
- Helped-by: Jack Kelly <jack@jackkelly.name>
- 2013-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document fix for automake bug#13514
- It was fixed by commit v1.13.1b-5-g7a3d7ce.
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- INSTALL: regen
- sync: update files from upstream with "make fetch"
- tests: tweaks and minimal improvements to t/insthook.sh
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- INSTALL: regen
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/INSTALL: Update.
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- * lib/gendocs.sh: Likewise.
- * lib/gendocs_template: Likewise.
- * lib/gitlog-to-changelog: Likewise.
- * lib/gnupload: Likewise.
- * lib/texinfo.tex: Likewise.
- * lib/update-copyright: Likewise.
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: tweaks and minimal improvements to t/insthook.sh
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in comments in t/extra2.sh
- 2013-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix botched cross-reference in a heading comment
- * t/extra-dist-wildcards.sh: Here.
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: refactoring: factor out common cpp-like flags
- * automake.in (@cpplike_flags): In this new variable...
- (C, C++, Objective C, Objective C++, Unified Parallel C, Preprocessed
- Assembler, Preprocessed Fortran, Preprocessed Fortran 77): ... to be
- used by registration (with the 'register_language' subroutine) of these
- languages.
- This is a refactoring meant to simplify future changes; no semantic
- change is intended.
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS (mint): reflect new Automake versioning scheme
- The next minor Automake version will be 1.14, and *not* 1.13.2 -- that
- will be the next bug-fixing version.
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- Add missing '$' for variable expansion in depout.m4
- fixup: one stray reference to older versioning scheme
- 2013-04-19 Gavin Smith <gavinsmith0123@gmail.com> (tiny change)
- Add missing '$' for variable expansion in depout.m4
- * m4/depout.m4: "am__include" appeared where "$am__include" was meant.
- Reference:
- <http://lists.gnu.org/archive/html/automake-patches/2013-04/msg00000.html>
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'preproc' into maint
- * preproc:
- maintcheck: avoid spurious failure
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid spurious failure
- * t/preproc-errmsg.sh: Here, breaking up a sed command to avoid spuriously
- triggering a failure in the 'sc_tests_logs_duplicate_prefixes' maintainer
- check.
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'no-perl-protos' into maint
- * no-perl-protos:
- perl: perl subroutine prototypes are problematic, don't use them
- 2013-04-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- perl: perl subroutine prototypes are problematic, don't use them
- Basically, in perl, "subroutine prototypes" are not prototypes at all;
- rather, they are a trick to allow user-defined subroutines that behave
- like perl built-in functions. For example, prototyped subroutines can
- be called without parentheses, and can impose context on their arguments.
- Such semantics can be useful in some selected situations, but might also
- easily cause unexpected and harmful behaviours and side effects if we
- try to use perl prototypes as we would use C prototypes.
- See the excellent article "Far More than Everything You've Ever Wanted
- to Know about Prototypes in Perl" by Tom Christiansen for more detailed
- information:
- <http://www.perlmonks.org/?node_id=861966>
- <http://web.archive.org/web/20080421062920/\
- library.n0i.net/programming/perl/articles/fm_prototypes>
- It is important to note that modern perl allows a non-predeclared
- subroutine to be called without the '&' character, as long as its
- call uses proper parentheses:
- foo 'str', 2; # will trigger errors if foo is not predeclared
- foo('str', 2); # ok even if foo is not predeclared
- &foo('str', 2); # ditto; but the '&' is old-style and redundant
- Note also that the prototype indicating "no argument":
- sub func() { ... }
- can actually be useful, and has no discernible downsides, so we'll
- keep using it where it makes sense.
- Also, in few, selected cases, we *want* to have subroutines behave like
- perl builtins (e.g., we want the 'append_exeext' function to be able
- to take a code block as first argument). In such cases, we will of
- course continue to make use of perl subroutine prototypes.
- Let's finally see an example that might clarify the kind of problems the
- use of subroutine prototypes in perl can cause. This is just scratching
- the surface; there are several other aspects, typically subtler and more
- dangerous, that are not touched here.
- If you have the prototyped subroutine definition:
- sub foo ($@)
- {
- my $s = shift;
- print "SCALAR: $s\n";
- print "ARRAY: @_\n";
- }
- and call 'foo' in code like:
- @list = (-1, 0, 1);
- foo(@list);
- you won't get a compile-time nor a runtime error (as a naive interpretation
- of the "prototype" characterization would let you think). Rather, the
- prototype will cause the array '@list' will be coerced into scalar context
- before being passed too 'foo', which means that its *length* (3) will be
- passed to 'foo' as first argument; and since no further arguments are
- present after '@list', that *void* will be coerced to an empty list before
- being passed to 'foo'.
- So code above will have the result of printing:
- SCALAR: 3
- ARRAY:
- Quite tricky, and definitely a behaviour we don't want to rely on.
- * automake.in: Delete most subroutine prototypes. Fix few of the
- remaining ones. Related minor simplifications and adjustments.
- * lib/gen-perl-protos: Adjust.
- 2013-03-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'preproc' into maint
- * preproc:
- preproc: enhance and extend tests
- preproc: add support for relative names in included fragments
- 2013-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: one stray reference to older versioning scheme
- * lib/Automake/Options.pm: Here, in a FIXME comment: reference
- "Automake 3.0" rather than "Automake 1.15".
- 2013-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- aclocal: fix for more-than-once specified directories
- aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
- 2013-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: more adjustments to the new versioning scheme
- This is a follow-up to commit 'v1.13.1b-11-g97aaf12'.
- * automake.in: Adjust a comment.
- * PLANS: Adjust several files in here.
- 2013-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr13514' into branch-1.13.2
- * fix-pr13514:
- aclocal: fix for more-than-once specified directories
- aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
- 2013-02-21 Pavel Raiskup <praiskup@redhat.com>
- aclocal: fix for more-than-once specified directories
- Related to automake bug#13514.
- Do not consider directories for extra m4 files multiple times in
- 'aclocal'. Doing so caused problems on older packages that specify
- configure.ac: AC_CONFIG_MACRO_DIRS([m4])
- Makefile.am: ACLOCAL_AMFLAGS = -I m4
- if the 'm4' directory does not exist when aclocal is called the first
- time by autoreconf.
- See:
- <http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>
- * aclocal.in (scan_m4_files): Remove duplicates in @user_includes.
- * t/aclocal-macrodir.tap: Extend.
- * t/aclocal-macrodirs.tap: Likewise.
- 2013-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'docstrings-tweaks' into maint
- * docstrings-tweaks:
- cosmetics: fix some "docstring-like" comments in automake
- 2013-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- coverage: expose automake bug#13760
- tests: refactor/enhance tests about make dry-run mode
- maint: describe new versioning and branching scheme, and adjust to it
- 2013-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'new-versioning-scheme' into branch-1.13.2
- * new-versioning-scheme:
- maint: describe new versioning and branching scheme, and adjust to it
- 2013-02-20 Pavel Raiskup <praiskup@redhat.com>
- aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
- Related to automake bug#13514.
- Every package which does not need to have the local m4 macro
- directory pre-existing in the version control system (because
- e.g., it does not have nor need any private m4 macros) would
- fail during the "autoreconf -vfi" phase if AC_CONFIG_MACRO_DIRS([m4])
- is specified in configure.ac (it could be to instruct tools like
- 'autopoint' and 'libtoolize' to use 'm4' as the local directory
- where to install definitions of their m4 macros, and to instruct
- aclocal to look into it). The failure would go like this:
- autoreconf: Entering directory `.'
- autoreconf: running: aclocal --force
- aclocal: error: couldn't open directory 'm4': No such file or directory
- autoreconf: aclocal failed with exit status: 1
- The problem is that when 'aclocal' is run for the first time during
- 'autoreconf', the directory 'm4' does not exist yet. It will be
- created by e.g., 'libtoolize' or 'autopoint' later on. During the
- second 'aclocal' run, the 'm4' directory exists and aclocal does not
- complain.
- To work around this issue, we degrade the error to a simple warning.
- The warning is still quite useful when aclocal is run by hand - so
- we are not removing completely.
- See also:
- <http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>
- <http://lists.gnu.org/archive/html/automake-patches/2010-02/msg00030.html>
- <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=565663>
- <https://bugzilla.redhat.com/show_bug.cgi?id=901333>
- * aclocal.in (SCAN_M4_DIRS_SILENT, SCAN_M4_DIRS_WARN)
- (SCAN_M4_DIRS_ERROR): New constants.
- (scan_m4_dirs): Change the second parameter name to $ERR_LEVEL to
- better reflect new semantic. Use new constants.
- (scan_m4_files): Adjust to reflect the new 'scan_m4_dirs' semantics.
- * t/aclocal-macrodir.tap: Adjust.
- * t/aclocal-macrodirs.tap: Likewise.
- * THANKS: Update.
- * NEWS: Likewise.
- Suggested-by: Ben Pfaff <blp@cs.stanford.edu>
- 2013-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#13760
- * t/make-dryrun.tap: Here.
- * THANKS: Update with the name of the bug reporter.
- 2013-02-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: refactor/enhance tests about make dry-run mode
- * t/make-dryrun.tap: Here.
- 2013-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: describe new versioning and branching scheme, and adjust to it
- See discussion about automake bug#13578 for more details and background.
- Basically, for the versioning scheme:
- - micro versions only for bug and regression fixing;
- - minor versions for new backward-compatible features, and new
- non-fatal deprecations;
- - major versions for backward-incompatibilities, complex new
- features, and major refactoring.
- And for the git branching scheme:
- + branch 'next' is for the upcoming major version;
- + branch 'master' is now for the upcoming minor version;
- + branch 'maint' is for the upcoming micro (bug-fixing) version;
- + the merging hierarchy is: 'maint' -> 'master' -> 'next'.
- * HACKING (Automake versioning and compatibility scheme): New.
- (Working with git): Adjust.
- * NEWS: Update and fix.
- * aclocal.in: Adjust some "FIXME" messages.
- * automake.in: Likewise.
- * m4/mkdirp.m4: Likewise.
- * t/aclocal-acdir.sh: Likewise.
- * t/aclocal-macrodir.tap: Likewise.
- * t/aclocal-macrodirs.tap: Likewise.
- * lib/Automake/Options.pm: Likewise.
- * m4/internal/ac-config-macro-dirs.m4: Likewise.
- 2013-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix some "docstring-like" comments in automake
- * automake.in: Here. And remove some redundant ones.
- 2013-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'perl-sub-protos' into maint
- * perl-sub-protos:
- style: call perl functions 'like_this()', not '&like_this()'
- maint: use more perl subroutines prototypes in the automake script
- build: auto-generate perl subroutines prototypes for automake and aclocal
- refactor: rip module Automake::Language out of automake script
- 2013-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- typofix: in comments in 't/ax/test-lib.sh'
- tests on TAP: don't run the driver with perl unconditionally
- typofix: in comments in 'automake.in'
- tests: remove obsolete (and now wrong) comment
- typofix: in diagnostic in test 't/tap-realtime.sh'
- automake: fix reference to relevant tests in comments
- NEWS: we no longer plan to drop $(INCLUDES) support in next major version
- 2013-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in comments in 't/ax/test-lib.sh'
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- style: call perl functions 'like_this()', not '&like_this()'
- We can do so now that our build rules auto-generate a list of
- prototypes for all functions ins our scripts.
- * automake.in: Adjust throughout.
- * HACKING: Adjust advises.
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- preproc: enhance and extend tests
- * t/preproc-demo.sh: New test, a "demo" of how the new pre-processing
- feature could be used in a real-world package.
- * t/preproc-errmsg.sh: New test, check that error messages remain
- useful when the new pre-processing features are involved.
- * t/preproc-reldir.sh: Split up ...
- * t/preproc-basics.sh, t/preproc-c-compile.sh: ... into these two
- tests, with some refactorings, clean-up and enhancements.
- * t/list-of-tests.mk: Adjust.
- 2013-02-14 Peter Rosin <peda@lysator.liu.se>
- Stefano Lattarini <stefano.lattarini@gmail.com>
- preproc: add support for relative names in included fragments
- The rationale for this change is that it is annoying to have
- to repeat the directory name when including a Makefile fragment.
- For deep directory structures these repeats can generate a lot
- of bloat. It also hinders reuse and easy directory restructuring
- if all Makefile fragments have to know exactly where they live.
- Suggested by Bob Friesenhahn, and later discussed in bug#13524.
- In the course of discussion, the following notations were rejected:
- &{reldir}& - to hard to type, {reldir} - interferes with ${reldir},
- {am_reldir} - short form {D} interferes with ${D}, @am_reldir@ - short
- form @D@ interferes with AC_SUBST([D]) as well as invading the
- config.status turf. Other notations were also suggested...
- * automake.in (read_am_file): Add third argument specifying the
- relative directory of this Makefile fragment compared to the
- main Makefile. Replace %reldir% and %canon_reldir% in the
- fragment with this relative directory (with slashes etc, or
- canonicalized).
- (read_main_am_file): Adjust.
- * t/preproc-reldir.sh: New test.
- * t/list-of-tests.mk: Augment.
- * doc/automake.texi (Include): Document the new feature.
- NEWS: Add new feature.
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests on TAP: don't run the driver with perl unconditionally
- * t/ax/tap-setup.sh: When a 'Makefile.am' was pre-existent in the
- test directory at the moment the client test script sourced this
- file, said 'Makefile.am' was tweaked to provide it with a proper
- definition of TEST_LOG_DRIVER. However, there was an error in this
- automatic definition, since it caused the TAP test driver to be
- unconditionally invoked with perl. This wasn't an issue in most
- situations, since perl is smart enough to re-execute a given script
- with the proper interpreter if it sees a she-bang line that doesn't
- seem to point to perl itself. Still, there is no reason to do
- something blatantly wrong even if our tools correct the dumb mistake
- for us. So fix the TEST_LOG_DRIVER definition.
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in comments in 'automake.in'
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove obsolete (and now wrong) comment
- * t/ax/am-test-lib.sh: Here.
- 2013-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in diagnostic in test 't/tap-realtime.sh'
- 2013-02-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: use more perl subroutines prototypes in the automake script
- * automake.in: Throughout this file. Note that these new prototypes
- are not much useful, since many subroutine calls still use the old
- '&foo' form; but we'll take care of that in later patches.
- * lib/Automake/Language.pm (target_hook): Call the '_target_hook'
- of the given language in a more modern form, avoiding '&'.
- 2013-02-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: auto-generate perl subroutines prototypes for automake and aclocal
- This will allow us to avoid either using the '&foo' invocation form when
- invoking a subroutine before its definition, or having to maintain the
- list of prototypes by hand (with the risk of having it become incomplete
- or fall out-of-sync when future edits to the automake and aclocal scripts
- are done).
- * Makefile.am (automake, aclocal): Automatically generate a list of
- prototypes by looking at the subroutines definitions.
- * bootstrap.sh: Likewise, when generating the temporary automake and
- aclocal scripts used for bootstrapping.
- * automake.in: Add a placeholder that will be tracked by the new recipes
- and substituted with the computed prototypes. Remove existing prototypes,
- that are now superfluous. Some adjustments required by the new, more
- comprehensive prototypes declarations.
- * aclocal.in: Likewise.
- * maintainer/syntax-checks.mk (sc_diff_automake, sc_diff_aclocal): Adjust.
- 2013-02-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: rip module Automake::Language out of automake script
- This is just a preparatory patch in view of future changes.
- * lib/Automake/Language.pm: New module, ripped out from ...
- * automake.in: ... here. Related adjustments.
- * Makefile.am (dist_perllib_DATA): List the new module.
- 2013-02-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: fix reference to relevant tests in comments
- Some of those tests had been renamed in recent or less-recent changes.
- 2013-02-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: we no longer plan to drop $(INCLUDES) support in next major version
- For a rationale and related discussion, see:
- <http://lists.gnu.org/archive/html/automake/2013-02/msg00001.html>
- And note that support for INCLUDES has not been re-introduced in the
- master branch yet, at the moment of writing; but we plan to definitely
- do so before the next major release.
- 2013-01-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
- maint: version bump after beta release 1.13.1b
- NEWS: typofix
- release: beta release 1.13.1b (will become 1.13.2)
- 2013-01-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
- This change is for the maint branch.
- The only IRIX-specific support that is going to actually be removed in
- the next major Automake versions is the depcomp support for the SGI
- compiler. That means that automatic dependency tracking will no
- longer work with that compiler, but "normal" compilation should still
- work, at least until the compiler is supported by Autoconf.
- So there is no point in alarming our users by stating in the NEWS file
- that "support for IRIX and the SGI compilers is going to be removed";
- after all, while we don't test on nor particularly care about IRIX
- anymore, that doesn't mean we are deliberately breaking it, and the
- likelihood of an intended breakage there is very low.
- See:
- <http://lists.gnu.org/archive/html/automake-patches/2013-01/msg00164.html>
- <http://lists.gnu.org/archive/html/automake-patches/2013-01/msg00165.html>
- * NEWS (Future backward-incompatibilities: Adjust. Improve explanation
- of our rationale for dropping SGI support. Fix an unrelated typo while
- at it.
- Suggested-by: Peter Rosin <peda@lysator.liu.se>
- 2013-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release 1.13.1b
- * configure.ac (AC_INIT): Bump version number to 1.13.1c.
- * m4/amversion.m4: Likewise (autoupdated by "make bootstrap").
- 2013-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: typofix
- 2013-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.13.1b (will become 1.13.2)
- * configure.ac (AC_INIT): Bump version number to 1.13.1b.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- * branch-1.13.2:
- docs: '.txi' and '.texinfo' extensions are deprecated
- NEWS: document recent documentation improvements
- docs: more precise cross reference
- docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
- docs: improve documentation of 'dist-*' targets slightly
- docs: make even clearer 'dist-gzip' is the default.
- docs: document 'dist-xz' together with the other 'dist-*' options
- docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
- warn: correct broken hyperlink in warning message
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: '.txi' and '.texinfo' extensions are deprecated
- And Automake will warn about them (since commit 'v1.13.1-6-ge1ed314').
- * doc/automake.texi (Texinfo): Adjust.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: document recent documentation improvements
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: more precise cross reference
- See automake bug#13520.
- * doc/automake.texi (The Types of Distributions): Here,
- cross-reference "List of Automake options" rather then
- the more generic node "Options". Improve wording while
- at it.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
- Both the options and the formats; and they might be deprecated
- and removed in future automake versions (see discussion on
- automake bug#13324).
- In any case, it's better if the documentation starts advising
- against their use right now.
- * doc/automake.texi (The Types of Distributions): Here.
- (List of Automake options): And here.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: improve documentation of 'dist-*' targets slightly
- * doc/automake.texi (The Types of Distributions): Here.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: make even clearer 'dist-gzip' is the default.
- See automake bug#13520.
- * doc/automake.texi (The Types of Distributions): Here.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: document 'dist-xz' together with the other 'dist-*' options
- See automake bug#13520.
- * doc/automake.texi (List of Automake options): Here.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
- See automake bug#13519.
- * doc/automake.texi: Adjust.
- 2013-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- warn: correct broken hyperlink in warning message
- * automake.in (scan_autoconf_traces): Here, when an use of the
- deprecated two- and three-arguments forms of AM_INIT_AUTOMAKE
- is detected.
- Fixes automake bug#13519.
- 2013-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more information about Lex and Yacc programs
- * t/get-sysconf.sh: Try to also get the version of '$LEX' and '$YACC'.
- This will help debugging of user-reported problems.
- 2013-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- lint: fix spurious failure for 'sc_rm_minus_f' syntax check
- * maintainer/syntax-checks.mk (sc_rm_minus_f): Also exempt
- file 't/rm-f-probe.sh'.
- 2013-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: bump version 1.13.1a -> 1.13.2a
- The 1.13.2 bug-fixing release will ship from the 'branch-1.13.2' git
- branch, not from the 'maint' one, since the latter contains changes
- that are non-trivial and hasn't cooked enough yet. The 'maint' branch
- will give rise to the 1.13.3 release instead, eventually. Adjust the
- version number to match.
- * configure.ac (AC_INIT): Bump version number to 1.13.2b.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'branch-1.13.2' into maint
- That branch is for the "emergency" bug-fixing release 1.13.2.
- * branch-1.13.2:
- maint: update copyright in files generated by automake and aclocal
- tests: avoid a spurious failure when running inside Emacs
- tests: make two new test executable
- m4: rename an m4 file to a more appropriate name
- NEWS: update w.r.t. recent documentation fixes
- compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
- docs: parallel-tests is no longer experimental
- docs: serial-tests are not deprecated, just discouraged
- NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
- 2013-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: update copyright in files generated by automake and aclocal
- * bootstrap.sh ($RELEASE_YEAR): Bump top 2013.
- * configure.ac ($RELEASE_YEAR): Likewise.
- 2013-01-21 Thien-Thi Nguyen <ttn@gnuvola.org> (tiny change)
- tests: avoid a spurious failure when running inside Emacs
- Some versions of Emacs set the environment variable 'EMACS' to 't'
- for child processes. Thus, when running from inside Emacs, "$(MAKE) -e"
- erroneously allows the 't' to override the one in the Makefile.
- * t/lisp-flags.sh: Unset var 'EMACS', fixing the issue.
- 2013-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make two new test executable
- * t/backslash-issues.sh: This.
- * t/extra-data.sh: And this.
- Issue revealed by the 'sc_tests_executable' maintainer check.
- 2013-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: rename an m4 file to a more appropriate name
- * m4/obsolete-err.m4: Rename ...
- * m4/obsolete.m4: ... like this.
- * Makefile.am (dist_automake_ac_DATA): Adjust.
- * t/ansi2knr-no-more.sh: Likewise.
- 2013-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: update w.r.t. recent documentation fixes
- 2013-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
- Make them give runtime warnings in the obsolete category, but apart
- from that, make them behave as they did in Automake 1.12.x and earlier.
- While removing those macros seemed quite harmless, because it didn't put
- a real burden on the developers (requiring them just to do a quick edit
- to configure.ac), it turned out to place an unsustainable burden (or at
- least, a burden perceived as such) on distro packagers who use the latest
- Automake to bootstrap existing packages. Many of those packages, while
- having likely updated to AC_CONFIG_HEADERS in their development version,
- still used AM_CONFIG_HEADER in their existing released versions, and the
- removal of this macro would have thus forced the Fedora packagers to
- patch all of them. References:
- <http://www.mail-archive.com/devel@lists.fedoraproject.org/msg52840.html>
- <http://www.spinics.net/lists/fedora-devel/msg175922.html>
- <http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>
- In addition, the Fedora packagers have already decided to patch their
- Automake 1.13.1 to reinstate the AM_CONFIG_HEADER and AM_PROG_CC_STDC
- macros (plus other macros that I don't believe it's worth worrying about):
- <http://www.spinics.net/lists/fedora-devel/msg176098.html>
- <http://www.mail-archive.com/devel@lists.fedoraproject.org/msg53030.html>
- <http://pkgs.fedoraproject.org/cgit/automake.git/commit/?id=ffe6bc39>
- So, rather than having one more incompatibility floating around, we
- better mirror that change (or, actually, its relevant parts) in the
- upstream.
- * m4/obsolete-err.m4 (AM_CONFIG_HEADER, AM_PROG_CC_STDC): Revert to the
- older semantics, plus a runtime warning in the 'obsolete' category.
- * t/backcompat6.sh: Use AM_CONFIG_HEADER once again.
- * t/am-config-header-no-more.sh: Rename ...
- * t/am-config-header.sh: ... like this, and adjust.
- * t/am-prog-cc-stdc-no-more.sh: Rename ...
- * t/am-prog-cc-stdc.sh: ... like this, and adjust.
- * t/list-of-tests.mk: Adjust.
- * NEWS: Update.
- 2013-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'rm-f-probe' into maint
- * rm-f-probe:
- init.m4: add probe to check "rm -f" without args work
- 2013-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: parallel-tests is no longer experimental
- So don't declare it as such in the documentation.
- Reported by Brandon Black:
- <http://lists.gnu.org/archive/html/automake/2013-01/msg00052.html>
- * doc/automake.texi: Adjust.
- * THANKS: Update.
- 2013-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: serial-tests are not deprecated, just discouraged
- We don't plan to remove support for them, nor to have the serial-tests
- option give any kind of runtime warning, so don't alarm the users
- still using serial tests with pointless "deprecation" or "obsolescence"
- warnings.
- Fixes automake bug#13478.
- See also:
- <http://lists.gnu.org/archive/html/automake/2013-01/msg00058.html>
- * doc/automake.texi: Adjust.
- * THANKS: Update.
- 2013-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
- See commit v1.13.1-109-g030ecb4 of 2013-01-16, "compat: restore
- AM_PROG_MKDIR, again", for the rationale; that rationale is now
- also copied...
- * PLANS/obsolete-removed/am-prog-mkdir-p.txt: ... here.
- 2013-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
- See commit v1.13.1-109-g030ecb4 of 2013-01-16, "compat: restore
- AM_PROG_MKDIR, again", for the rationale.
- 2013-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- init.m4: add probe to check "rm -f" without args work
- See automake bug#10828.
- POSIX will say in a future version that running "rm -f" with no argument
- is OK: <http://austingroupbugs.net/view.php?id=542>).
- We want to be able to make that assumption in our Makefile recipes.
- So we introduce an aggressive probe to check that the usage we want is
- actually supported "in the wild" to an acceptable degree.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Implement the probe. To make any issue
- more visible, cause the running configure to be aborted by default if
- the 'rm' program in use doesn't match our expectations; the user can
- still override this though, by setting the ACCEPT_INFERIOR_RM_PROGRAM
- environment variable to "yes".
- * t/spy-rm.tap: Update heading comments.
- * t/rm-f-probe.sh: New test.
- * t/list-of-tests.mk: Add it.
- * PLANS/rm-f-without-args.txt: Adjust.
- 2013-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdir-objects: complain if it isn't enabled
- Since the next major automake version will make the behaviour so far
- only activated with the 'subdir-object' option mandatory, it's better
- if we start warning users not using that option.
- As suggested by Peter Johansson, we strive to avoid the warning when
- it would be irrelevant, i.e., if all source files sit in "current"
- directory.
- See automake bug#13378.
- * automake.in (handle_single_transform): Print the warning when
- necessary.
- * t/subobj.sh: Enhance.
- * t/ax/depcomp.sh: Adjust.
- * t/cscope.tap: Likewise.
- * t/depcomp8a.sh: Likewise.
- * t/depcomp8b.sh: Likewise.
- * t/ext2.sh: Likewise.
- * t/extra-portability.sh: Likewise.
- * t/fort2.sh: Likewise.
- * t/fort4.sh: Likewise.
- * t/fort5.sh: Likewise.
- * t/lex-line.sh: Likewise.
- * t/libtool3.sh: Likewise.
- * t/ltinstloc.sh: Likewise.
- * t/ltlibsrc.sh: Likewise.
- * t/ltorder.sh: Likewise.
- * t/parallel-tests-suffix-prog.sh: Likewise.
- * t/sourcefile-in-subdir.sh: Likewise.
- * t/specflg9.sh: Likewise.
- * t/subobj4.sh: Likewise.
- * t/subobj7.sh: Likewise.
- * t/subpkg-yacc.sh: Likewise.
- * t/subpkg.sh: Likewise.
- * t/suffix-custom-subobj-and-specflg.sh: Likewise.
- * t/vala-libs.sh: Likewise.
- * t/vala-non-recursive-setup.sh: Likewise.
- * t/yacc-grepping2.sh: Likewise.
- * t/yacc-line.sh: Likewise.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: update w.r.t. latest changes
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- ywrap: remove an obsolete FIXME comment
- If it were still relevant, somebody would have complained by now.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- ywrap: style fixes (no semantic change intended)
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- convenience: "make lint" as an alias for "make maintainer-check"
- * maintainer/syntax-checks.mk (lint): Here. I'm a lazy typist ...
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: typofix in manual
- * doc/automake.texi (Yacc and Lex): Here, don't write "automake -i"
- where "automake -a" is actually intended. Re-wrap some text while
- at it.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: using multiple lexers in a single program
- Using Flex and Automake built-in support for lex, that is possible.
- A little tricky, but not difficult.
- See:
- <http://lists.gnu.org/archive/html/automake/2010-10/msg00081.html>
- <http://lists.gnu.org/archive/html/automake/2009-03/msg00061.html>
- * t/lex-multiple.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove most uses of the AM_PROG_CC_C_O obsolete macro
- Our NEWS file says its use will no longer be required in Automake
- 1.13, so better make sure that is actually the case.
- * Several tests: Adjust.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors
- Suggested by Eric Blake.
- * t/am-prog-cc-c-o.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- INSTALL: update copyright years
- 2013-01-12 Mike Frysinger <vapier@gentoo.org> (tiny change)
- ithreads: use runtime (not configure time) detection of perl threads
- I can't imagine the runtime checks being a big runtime penalty, so there
- shouldn't be a need to do the checks at configure check and hardcode the
- result in the generated automake.
- With the current system, it means if you change your perl config (build
- perl w/threads, build automake, build perl w/out threads), or deploy a
- compiled automake package on a different system (build had threads, but
- deployed system does not), you get errors when trying to run automake.
- So take the logic from configure.ac and move it to the one place where
- PERL_THREADS is used (lib/Automake/Config.in) and do the version/config
- checking at runtime.
- * bootstrap.sh (PERL_THREADS): Delete assignment and use in sed.
- * configure.ac (am_cv_prog_PERL_ithreads, PERL_THREADS): Delete all code
- related to these two variables.
- * lib/Automake/Config.in (perl_threads): Initialize to 0, and only set to
- 1 if the perl version is at least 5.007_002, and useithreads is in Config.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- copyright: add few missing copyright notices
- Issue revealed by warnings from "make update-copyright".
- * maintainer/am-ft: Add copyright notice.
- * maintainer/am-xft: Likewise.
- * maintainer/rename-tests: Likewise.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: files in PLANS are to be exempted from copyright notice
- * maintainer/maint.mk (update-copyright): Adjust.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable
- * maintainer/maint.mk (update-copyright): Here. The 'lib/update-copyright'
- already honoured it, but some parts of our recipe didn't. This has caused
- the incomplete copyright bump that was fixed by the previous patch.
- 2013-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- copyright: update some copyright years
- With "make update-copyright". Apparently they were missed in the
- last bump.
- * bootstrap.sh, configure.ac, t/txinfo-builddir.sh: In these files.
- 2013-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- compile: use 'compile' script when "-c -o" is used with losing compilers
- Do so seen when only source files in the "current" directory are present.
- This commit is part of a series of related changes addressing automake
- bug#13378 (see also the plan 'PLANS/subdir-objects.txt').
- Before this change, Automake-generated C compilation rules mistakenly
- passed the "-c -o" options combination unconditionally (even to losing
- compiler) when the 'subdir-objects' was used but sources were only
- present in the top-level directory. Issue spotted by Nick Bowler:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#35>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#44>
- We fix this by having Automake redefine AC_PROG_CC to take over the role
- of AM_PROG_CC_C_O and to require the 'compile' script unconditionally
- (albeit that will continue to be invoked only when inferior compilers
- are detected).
- Among other things, this means AM_PROG_CC_C_O explicitly is no longer
- required; that macro is still supported for backward-compatibility, but
- calling it is basically a no-op now.
- This change has some pros and some cons (obviously, we believe the former
- outweighs the latter). Here are the most relevant ones:
- + Pros 1:
- Some logic in the Automake script has been simplified.
- + Pros 2:
- That simplification has automatically fixed an actual bug (see
- Nick's mails referenced above; admittedly, that was present only in
- corner-case situations, but still); the test 't/ccnoco4.sh', which
- demonstrated the bug and has been failing so far, now passes.
- + Pros 3:
- Things works more "automagically" now (no need to manually add the
- AM_PROG_CC_C_O macro to configure.ac anymore).
- * Cons 1:
- The 'compile' script will be required in all projects using C
- compilation; this will only be a problem for packages not using
- '--add-missing'. However, such packages are definitely more rare
- than the ones using '--add-missing', and adjusting them will be
- trivial -- just copy the compile script over from the new Automake
- installation.
- * Cons 2:
- The copy & paste of autoconf internals hack this change has introduced
- in our "rewrite" of AC_PROG_CC is really an egregious abomination. It
- can only be justified with the fact that we expect future versions of
- autoconf to implement the semantics we need directly in AC_PROG_CC, so
- that we'll be able to leverage that (since Automake 1.14 will require
- the latest Autoconf version released).
- Now, the detailed list of file-by-file changes ...
- * automake.in ($seen_cc_c_o): Remove this global variable.
- (scan_autoconf_traces): Don't set it, and do not trace the
- 'AM_PROG_CC_C_O' m4 macro.
- (lang_c_rewrite): Remove, no longer needed.
- * doc/automake.texi: Adjust expected "autoreconf --install" output
- in the amhello example. Remove statements about the need for the
- AM_PROG_CC_C_O macro. Report it is obsolete now.
- * m4/init.m4: Re-write AC_PROG_CC to append checks about whether the
- C compiler supports "-c -o" together. These checks have basically
- been ripped out (with adaptations) from the 'AC_PROG_CC_C_O' macro
- of Autoconf and ...
- * m4/minuso.m4 (AM_PROG_CC_C_O): ... this macro of ours, which has
- thus basically become a no-op.
- * t/ax/am-test-lib.sh (am_setup_testdir): Also copy the 'compile'
- script in the test directory; if we don't do so, every test using
- AC_PROG_CC should call automake with the "--add-missing" option, or
- copy the 'compile' script itself.
- * t/cond11.sh: No need to create a dummy 'compile' script: that is
- already brought in by 'am_setup_testdir()', that is automatically
- invoked when 'test-lib.sh' is sourced.
- * t/add-missing.tap: Adjust: we expect the 'compile' script to be
- required by a mere AC_PROG_CC call now.
- * t/dist-auxdir-many-subdirs.sh: Likewise.
- * t/specflg6.sh: Likewise.
- * t/subobj4.sh: Likewise.
- * t/cxx-lt-demo.sh: Likewise, and update comments to match.
- * t/distcom2.sh: Enhance a little.
- * t/dollarvar2.sh: Adjust.
- * t/extra-portability.sh: Likewise.
- * t/libobj19.sh: Likewise.
- * t/per-target-flags.sh: Likewise.
- * t/repeated-options.sh: Likewise.
- * t/subobj.sh: Likewise, and enhance a little.
- * t/ccnoco2.sh: Remove as obsolete.
- * t/list-of-tests.mk (handwritten_TESTS): Adjust.
- (XFAIL_TESTS): Remove 't/ccnoco4.sh'.
- * NEWS: Update.
- 2013-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: suggest more checks before releasing
- In particular, "make check-no-trailing-backslash-in-recipes",
- "make check-cc-no-c-o" and "make maintainer-check" should also
- be run.
- 2013-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: can fake a compiler not grasping "-c -o" -- globally in all tests
- The ability to easily do so will be quite important in upcoming changes
- about C compilation handling and semantics of the 'subdir-objects'
- option. Refer to the extensive discussion about automake bug#13378 for
- more details: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378>.
- See also commit 'v1.13.1-34-g744cd57' of 2013-01-08, "coverage: compile
- rules used "-c -o" also with losing compilers".
- * t/ax/cc-no-c-o.in: New, a "C compiler" that chokes when the '-c' and
- '-o' options are passed together to it on the command line.
- * Makefile.am (t/ax/cc-no-c-o): Generate this script from it.
- (noinst_SCRIPTS, CLEANFILES): Add it.
- (EXTRA_DIST): Add 't/ax/cc-no-c-o.in'.
- (check-cc-no-c-o): New target, runs the whole testsuite with 'cc-no-c-o'
- as the C compiler (bot GNU and non-GNU).
- * .gitignore: Update.
- * t/ccnoco.sh: Use the new script instead of duplicating it.
- * t/ccnoco3.sh: Likewise.
- * t/ccnoco4.sh: Likewise.
- * t/self-check-cc-no-c-o.sh: New testsuite self-check.
- * t/list-of-tests.mk: Adjust.
- 2013-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/INSTALL: Update.
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- * lib/gendocs_template: Likewise.
- * lib/gitlog-to-changelog: Likewise.
- * lib/gnupload: Likewise.
- * lib/texinfo.tex: Likewise.
- * lib/update-copyright: Likewise.
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in comments in GNUmakefile
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Rename 'maint/' -> 'maintainer/', for Git's sake
- Otherwise, Git gets confused by the fact that a directory ('maint')
- is named like a branch, and forces me to tweak the command line to
- resolve the ambiguity for it.
- * maint/: Rename ...
- * maintainer/: ... like this.
- * Makefile.am, GNUmakefile: Adjust.
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: minor typofix
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: bug-tracker, the PLANS directory, and how to plan "big" changes
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: rewindable branches should live in the 'experimental/*' namespace
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: fixlets about git branch rewinding policy
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: commit messages are not to follow GCS ChangeLog rules too strongly
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: "detailed explanation" in commit messages is almost mandatory
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: we use "merge --log" even when merging master
- 2013-01-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: typofix
- 2013-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- depend2.am: fix comments on verbosity of compilation rules
- The situation and decisions described on those comments have become
- quite outdated since the introduction of the silent-rules support.
- Today, the general idea is to have nice, terse output if silent rules
- are enabled, and complete, faithful, very verbose output if they are
- not -- without trying to "massage" this verbose output in a more
- pleasant form if that would cause complication in the affected code.
- So it's better to just drop the obsolescent comments.
- Note that we don't start simplifying the existing rules according
- to this new philosophy; that will only be done when touching some
- existing code (for the 'depend2.am' code, that will probably happen
- on the master branch).
- 2013-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- depend2.am: improve comments a little
- * lib/am/depend2.am: The "fastdep" mode is supported not only for
- gcc 3.x, but for gcc 3.x or later, in particular, for all gcc in
- the 4.x series (at the time of writing, the latest release is 4.72).
- Adjust the comments to match, and re-wrap them while at it.
- 2013-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: automake 1.14 is to assume "rm -f" with no args is OK
- See automake bug#10828.
- * PLANS/rm-f-without-args.txt: New.
- 2013-01-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: we want to active subdir-objects unconditionally in automake 1.14
- See automake bug#13378.
- * PLANS/subdir-objects.txt: New.
- * t/ccnoco4.sh: Improve heading comments a little.
- 2013-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: adjust stale references to old test names
- * t/remake-renamed-m4-macro-and-file.sh: Adjust to reflect to old
- "acloca22 -> t/aclocal-deleted-header.sh" test rename.
- * t/aclocal-pr450.sh (configure.ac): Use '$me' in the AC_INIT call,
- instead of hard-coding the old name of this test, i.e., "acloca19".
- 2013-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename the last aclocal test with dumb name
- * t/acloca10.sh: Rename ...
- * t/aclocal-I-install.sh: ... to this saner and slightly more
- self-explanatory name.
- * t/list-of-tests.mk: Adjust.
- 2013-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix an old botched change to an aclocal test
- * t/acloca10.sh (configure.ac): Here, invoke the m4 macro 'MACRO2'
- before the macro 'MACRO1' (the related test 't/aclocal-I-order-2.sh'
- does the opposite). This reverts a botched edit done (by myself,
- oops) in commit 'v1.11-1335-gefdc3e1' of 2011-09-11, "tests: minor
- optimizations/simplifications in some aclocal tests", and makes the
- behaviour of the test match once again what is stated in the
- heading comments. While at it, improve those same heading comments
- a little.
- 2013-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix some botched inter-test references in heading comments
- * t/aclocal-I-order-2.sh: Here.
- * t/aclocal-I-order-2.sh: And here.
- 2013-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: compile rules used "-c -o" also with losing compilers
- If the 'subdir-objects' option is used, Automake-generated rules for
- C compilation pass both the "-c" and "-o" options to the C compiler,
- *unconditionally*. There are some compilers that choke on such an
- usage, but the AM_PROG_CC_C_O macro takes care of them (it does so by
- redefining $CC to use the Automake-provided 'compile' wrapper script
- automatically, if a losing compiler is detected at configure runtime).
- Unfortunately, in case the 'subdir-objects' option is specified in a
- Makefile.am, but all the source files resided anyway in the top-level
- directory (relative to the Makefile.am), Automake do *not* complain
- if AM_PROG_CC_C_O wasn't invoked in 'configure.ac' -- all the while
- still passing "-c -o" to the compiler invocations. This could cause
- compilation failures with losing compilers if the user forget to call
- AM_PROG_CC_C_O in 'configure.ac' (and Automake would not warn him of
- the issue).
- Expose this bug in the testsuite.
- Issue identified by Nick Bowler in the discussion on automake bug#13378:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#35>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#44>
- * t/ccnoco4.sh: New test.
- * t/list-of-tests.mk (XFAIL_TESTS, handwritten_TESTS): List it.
- 2013-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: remove extra verbosity in creation of dirstamp directory
- * lib/am/texi-vers.am (%STAMPVTI%): Here.
- 2013-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: user can avoid distributing '.info' pages
- Can be done like this:
- AUTOMAKE_OPTIONS = info-in-builddir
- dist-info:
- @:
- Note that this usage is not yet documented: we might decide to go
- for a fully-fledged 'no-dist-info' flag, or something like that, in
- future automake version (this is not yet decided); in which case,
- it's better not to have people start to rely on the hack above.
- Still, there's no good reason to break it gratuitously, hence this
- test coverage.
- * t/txinfo-nodist-info.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2013-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'plans' into maint
- * plans:
- plans: add some on-going plans (already registered on the bug tracker)
- 2013-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: add some on-going plans (already registered on the bug tracker)
- 2013-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'plans' into maint
- * plans:
- plans: add the "PLANS" directory
- Conflicts:
- Makefile.am
- 2013-01-04 Karl Berry <karl@gnu.org>
- docs: mention dist-hook help for EXTRA_DIST
- * automake.texi (Basics of Distribution): mention dist-hook
- as working around the problems of whole directories in EXTRA_DIST.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: remove workaround for older Texinfo (4.1)
- * lib/am/texibuild.am: Here, in the rules generating HTML output.
- We can do so because, since Automake 1.13, we require Texinfo >= 4.9
- anyway.
- Basically a backport of Automake-NG commit '1.12.2-879-ge6caf5e'.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: improve wordings in entry deprecating suffix-less info files
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: don't enable 'color-tests' automake option explicitly
- It's enabled by default since commit 'v1.12.2-136-g2d5571e' (this
- change appeared in Automake 1.13).
- * configure.ac (AM_INIT_AUTOMAKE): Drop 'color-tests'.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: enable all warnings as fatal in our own build system
- Automake should of course be able to bootstrap itself in a
- warning-free manner w.r.t. the Autotools. So make any failure
- to do so fatal. Not doing so caused the regression fixed by
- previous commit 'v1.13.1-22-ga790fae' to go unnoticed.
- * configure.ac (AM_INIT_AUTOMAKE): Add '-Werror' and '-Wall'.
- * bootstrap.sh: Pass the '-Wall -Werror' options to aclocal,
- automake and autoconf invocations.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: Texinfo sources and CLEANFILES definition should co-exist peacefully
- But they don't now, due to a regression introduced in commit
- 'v1.13.1-4-gc1a8f56'. Fix it. The regression was hitting our
- own build system!
- * automake.in (handle_texinfo_helper): Only complain if the
- 'info-in-builddir' is not active and a '.info' file (not any
- random file!) is listed in CLEANFILES or DISTCLEANFILES.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make two new test executable
- * t/backslash-issues.sh: This.
- * t/extra-data.sh: And this.
- Issue revealed by the 'sc_tests_executable' maintainer check.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'info-in-builddir' into maint
- * info-in-builddir:
- texi: deprecate hack about info files in CLEANFILES variables
- texi: info files can be generated in the builddir
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: better command line API
- * t/ax/runtest.in: Accept options '-k' and '--keep-testdirs' (same
- as exporting '$keep_testdirs' to "yes"). To improve compatibility
- with the "make check" interface, allow environment variables to be
- passes on the command line. Minor adjustments while at it.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move runtest.in away from the top-lever directory
- Not only this leaves the top-lever directory less cluttered, but
- helps in keeping the testsuite-related files more "centralized".
- * runtest.in: Move ...
- * t/ax/runtest.in: ... here. While at it, add customary
- '@configure_input@' comment line.
- * Makefile.am (runtest, EXTRA_DIST): Adjust.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: move more maintainer files in the 'maint/' subdir
- * maint.mk: Move ...
- * maint/maint.mk: ... here.
- * syntax-checks.mk: Move ...
- * maint/syntax-checks.mk: ... here.
- * Makefile.am: Adjust.
- * GNUmakefile: Likewise.
- 2013-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- plans: add the "PLANS" directory
- Individual files or sub-directories about future and on-going
- development plans in Automake will be added in follow-up commits.
- This new set of documents is meant to help ensure a more controlled
- and smooth development and evolution for Automake, in several ways.
- - Having the plans clearly spelled out should will avoid messy
- roadmaps with no clear way forward or with muddy or ill-defined
- aims or purposes; a trap this is too easy to fall into.
- - Keeping planned changes cooking and re-hashed for a while should
- ensure rough edges are smoothed up, transitions are planned in a
- proper way (hopefully avoiding debacles like the AM_MKDIR_PROG_P
- deprecation and the AM_CONFIG_HEADER too-abrupt removal), and
- "power users" have more chances of getting informed in due time,
- thus having all the time to prepare for the changes or raise
- objections against them.
- - Having the plans clearly stated and registered in a "centralized"
- location should make it more difficult to them to slip through
- the cracks, getting forgotten or (worse) only half-implemented.
- - Even for discussions and plans registered on the Bug Tracker
- as well, a corresponding entry in the PLANS directory can help
- in keeping main ideas summarized, and consensus and/or objections
- registered and easily compared.
- Motivation:
- <http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>
- Not a flatting picture for us (and maybe a little too harsh), but
- basically true and even spot-on in some regards.
- * PLANS/README: New.
- * Makefile.am (EXTRA_DIST): Distribute the whole PLANS directory.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more significant names for some tests
- * t/spy.sh: Rename...
- * t/spy-double-colon.sh: ... like this.
- * t/yacc4.sh: Rename...
- * t/yacc-misc.sh: ... like this.
- * t/yaccdry.sh: Rename...
- * t/yacc-dry.sh: ... like this.
- * t/yaccpp.sh: Rename...
- * t/yacc-cxx-grepping.sh: ... like this.
- * t/yaccvpath.sh: Rename...
- * t/yacc-vpath.sh: ... like this.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: add some of my maintainer-specific scripts
- They are likely not general enough for widespread use, but they
- are useful nonetheless.
- In the best-case scenario, they will start to be used by other
- people, and thus accordingly improved and made more general and
- flexible.
- In the worst case scenario, well, I still get to keep them in a
- centralized, blessed place, simplifying the deployment and use
- of them; so still a win for me :-)
- * maint/am-ft: New script.
- * maint/am-xft: Likewise.
- * maint/rename-tests: Likewise.
- * Makefile.am (EXTRA_DIST): Add them.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: reorganize tests on backslash issues
- * t/backsl.sh, t/backsl2.sh, t/backsl3.sh: Merge ...
- * t/backslash-issues.sh: ... into this test.
- * t/backsl4.sh: Rename ...
- * t/backslash-before-trailing-whitespace.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- style: add trailing ':' to some test cases
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: tweak tests on obsolete EXTRA_DATA variable
- * t/extra3.sh, t/extra4.sh: Merge ....
- * t/extra-data.sh: ... into this, with updated comments.
- * t/list-of-tests.mk: Adjust. Also Tweak the order in
- which some other tests are listed.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more significant names for some tests
- * t/extra5.sh: Rename ....
- * t/extra-dist-vpath-dir.sh: ... like this.
- * t/extra6.sh: Rename ....
- * t/extra-dist-dirs-and-subdirs.sh: ... like this.
- * t/extra7.sh: Rename ....
- * t/extra-dist-vpath-dir-merge.sh: ... like this.
- * t/extra8.sh: Rename ....
- * t/extra-programs-misc.sh: ... like this.
- * t/extra9.sh: Rename ....
- * t/extra-programs-and-libs.sh: ... like this.
- * t/extra10.sh: Rename ....
- * t/extra-dist-wildcards.sh: ... like this.
- * t/extra11.sh: Rename ....
- * t/extra-dist-wildcards-gnu.sh: ... like this.
- * t/extra12.sh: Rename ....
- * t/extra-dist-wildcards-vpath.sh: ... like this.
- * t/extradep.sh: Rename ....
- * t/extra-deps.sh: ... like this, and adjust heading comments.
- * t/extradep2.sh: Rename ....
- * t/extra-deps-lt.sh: ... like this, and adjust heading comments.
- * t/list-of-tests.mk: Adjust.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove few occurrences of trailing whitespace
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: re-introduce mention of two-args AM_INIT_AUTOMAKE invocation
- Albeit obsolescent and raising warnings in the 'obsolete' category,
- that usage is still supported, and will need to be until Autoconf
- improves its handling of configure-time-generated package version
- numbers. So it's better to explicitly document it again, stating
- that it is obsoleted but still working (and why), rather then leaving
- it as Yet Another Undocumented Feature (that will mysteriously and
- suddenly break some random day in the future).
- It's worth giving some background about how we ended up in the
- situation that this patch fixes.
- We had originally removed support for the long-deprecated two-args
- AM_INIT_AUTOMAKE invocation (see commit v1.12-67-ge186355). Before
- that removal could land in a released Automake version, Bob Friesenhahn
- made a quite compelling point that the two-args AM_INIT_AUTOMAKE
- invocation could still be useful for modern, maintained packages like
- GraphicsMagick, at least until Autoconf is fixed to offer better support
- for "dynamic" package versions (see commit v1.12.2-245-g2abe183 for more
- in-depth rationales and references). However, in that commit we didn't
- revert the removal of the *documentation* for this two-arguments
- AM_INIT_AUTOMAKE invocation (and no rationale for not doing so was given
- in the commit message). Time to remedy that.
- Indirectly suggested by Diego Elio Pattenò:
- <http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>
- * doc/automake.texi: Adjust.
- * NEWS: Update.
- * THANKS: Likewise.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: warn against '.txi' and '.texinfo' input suffixes
- The warning being in the 'obsolete' category. This is mostly to
- ease transition to Automake-NG (see commit v1.12.1-416-gd5459b9),
- and to discourage use of seldom-tested setups.
- * automake.in (handle_texinfo_helper): Warn against Texinfo input
- files with '.txi' or '.texinfo' suffixes.
- * NEWS: Update.
- * t/txinfo-other-suffixes.sh: Adjust and enhance.
- * t/txinfo-no-repeated-targets.sh: No longer use '.txi' and
- '.texinfo' extensions.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove two lines of dead code in automake
- * automake.in (scan_texinfo_file): Here, the definition and
- munging of '$infobase'.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: warn against suffix-less info files
- The warning being in the 'obsolete' category. This is mostly to
- ease transition to Automake-NG (see commit v1.12.1-392-ga0c7b6a),
- and to discourage use of seldom-tested setups.
- * automake.in (scan_texinfo_file): Warn against '@setfilename'
- directives that specify suffix-less output info files.
- * t/txinfo-without-info-suffix.sh: Adjust and enhance.
- * t/txinfo-makeinfo-error-no-clobber.sh: No longer use suffix-less
- info files in '@setfilename' directives.
- * t/primary-prefix-valid-couples.sh: Likewise.
- * t/txinfo-setfilename-repeated.sh: Likewise.
- * t/txinfo-vtexi2.sh : Likewise.
- * t/mdate2.sh: Likewise.
- * NEWS: Update.
- 2013-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: deprecate hack about info files in CLEANFILES variables
- For quite a long time, Automake has been implementing an undocumented
- hack which ensured that '.info' files which appeared to be cleaned (by
- e.g. being listed in the CLEANFILES or DISTCLEANFILES variables) were
- built in the builddir rather than in the srcdir; this hack was introduced
- to ensure better backward-compatibility with packages such as Texinfo,
- which did things like:
- info_TEXINFOS = texinfo.txi info-stnd.texi info.texi
- DISTCLEANFILES = texinfo texinfo-* info*.info*
- # Do not create info files for distribution.
- dist-info:
- @:
- in order not to distribute .info files.
- Now that we have the 'info-in-builddir' option that explicitly causes
- generated '.info' files to be placed in the builddir, this hack should
- be longer necessary, so we deprecate it with runtime warnings. It is
- scheduled to be removed altogether in Automake 1.14.
- * automake.in (handle_texinfo_helper): Raise proper runtime warnings
- if the hack is triggered.
- * NEWS: Update.
- * t/txinfo28.sh: Adjust.
- * t/txinfo23.sh: Likewise.
- * t/txinfo25.sh: Adjust and extend.
- * t/txinfo24.sh: Likewise.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: info files can be generated in the builddir
- User can now ask info files to be built in the $(builddir), rather than
- the $(srcdir), by specifying the Automake option 'info-in-builddir'.
- This feature was requested by the developers of GCC, GDB, GNU binutils
- and the GNU bfd library. See the extensive discussion about automake
- bug#11034 for more details.
- OK, to be honest, having '.info' files built in the builddir was
- *already* possible, but only using ugly and undocumented hacks involving
- definition of the CLEANFILES and/or DISTCLEANFILES. For example, the
- binutils project did something like this in the relevant 'Makefile.am':
- # Automake 1.9 will only build info files in the objdir if they are
- # mentioned in DISTCLEANFILES. It doesn't have to be unconditional,
- # though, so we use a bogus condition.
- if GENINSRC_NEVER
- DISTCLEANFILES = binutils.info
- endif
- See also the extensive discussion about automake bug#11034; in
- particular, the following messages:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#65>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#80>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#86>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#101>
- * lib/Automake/Options.pm (_is_valid_easy_option): Recognize the
- new 'info-in-builddir' option.
- * automake.in (handle_texinfo_helper): If that option is set,
- initialize '$insrc' to '0', so that info files will be generated
- in the builddir. Adjust comments to match.
- * t/txinfo-builddir.sh: New test.
- * t/list-of-tests.mk: Add it.
- * NEWS: Update.
- * doc/automake.texi: Document the new options.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: respect silent rules in generation of "amhello" example tarball
- * Makefile.am ($(srcdir)/doc/amhello-1.0.tar.gz): Here.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fixlets and updates
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: minor version bump (1.13.1a)
- * configure.ac, m4/amversion.m4: Bump version to 1.13.1a.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable minor release 1.13.1
- * configure.ac (AC_INIT): Bump version number to 1.13.1.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't always look for a C++ compiler named 'RCC'
- On MacOS X (10.8), since the file system is case-insensitive, RCC
- can point to the "Resource Compiler" of the Qt4 Toolkit:
- <http://doc.qt.digia.com/4.2/rcc.html>
- That mismatch causes our configure script to erroneously think that
- no working C++ compiler is present, and that is thus necessary to
- skip all the test cases requiring such a compiler.
- So only look for a compiler named 'RCC' if the file system is
- case-sensible.
- Issue spotted analyzing the testsuite logs reported in bug#13317.
- * configure.ac: Adjust.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix bug in pkg-config-macros.sh, could cause spurious SKIPs
- Issue spotted perusing the testsuite logs reported in bug#13317.
- * t/pkg-config-macros.sh: Don't use (uninitialized) '$dir' where '$d'
- should have been used instead. Set IFS to ':' before looping on the
- $PATH expansion. Fix typo: 'alocal' instead of 'aclocal'. These
- issues were causing the location in PATH of the 'pkg-config' program
- not to be found even when the program was present.
- * THANKS: Update.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: autom4te cache can break CONFIGURE_DEPENDENCIES
- In fact, the new test 'remake-configure-dependencies.sh' only
- works because it disables the autom4te cache :-( That is more
- of an AUtotools design issue than an Automake bug, so better
- just document it ...
- * doc/automake.texi (Rebuilding): ... here.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: test CONFIGURE_DEPENDENCIES
- * t/remake-configure-dependencies.sh: New test.
- * t/list-of-tests.mk: Add it.
- * doc/automake.texi: Reference it in comments.
- 2013-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: test CONFIG_STATUS_DEPENDENCIES
- * t/remake-config-status-dependencies.sh: New test.
- * t/list-of-tests.mk: Add it.
- * doc/automake.texi: Reference it in comments.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix reference to related tests in some comments
- * t/acloca10.sh: Here.
- * t/check2.sh: And here.
- * t/remake-deleted-m4-file.sh: And here.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: some enhancements to texinfo tests (from Automake-NG)
- * t/txinfo-many-output-formats.sh: Backport improvements, almost verbatim,
- from Automake-NG commit 'v1.13-768-gb434acc' (plus minor tweaks for the
- sake of non-GNU make implementation).
- * t/txinfo-many-output-formats-vpath.sh: New test, backported almost
- verbatim from that same Automake-NG commit (again, with minor tweaks for
- the sake of non-GNU make implementations).
- * t/lsit-of-tests.mk: Adjust.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix reference to sister tests in two heading comments
- * t/color-tests.sh: Here.
- * t/color-tests2.sh: And here.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: update copyright year for 2013 (in branch maint)
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: adjust comment w.r.t. recent tests renaming
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: some more renames for texinfo tests
- * t/txinfo.sh: Rename ...
- * t/txinfo-tex-dist.sh: ... like this.
- * t/txinfo10.sh: Rename ...
- * t/txinfo-dvi-recurs.sh: ... like this.
- * t/txinfo20.sh: Rename ...
- * t/txinfo-makeinfo-error-no-clobber.sh: ... like this.
- * t/txinfo-setfilename-suffix-match.sh: Rename ...
- * t/txinfo-setfilename-suffix-strip.sh: ... like this.
- * t/txinfo-suffix-less-info.sh: Rename ...
- * t/txinfo-without-info-suffix.sh: ... like this.
- * t/vtexi.sh: Rename ...
- * t/txinfo-vtexi.sh: ... like this.
- * t/vtexi2.sh: Rename ...
- * t/txinfo-vtexi2.sh: ... like this.
- * t/vtexi3.sh: Rename ...
- * t/txinfo-vtexi3.sh: ... like this, and adjust heading comments.
- * t/vtexi4.sh: Rename ...
- * t/txinfo-vtexi4.sh: ... like this, and adjust heading comments.
- * t/list-of-tests.mk: Adjust.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: enhance and tweak some texinfo tests
- * t/txinfo-subdir-pr343.sh: Move the tests checking that '.info.bak'
- files in subdirs are not unduly distributed into ...
- * t/txinfo-no-extra-dist.sh: ... in here. Enhance a little while
- at it.
- * t/txinfo-other-suffixes.sh: Also check that the '.texinfo' suffix
- is accepted and works.
- * t/txinfo-setfilename-suffix-match.sh: Remove useless call to
- autoconf, enhance a little.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove a redundant texinfo test
- * t/txinfo-add-missing.sh: This one, its checks being already covered
- by the more extensive 't/add-missing.tap' test.
- * t/txinfo-add-missing2.sh: Rename ...
- * t/txinfo-add-missing-and-dist.sh: Like this.
- * t/list-of-tests.mk: Adjust.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't list a removed tests in XFAIL_TESTS
- * t/list-of-tests.mk (XFAIL_TESTS): No longer list 't/txinfo5.sh' here,
- it has been removed together with the Cygnus support.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more explicative names for some tests
- Do so for several Texinfo-related tests. Note that some of such tests
- with suboptimal names are *not* renamed; that's because they are going
- to be removed in the master branch anyway (since they check from some
- soon-to-be-removed features), so renaming them would be wasted work,
- and could even create useless merge conflicts.
- * t/txinfo2.sh: Rename ...
- * t/txinfo-no-extra-dist.sh: ... like this.
- * t/txinfo3.sh: Rename ...
- * t/txinfo-suffix-less-info.sh: ... like this.
- * t/txinfo4.sh: Rename ...
- * t/txinfo-unrecognized-info-suffix.sh: ... like this.
- * t/txinfo6.sh: Rename ...
- * t/txinfo-other-suffixes.sh: ... like this.
- * t/txinfo7.sh: Rename ...
- * t/txinfo-add-missing.sh: ... like this.
- * t/txinfo8.sh: Rename ...
- * t/txinfo-add-missing2.sh: ... like this.
- * t/txinfo9.sh: Rename ...
- * t/txinfo-no-repeated-targets.sh: ... like this.
- * t/txinfo17.sh: Rename ...
- * t/txinfo-setfilename-repeated.sh: ... like this.
- * t/txinfo13.sh: Rename ...
- * t/txinfo-subdir-pr343.sh: ... like this.
- * t/txinfo16.sh: Rename ...
- * t/txinfo-info-in-srcdir.sh: ... like this.
- * t/txinfo21.sh: Rename ...
- * t/txinfo-many-output-formats.sh: ... like this.
- * t/txinfo22.sh: Rename ...
- * t/txinfo-override-texinfo-tex.sh: ... like this.
- * t/txinfo26.sh: Rename ...
- * t/txinfo-absolute-srcdir-pr408.sh: ... like this.
- * t/txinfo27.sh: Rename ...
- * t/txinfo-no-installinfo.sh: ... like this.
- * t/txinfo29.sh: Rename ...
- * t/txinfo-override-infodeps.sh: ... like this.
- * t/txinfo31.sh: Rename ...
- * t/txinfo-setfilename-suffix-match.sh: ... like this.
- * t/txinfo32.sh: Rename ...
- * t/txinfo-bsd-make-recurs.sh: ... like this.
- * t/txinfo33.sh: Rename ...
- * t/txinfo-clean.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: drop a redundant %?FIRST% transform
- * lib/am/texinfos.am: Here: this file is only included one time
- per Makefile by Automake.
- Cherry picked from Automake-NG commit 'v1.12.2-864-g5c580b0'.
- 2012-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: state when compatibility cruft should be removed or warned about
- * automake.in: Here.
- * lib/Automake/Options.pm: And here.
- * m4/obsolete-err.m4: And here.
- 2012-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: copyright yars in two recent tests
- 2012-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- obsolete: fixup: don't use AU_DEFUN where AC_DEFUN is required
- * m4/obsolete-err.m4: Here, for the definition of 'AM_PROG_CC_STDC'
- 2012-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: minor fixup
- 2012-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- obsolete: better error message if AM_PROG_CC_STDC is used
- In Automake 1.13, the long-deprecated (since 2002) macro AM_PROG_CC_STDC
- has been removed. Such a removal, albeit sensible and justified, was
- probably done in a too-abrupt way, since it didn't turn the pre-existing
- warning messages into fatal error messages, but simply dropped the macro
- definition, so that remaining usages of it would cause unclear error
- messages, e.g.:
- configure.ac:4: warning: macro 'AM_PROG_CC_STDC' not found in library
- from aclocal, and:
- configure.ac:4: error: possibly undefined macro: AM_PROG_CC_STDC
- If this token and others are legitimate, please use m4_pattern_allow.
- See the Autoconf documentation.
- from autoconf.
- In an attempt to mitigate this issue, we re-add an AM_PROG_CC_STDC
- definition that simply raises a *clear* error message when the macro
- is used.
- * t/am-prog-cc-stdc-no-more.sh: New test.
- * t/list-of-tests.mk: Add it.
- * m4/obsolete-err.m4: Add the new "error-raising" definition for
- AM_PROG_CC_STDC; the error message is a variation of the one already
- present in the older version of this macro, before it got removed in
- commit 'v1.12-15-gd2ca168'.
- * NEWS: Update.
- 2012-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- obsolete: better error message if AM_CONFIG_HEADER is used
- In Automake 1.13, the long-deprecated macro AM_CONFIG_HEADER (deprecated
- since 2002) has been removed in favour of AC_CONFIG_HEADERS. However,
- the removal was done without a proper deprecation period, and that
- caused packages upgrading to Automake 1.13 to fail with very unclear
- error messages, e.g.:
- configure.ac:4: warning: macro 'AM_CONFIG_HEADER' not found in library
- from aclocal, and:
- configure.ac:4: error: possibly undefined macro: AM_CONFIG_HEADER
- If this token and others are legitimate, please use m4_pattern_allow.
- See the Autoconf documentation.
- from autoconf.
- In an attempt to mitigate this issue, we re-add an AM_CONFIG_HEADER
- definition that simply raises a *clear* error message when the macro
- is used.
- Report by Paolo Bonzini:
- <http://lists.gnu.org/archive/html/automake/2012-12/msg00039.html>
- * t/am-config-header-no-more.sh: New test.
- * t/list-of-tests.mk: Add it.
- * m4/obsolete-err.m4: New file, contain the new AM_CONFIG_HEADER
- "error-raising" definition, as well as the definition of the
- similarly obsolete macros 'AM_C_PROTOTYPES' and 'fp_C_PROTOTYPES',
- moved in from ...
- * m4/protos.m4: ... this file, which has thus been removed.
- * Makefile.am (dist_automake_ac_DATA): Adjust.
- * t/ansi2knr-no-more.sh: Likewise.
- * NEWS: Update.
- 2012-12-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.sub: Update.
- * lib/config.guess: Likewise.
- 2012-12-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better names for temporary configure.ac files
- When editing a pre-existent 'configure.ac' file in a test script, name
- the temporary file 'configure.tmp' rather than 'configure.int'; the
- latter was a relict of the times when we used 'configure.in' as the
- default name for the Autoconf input files throughout the testsuite.
- * t/cond43.sh: Adjust.
- * t/depcomp8a.sh: Likewise.
- * t/depcomp8b.sh: Likewise.
- * t/gettext.sh: Likewise.
- * t/mmode.sh: Likewise.
- * t/pr401.sh: Likewise.
- * t/pr401b.sh: Likewise.
- * t/pr401c.sh: Likewise.
- * t/python11.sh: Likewise.
- * t/cond42.sh: Likewise. Also, while at it, rename ...
- (edit_configure_in): ... this function ...
- (edit_configure_ac): ... like this.
- 2012-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: minor version bump
- This is for the maint branch.
- * configure.ac, m4/amversion.m4: Bump version to 1.13.0a.
- 2012-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable major release 1.13
- * configure.ac (AC_INIT): Bump version number to 1.13.
- * m4/amversion.m4 (AM_AUTOMAKE_VERSION): Likewise (regenerated
- by "make bootstrap").
- 2012-12-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix botched URL
- 2012-12-21 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: various fixes
- Rename properly header guards in generated header files, instead of
- leaving Y_TAB_H.
- Convert header guards in implementation files. Because ylwrap failed
- to rename properly #include in the implementation files, current
- versions of Bison (e.g., 2.7) duplicate the generated header file in
- the implementation file. The header guard then protects the
- implementation file from duplicate definitions from the header file.
- Generate header guards with a single '_' for series of non alphabetic
- characters, instead of several. This is what Bison does.
- Makes the test t/yacc-d-basic.sh pass again.
- * lib/ylwrap (guard): Properly honor $1 to rename properly the
- header guards.
- Keep a single _ instead of several.
- (rename_sed): Rename as...
- (sed_fix_filenames): this.
- Suggested by Stefano Lattarini.
- (sed_fix_header_guards): New.
- Use it.
- 2012-12-21 Akim Demaille <akim@lrde.epita.fr>
- tests: strengthen the ylwrap tests
- * t/yacc-d-basic.sh: Comment changes.
- (generated): New.
- Use it to factor various tests.
- Check that Y_TAB_H is not issued.
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: we plan to ditch MS-DOS/DJGPP support in future Automake versions
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: typofixes in makefile comments
- * maint.mk (git-upload-release): Here.
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: remove extra verbosity from a maintainer rule
- * maint.mk (git-upload-release): Here, by adding a forgotten
- '@' recipe modifier.
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix grammaro
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release
- * configure.ac (AC_INIT): Bump version number to 1.12c, as per
- HACKING suggestion.
- * m4/amversion.m4: Likewise (autoupdated by "make bootstrap").
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.12b (will become 1.13)
- * configure.ac (AC_INIT): Bump version number to 1.12b.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: comments fixlets in our Makefile
- * Makefile.am: Prefer '#' comments over '##' ones where it makes sense.
- Other minor style tweaks to comments about "updated later" variables.
- 2012-12-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: consistency changes in some make recipes
- * Makefile.am (install-exec-hook, uninstall-hook): Don't use extra
- quoting in variable assignments. More consistent use of whitespace.
- 2012-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure on NetBSD
- * t/tags-pr12372.sh (configure.ac): AC_SUBST the LINK variable to a
- dummy invocation, to avoid possible errors from make or the linker;
- errors we do not care about in the least in this test.
- (Makefile.am, sub/Makefile.am): Remove LINK definitions; simply
- inherit that in configure.ac.
- 2012-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: re-enable some checks disabled by mistake ...
- * t/subpkg-macrodir.sh: ... in this test. And fix some typos that would
- have caused the newly re-enabled check to spuriously fail. Issue revealed
- by the lack of '.PHONY' support in Solaris CCS make (yes, so we've been
- actually *helped* by that make implementation once, at last. Scary ;-)
- 2012-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a "grep -E" portability issue
- As stated in the Autoconf manual, the empty alternative is not portable
- with "grep -E". For example, while with GNU grep we have:
- $ echo b | grep -E '(|a)b'; echo status = $?
- b
- status = 0
- with Solaris 10 /usr/xpg4/bin/grep we have:
- $ echo b | grep -E '(|a)b'; echo status = $?
- 1
- status = 1
- * t/silent-texi.sh: That was causing a spurious failure here. Fix it
- by simply using '?' instead (as suggested by the Autoconf manual).
- 2012-12-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure due to a Clang bug
- This version of clang:
- clang version 3.2 (trunk 163574)
- Target: powerpc64-unknown-linux-gnu
- Thread model: posix
- caused the test 't/ltcond2.sh' to spuriously fail due to what
- appeared like a clang bug. Here is a part of the diagnostic (trimmed
- down for better clarity):
- clang: .../cfarm/llvm/lib/MC/MCAsmStreamer.cpp:338: \
- virtual void {anonymous}::MCAsmStreamer::EmitLabel(llvm::MCSymbol*): \
- Assertion `Symbol->isUndefined() && "Cannot define a symbol twice!"' \
- failed.
- ...
- 7 clang 0x0000000012a459c4 llvm::AsmPrinter::EmitGlobalVariable\
- (llvm::GlobalVariable const*) + 18446744073680468044
- 8 clang 0x0000000012a490a8 llvm::AsmPrinter::doFinalization\
- (llvm::Module&) + 18446744073680481840
- ...
- Stack dump:
- 0. Program arguments: .../opt/cfarm/clang-2012.09.10/bin/clang \
- -cc1 -triple powerpc64-unknown-linux-gnu -S -disable-free \
- ...
- 1. <eof> parser at end of file
- 2. Code generation
- 3. Running pass 'Function Pass Manager' on module 'hello-generic.c'.
- clang: error: unable to execute command: Aborted
- clang: error: clang frontend command failed due to signal (use -v to \
- see invocation)
- clang version 3.2 (trunk 163574)
- Target: powerpc64-unknown-linux-gnu
- Thread model: posix
- So tweak the affected test case to avoid triggering this bug. This is
- the easiest way for us to keep the testsuite result clean and meaningful
- on our main Clang test bed.
- * t/ltcond2.sh: Prefer using "extern const char *" variables rather
- than functions returning a statically allocated "const char *" variable.
- 2012-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: start preparing for the 1.13 release
- * NEWS: Here. In particular, list (some of) the planned future
- backward-incompatibilities that will take place in Automake 1.14.
- 2012-12-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: typofix in the shebang line of 't/py-compile-destdir.sh'
- HACKING: release process: fixlets about the announcement
- maint: post-release minor version bump
- release: stable release 1.12.5
- tests: avoid errors due to underquoted third-party macros
- maintcheck: also consider contrib tests for syntax checks
- cosmetics: whitespace fixlets in syntax-checks.mk
- maint: prefer $(MKDIR_P) over $(mkinstalldirs) in maintainer rules
- 2012-12-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: typofix in the shebang line of 't/py-compile-destdir.sh'
- 2012-12-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: release process: fixlets about the announcement
- * HACKING: The announcement should be generate *before* bumping
- the version number to the next alpha number. Also, only an
- abridged version of the announcement should be copied on the
- Savannah news feed (a link to the complete announcement should
- be linked from there, though).
- 2012-12-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.6a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-12-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.5
- * configure.ac (AC_INIT): Bump version number to 1.12.5.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid errors due to underquoted third-party macros
- * t/pkg-config-macros.sh: Call aclocal with the warnings in the
- "syntax" category disabled.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: also consider contrib tests for syntax checks
- * syntax-checks.mk (xtests): By listing them here.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: whitespace fixlets in syntax-checks.mk
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: prefer $(MKDIR_P) over $(mkinstalldirs) in maintainer rules
- * maint.mk (check-coverage-run, recheck-coverage-run): Here. This
- is especially useful since $(mkinstalldirs) is no longer available
- in Automake-NG.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- sync: update files from upstream with "make fetch"
- gitignore: align with recent changes
- fixup: add dummy rule for ChangeLog generation in Makefile.am
- maint: no longer use AM_MAKEFLAGS in maintainer rules
- maint: use more GNU make features in maintainer rules
- maint: move maintainer make rules in maint.mk
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/gnupload: Update. See:
- <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00050.html>
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- gitignore: align with recent changes
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: add dummy rule for ChangeLog generation in Makefile.am
- So that automake won't complain about the missing ChangeLog.
- The real rule for ChangeLog generation is now in maint.mk (as
- it is maintainer-specific).
- * Makefile.am (ChangeLog): Dummy.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: no longer use AM_MAKEFLAGS in maintainer rules
- They are not required with GNU make.
- * maint.mk: Adjust accordingly.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: use more GNU make features in maintainer rules
- * maint.mk: Here, throughout the file. Other minor cleanups
- and refactorings while at it.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: move maintainer make rules in maint.mk
- This is done for two reasons:
- 1. It will enable us to take advantage of more GNU make
- features in our maintainer-specific recipes, if we
- want to (and we probably will).
- 2. The Makefile.am won't have to be modified each time a
- maintainer rule needs to be changed or tweaked; this
- will prevent useless remaking of (in particular) the
- 't/testsuite-part.am' file.
- * maint.mk: New, several recipes, rules and variables for
- maintainer-specific tasks, extracted (with some tweaks)
- from ...
- * Makefile.am: ... this file.
- (EXTRA_DIST): Add 'maint.mk'.
- * GNUmakefile: Include 'maint.mk' after 'Makefile'.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: source 'test-init.sh', not './defs', in a test
- * t/pkg-config-macros.sh: Here.
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- docs: fixlet about xz compression levels and command line options
- maint: more files excluded in 'update-copyright'
- maint: adapt 'update-copyright' recipe to the new $(FETCHFILES) format
- HACKING: update instructions to update the manuals at www.gnu.org
- maint: add an explicative comment in Makefile
- maint: factor out the name of the dir where web manuals are generated
- maint: rename rules to build/upload web manuals
- cosmetic: minor variable and rules reordering in Makefile.am
- docs: build the web manuals for CVS in the builddir, not in the srcdir
- release: automate uploading of web manuals in CVS
- docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc
- tests: avoid two spurious failures on FreeBSD
- tests: improve 'pkg-config' requirement
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'improve-release-process' into maint
- * improve-release-process:
- HACKING: update instructions to update the manuals at www.gnu.org
- maint: add an explicative comment in Makefile
- maint: factor out the name of the dir where web manuals are generated
- maint: rename rules to build/upload web manuals
- cosmetic: minor variable and rules reordering in Makefile.am
- docs: build the web manuals for CVS in the builddir, not in the srcdir
- release: automate uploading of web manuals in CVS
- docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc
- tests: avoid two spurious failures on FreeBSD
- 2012-12-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'pkgconfing-tests-requirement' into maint
- * pkgconfing-tests-requirement:
- tests: improve 'pkg-config' requirement
- 2012-12-14 Patrick Welche <prlw1@cam.ac.uk> (tiny change)
- docs: fixlet about xz compression levels and command line options
- * doc/automake.texi (The types of distributions): To display a
- progress bar, xz takes "-v" for verbose.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: more files excluded in 'update-copyright'
- This will avoid the following spurious warnings when
- "make update-copyright" is run:
- .autom4te.cfg: warning: copyright statement not found
- .git-log-fix: warning: copyright statement not found
- .gitattributes: warning: copyright statement not found
- .gitignore: warning: copyright statement not found
- AUTHORS: warning: copyright statement not found
- THANKS: warning: copyright statement not found
- contrib/README: warning: copyright statement not found
- contrib/multilib/README: warning: copyright statement not found
- doc/amhello/README: warning: copyright statement not found
- lib/install-sh: warning: copyright statement not found
- lib/mkinstalldirs: warning: copyright statement not found
- m4/acdir/README: warning: copyright statement not found
- t/README: warning: copyright statement not found
- * Makefile.am (files_without_copyright): New.
- (update-copyright): Use it when computing '$exclude_list'.
- Also, skip any README file.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: adapt 'update-copyright' recipe to the new $(FETCHFILES) format
- This is a fixup for commit v1.12.5-27-g71ce1b4 of 2012-12-09, "fetch:
- improve, and reduce code duplication".
- * Makefile.am (update-copyright): Adjust.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- HACKING: update instructions to update the manuals at www.gnu.org
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: add an explicative comment in Makefile
- * Makefile.am (web-manual-update): Here, about a slightly tricky
- feature of rsync(1) used in the recipe.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: factor out the name of the dir where web manuals are generated
- Just a minor refactoring to reduce duplication; no semantic change is
- intended.
- * Makefile.am (web_manual_dir): New.
- (web-manual, web-manual-update, clean-web-manual): Use it.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: rename rules to build/upload web manuals
- The new names are the same used by the similar-purpose rules provided by
- the 'top/maint.mk' makefile in gnulib (as of commit v0.0-7741-g4a8c422).
- No need to have gratuitous incompatibilities.
- * Makefile.am (web-manuals): Rename ...
- (web-manual): ... like this.
- (upload-web-manuals): Rename ...
- (web-manual-update): ... like this.
- (clean-web-manuals): Rename ...
- (clean-web-manual): ... like this.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetic: minor variable and rules reordering in Makefile.am
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: build the web manuals for CVS in the builddir, not in the srcdir
- We can do so using the '-I' option of the gendocs.sh script.
- Inspired by the 'web-manual' rule in the 'top/maint.mk' file provided
- by gnulib (as of commit v0.0-7741-g4a8c422) as customized by Bison in
- its 'cfg.mk' file (as of commit v2.6.5-1007-gf5fceda).
- * Makefile.am (web-manuals): Modify and simplify to take advantage
- of gendocs.sh's '-I' option.
- (upload-we-manuals): Accordingly adjust sanity checks and the rsync
- invocation in the recipe.
- (clean_texinfo_clutter_cmd): Delete this variable, it's no longer
- required.
- (clean-texinfo-clutter): Delete this phony target, it's no longer
- required.
- (clean-local): Don't depend on it.
- * configure.ac: Invoke AC_PROG_LN_S, since we want to use $(LN_S)
- in the new 'web-manuals' recipe.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: automate uploading of web manuals in CVS
- This is partly inspired to the 'gnu-web-doc-update' script from
- gnulib. Unfortunately, we can't use that script directly, because
- as of now it assumes a build system integrated with gnulib.
- * Makefile.am (upload-web-manuals): New .PHONY rule.
- (RSYNC, CVS, CVSU, CVS_USER, WEBCVS_ROOT): New variables, used by
- the new rule.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc
- * doc/automake.texi (Program variables): Here. Reported by NightStrike:
- <http://lists.gnu.org/archive/html/automake/2012-12/msg00012.html>
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid two spurious failures on FreeBSD
- Due to the FreeBSD make bug that causes of the well-known automake
- bug#7884, two of our bison-requiring tests were failing on FreeBSD.
- To avoid this, simply skip the part of these tests affected by that
- bug.
- * t/yacc-bison-skeleton.sh: Here, using the 'yl_distcheck' function.
- * t/yacc-bison-skeleton-cxx.sh: Likewise.
- * t/yacc-nodist.sh: While at it, use the 'yl_distcheck' here
- as well, instead of running "$MAKE distcheck" only when $MAKE
- is GNU make.
- 2012-12-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: improve 'pkg-config' requirement
- This improves (and unifies among different tests) the detection of
- both the 'pkg-config' program and m4 macros provided by it; they are
- needed in particular by tests on Vala support.
- Before this, some Vala-related tests were failing spuriously when the
- pkg-config program was available but the macros from pkg.m4 were not
- made explicitly available in ACLOCAL_PATH. These tests were:
- vala-mix vala-mix2 vala-parallel vala-vapi vala-vpath
- See also similar commit 'v1.11-581-gb7d67d5' of 2011-12-22,
- "tests: better handling of gettext and libtool requirements".
- * t/ax/am-test-lib.sh (process_requirements): If a requirement
- matches the 'pkg-config*' wildcard, try to make available to it
- the pkg-config m4 macros, and skip it if it's not possible.
- This is done by sourcing the 'get.sh' fragment generated by ...
- * t/pkg-config-macros.sh: ... this new test, which looks in
- advance for the 'pkg-config' program and the m4 macros that
- comes with it.
- * t/list-of-tests.mk: Add the new test.
- * gen-testsuite-part (%deps_extractor): Tests requiring pkg-config
- will need the m4 macros coming with it; so these tests should be
- run after the 'pkg-config-macros.sh' test. Automatically generate
- proper declarations for such dependencies.
- * t/vala-header.sh: No need to explicitly check that the macro
- PKG_CHECK_MODULES has been expanded by autoconf.
- * t/vala-libs.sh: Likewise.
- * t/vala-non-recursive-setup.sh: Likewise.
- * t/vala-per-target-flags.sh: Likewise.
- * t/vala-recursive-setup.sh: Likewise.
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc
- maintcheck: prefer '$(am__cd)' over plain 'cd'
- fetch: improve, and reduce code duplication
- docs: add rule to generate manuals for www.gnu.org
- docs: copy the 'gendocs.sh' script from Texinfo CVS repository
- sync: update files from upstream with "make fetch"
- release: generate a stub for the release announcement
- release: distinguish major and minor releases
- tests: avoid two spurious failures on FreeBSD
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'improve-release-process' into maint
- * improve-release-process:
- maintcheck: prefer '$(am__cd)' over plain 'cd'
- fetch: improve, and reduce code duplication
- docs: add rule to generate manuals for www.gnu.org
- docs: copy the 'gendocs.sh' script from Texinfo CVS repository
- sync: update files from upstream with "make fetch"
- release: generate a stub for the release announcement
- release: distinguish major and minor releases
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: AM_CFLAGS: remove reference to non-existing "more detailed" desc
- * doc/automake.texi (Program variables): Here. Reported by NightStrike:
- <http://lists.gnu.org/archive/html/automake/2012-12/msg00012.html>
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: prefer '$(am__cd)' over plain 'cd'
- In a couple of rules in out own build system, as suggested by the
- maintainer check 'sc_cd_relative_dir'.
- * Makefile.am (web-manuals, clean_texinfo_clutter_cmd): Adjust.
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- fetch: improve, and reduce code duplication
- * Makefile.am (WGET_SV_CVS, WGET_SV_GIT_CF, WGET_SV_GIT_AC,
- WGET_SV_GIT_GL): Delete.
- (SV_CVS, SV_GIT_CF, SV_GIT_AC, SV_GIT_GL): New.
- (fetch): Simplify and enhance.
- (update-copyright): Adjust.
- 2012-12-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: add rule to generate manuals for www.gnu.org
- Less clerical work to do by hand.
- * Makefile.am (web-manuals): New rule.
- (clean_texinfo_clutter): New macro.
- * clean-web-manuals, clean-texinfo-clutter: New cleaning
- rules.
- (clean-local): Depend on them.
- * .gitignore: Update.
- * HACKING: Adjust instructions for generation of manuals.
- 2012-12-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: copy the 'gendocs.sh' script from Texinfo CVS repository
- As well as the 'gendocs_template' file. And enhance the "make fetch"
- target to keep them synced. It's better than having to fetch these
- files by hand each time a release is to be made.
- * Makefile.am (FETCHFILES): List 'gendocs.sh' and 'gendocs_template'.
- (fetch): Fetch them, into 'lib/'.
- (EXRA_DIST): Distribute them.
- * HACKING: Adjust instructions for generation of manuals.
- 2012-12-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.sub: Update.
- 2012-12-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: generate a stub for the release announcement
- It's much better than having to write it my hand each time; after all,
- most of it is either boilerplate or a cope of NEWS entries.
- * Makefile.am (determine_release_type): Also set the shell variable
- '$announcement_type' appropriately.
- (print-release-type): Print the value of this new variable as well.
- (announcement): New phony target, generate a files with the same name.
- The recipe uses the shell variable '$announcement_type'.
- (CLEANFILES): Clean it.
- (PACKAGE_MAILINGLIST): New make macro, used when generating the
- 'announcement' file.
- * HACKING: Explain how to take advantage of the new convenience
- target.
- * .gitignore: Ignore the 'announcement' file.
- 2012-12-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: distinguish major and minor releases
- This is mostly a preparatory change, in view of future
- improvements in our release process.
- * Makefile.am (determine_release_type): Also distinguish
- between major and minor releases, with the help of ...
- (stable_major_version_rx, stable_minor_version_rx): ... these
- new macros.
- (stable_version_rx): Remove, it's obsolete now.
- (version_rx): Rename ...
- (base_version_rx): ... like this, and adjust.
- (print-release-type): New target; helps in debugging the code
- that determines the release type.
- 2012-11-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid two spurious failures on FreeBSD
- Due to the FreeBSD make bug that causes of the well-known automake
- bug#7884, two of our bison-requiring tests were failing on FreeBSD.
- To avoid this, simply skip the part of these tests affected by that
- bug.
- * t/yacc-bison-skeleton.sh: Here, using the 'yl_distcheck' function.
- * t/yacc-bison-skeleton-cxx.sh: Likewise.
- * t/yacc-nodist.sh: While at it, use the 'yl_distcheck' here
- as well, instead of running "$MAKE distcheck" only when $MAKE
- is GNU make.
- 2012-11-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'depcomp-work'
- * depcomp-work:
- depcomp: remove 'icc' depmode, add 'tcc' one
- news: update w.r.t. recent depcomp changes
- tests: fix spurious failures with tcc
- depcomp: improve comments about tcc support
- depcomp: remove last relics of libtool 1.4 support
- depcomp: remove an unused variable
- depcomp: rewrite a sed invocation for less quoting
- depcomp: whitespace fixes
- depcomp: shell code style changes
- depcomp: make some code more self-documenting
- depcomp: less duplication between AIX and Tru64 modes
- depcomp: avoid an extra fork when possible
- depcomp: reduce code duplication
- depcomp: don't rely on character ranges working as in C locale
- depcomp: cosmetic fixlets to a comment
- depcomp: safer quoting in variable expansion
- depcomp: correctly propagate exit status in exit trap
- depcomp: use "rmdir", not "rm -rf", to remove the empty lock directory
- depcomp: remove useless quoting in variable definitions
- depcomp: be more idiomatic in checking for zero exit statuses
- 2012-11-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: we'll remove AM_PROG_MKDIR in 1.14, not 1.13
- tests: give few vala tests more significant names
- vala tests: don't use the 'posix' profile, it's no longer supported
- news: fixup: bug#8847 is fixed in 1.12.6, not in 1.12.5
- news: document the fix for automake bug#10227
- tests: fix a spurious testsuite failure on Solaris
- python: make installed modules find by default on Debian and Ubuntu
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: we'll remove AM_PROG_MKDIR in 1.14, not 1.13
- See also commit v1.12.4-158-gdf23daf.
- * NEWS (Future backward-incompatibilities): Adjust accordingly.
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: give few vala tests more significant names
- * t/vala.sh: Rename ...
- * t/vala-grepping.sh: ... like this.
- * t/vala2.sh: Rename ...
- * t/vala-recursive-setup.sh: ... like this.
- * t/vala3.sh: Rename ...
- * t/vala-non-recursive-setup.sh: ... like this.
- * t/vala4.sh: Rename ...
- * t/vala-configure.sh: ... like this.
- * t/vala5.sh: Rename ...
- * t/vala-per-target-flags.sh: ... like this, and slightly
- improve heading comments.
- * t/list-of-tests.mk: Adjust.
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: don't use the 'posix' profile, it's no longer supported
- Fixes automake bug#12934 a.k.a. bug#12522.
- Some of automake's Vala tests used to rely on "valac --profile posix"
- (which makes it not use glib). However, the posix profile was removed
- in August 2012, and is no longer present in the GNOME 3.6.2 version
- of valac (see commit ca020bf0 in the vala Git repository).
- * t/vala-libs.sh: Adjust to avoid using the posix profile.
- * t/vala-mix.sh: Likewise.
- * t/vala-mix2.sh: Likewise.
- * t/vala-parallel.sh: Likewise.
- * t/vala-vapi.sh: Likewise.
- * t/vala-vpath.sh: Likewise.
- * NEWS: Update and adjust.
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fixup: bug#8847 is fixed in 1.12.6, not in 1.12.5
- * NEWS (Bugs fixed in 1.12.5): So move it from here ...
- (Bugs fixed in 1.12.6): ... to here.
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document the fix for automake bug#10227
- This is a follow-up commit for v1.12.5-14-g1f113f6.
- * NEWS: Update.
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'python-fix-pr10227' into maint
- * python-fix-pr10227:
- python: make installed modules find by default on Debian and Ubuntu
- 2012-11-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious testsuite failure on Solaris
- Reported in automake bug#11524.
- * t/amhello-binpkg.sh: When non-GNU tar is in use, relax grepping of
- "tar cvf ..." output a little more.
- 2012-11-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: give few aclocal tests more significant names
- * t/dirlist-abspath.sh: Rename ...
- * t/aclocal-dirlist-abspath.sh: ... like this.
- * t/dirlist.sh: Rename ...
- * t/aclocal-dirlist.sh: ... like this.
- * t/dirlist2.sh: Rename ...
- * t/aclocal-dirlist-globbing.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove a redundant workaround for a testsuite weakness
- * t/warnings-unknown.sh: Here, since we have improved our wrapper
- scripts for aclocal and automake enough to make that workaround
- unneeded.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: remove 'icc' depmode, add 'tcc' one
- According to the comments in the now-removed test 'depcomp5.test' (removed
- by commit 'v1.11-1829-g5066c1b' of 2012-02-08, "tests: improve and rework
- tests on dependency tracking") "icc 8.0 and greater understand gcc options,
- so depmode is set to gcc". According to Wikipedia, the 8.0 version of the
- Intel C compiler has been released in December 2003, that is, almost nine
- yeas ago. So we can remove explicit support for icc 7.x from the depcomp
- script.
- Since our support for tcc has so far been relied on the icc depmode, we
- must write a new explicit 'tcc' depmode. That is easy to do, since we can
- rely on the simpler and better-specified format of tcc-specified makefiles;
- for more info, see:
- <http://lists.gnu.org/archive/html/automake/2012-10/msg00043.html>
- * lib/depcomp (icc): Remove.
- (tcc): New.
- * NEWS: Update.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: update w.r.t. recent depcomp changes
- * NEWS: Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures with tcc
- * t/depcomp8a.sh, t/depcomp8b.sh: Here, by avoiding initialization of
- global 'extern' variables, preferring functions definitions instead.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: improve comments about tcc support
- * lib/depcomp (icc): Here. See also tcc commit 0394caf7 "Emit spaces
- for -MD" and automake commit v1.11-768-gb96263 "depcomp: support tcc
- (Tiny C Compiler)".
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: remove last relics of libtool 1.4 support
- * lib/depcomp (tru64): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: remove an unused variable
- * lib/depcomp ($alnum): This.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: rewrite a sed invocation for less quoting
- * lib/depcomp (dashmstdout): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: whitespace fixes
- * lib/depcomp: We indent by two spaces, and without using tabs.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: shell code style changes
- * lib/depcomp: Here, in comments and line continuations.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: make some code more self-documenting
- * lib/depcomp (make_dummy_makefile): With the help of this function.
- Use it throughout.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: less duplication between AIX and Tru64 modes
- * lib/depcomp (tru64, aix): In these entries of the big 'case'
- switch, with the help of ...
- (aix_post_process_depfile): ... this new function.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: avoid an extra fork when possible
- * lib/depcomp (set_dir_from): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: reduce code duplication
- * lib/depcomp: Here, when we have to get the directory and basename
- components of objects or source files; do so with the help of ...
- (set_dir_from, set_base_from): ... these new shell functions.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: don't rely on character ranges working as in C locale
- * lib/depcomp (pgcc): Here.
- Related reorganization, with the unconditional definition of ...
- ($upper, $lower, $digits, $alnum, $alpha): ... these shell variables.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: cosmetic fixlets to a comment
- * lib/depcomp (pgcc): Here, as that's unportable according to the
- autoconf manual. In fact, there's no need to re-trap the signals
- just before exiting, since at that point a signal would cause at
- most a useless but harmless attempt to remove the
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: safer quoting in variable expansion
- * lib/depcomp (pgcc): Here. Probably not needed, but since the
- rest of the script seems to employ proper quoting, better to be
- consistent.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: correctly propagate exit status in exit trap
- * lib/depcomp (pgcc): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: use "rmdir", not "rm -rf", to remove the empty lock directory
- * lib/depcomp (pgcc): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: remove useless quoting in variable definitions
- * lib/depcomp (pgcc): Here.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: be more idiomatic in checking for zero exit statuses
- * lib/depcomp: Prefer "if test $stat -ne 0; then ..." over the longer
- "if test $stat -eq 0; then :; else ...".
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: give some tests more significant names
- * t/req.sh: Rename ...
- * t/aclocal-req.sh: ... like this.
- * t/reqd.sh: Rename ...
- * t/add-missing-multiple.sh: ... like this.
- * t/block.sh: Rename ...
- * t/comment-block.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious failure with older flex versions
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- python: make installed modules find by default on Debian and Ubuntu
- This change fixes automake bug#10227.
- The code used to get the python package directory was wrong for Python 3,
- at least on Debian and Ubuntu distributions. In the case the installation
- was using the default prefix "/usr/local", python modules were incorrectly
- installed in the directory
- /usr/local/lib/python3/dist-packages
- (which is *not* searched by default), rather than in a directory like
- /usr/local/lib/python3.x/dist-packages
- which is searched by default.
- * m4/python.m4 (AM_PATH_PYTHON): Try to use the 'sysconfig' module if
- possible, for better interactions with python 3.x.
- Helped-by: Reuben Thomas <rrt@sc3d.org>
- Helped-by: Roumen Petrov <bugtrack@roumenpetrov.info>
- 2012-11-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure with older flex versions
- See automake bug#11524 and bug#12836.
- * t/lex-header.sh: Here, we use flex option '--header-file',
- but that option is not supported by some older flex versions.
- Simply skip this test if such an old flex version is detected.
- 2012-11-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a failure due to m4 builtin 'sinclude' in package name
- Even with Autoconf 2.69, AC_INIT is not very robust when to package
- names that contain some selected m4 builtins; for example:
- $ echo 'AC_INIT([sinclude], [1.0])' | autoconf -o/dev/null -
- stdin:1: warning: file `' included several times
- $ echo 'AC_INIT([dnl], [1.0])' | autoconf -o/dev/null -
- /usr/bin/m4:stdin:1: excess arguments to builtin `m4_define' ignored
- autom4te: /usr/bin/m4 failed with exit status: 1
- Reference:
- <http://lists.gnu.org/archive/html/bug-autoconf/2012-11/msg00005.html>
- * t/aclocal-m4-sinclude.sh (configure.ac): Use 'm4sinclude' as package
- name in the AC_INIT invocation, to avoid tickling the just-described
- bug.
- 2012-11-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious failure when $PYTHON is in the environment
- python tests: support PEP-3147 installation layout
- python: uninstall cater to PEP-3147
- tests: improve a comment
- tests: honour $PYTHON override
- tests: typofix in message
- news: document fix for bug#8847 (PEP-3147, __pycache__)
- python: improve support for modern python (CPython 3.2 and PyPy)
- 2012-11-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'python-pep-3147' into maint
- * python-pep-3147:
- tests: fix a spurious failure when $PYTHON is in the environment
- python tests: support PEP-3147 installation layout
- python: uninstall cater to PEP-3147
- tests: improve a comment
- tests: honour $PYTHON override
- tests: typofix in message
- news: document fix for bug#8847 (PEP-3147, __pycache__)
- python: improve support for modern python (CPython 3.2 and PyPy)
- 2012-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure when $PYTHON is in the environment
- * t/python11.sh: This test doesn't interact well with user-overrides of
- $PYTHON; and, given its particular nature, neither should it be expected
- to honour that override. Just unset that $PYTHON variable and live
- happy.
- 2012-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- python tests: support PEP-3147 installation layout
- This fixes several spurious testsuite failures with python >= 3.2,
- introduced by recent commit v1.12.4-43-ge0e99ed, "python: improve
- support for modern python (CPython 3.2 and PyPy)".
- * t/ax/am-test-lib.sh (python_has_pep3147, pyc_location, py_installed):
- New functions.
- ($am_pep3147_tag): New variable.
- * t/py-compile-basic2.sh: Deleted, too difficult to adapt for the
- gain it would offer; move the still relevant parts ...
- * t/py-compile-basic.sh: ... here. Adapt and adjust the rest of
- the test as well.
- * t/nobase-python.sh: Adapt and adjust.
- * t/py-compile-basedir.sh: Likewise.
- * t/py-compile-destdir.sh: Likewise.
- * t/py-compile-option-terminate.sh: Likewise.
- * t/python-pr10995.sh: Likewise.
- * t/python-virtualenv.sh: Likewise.
- * t/python10.sh: Likewise.
- * t/python12.sh: Likewise.
- * t/python3.sh: Likewise.
- * t/list-of-tests.mk: Adjust list of tests.
- 2012-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- python: uninstall cater to PEP-3147
- After recent commit commit v1.12.4-43-ge0e99ed, "python: improve
- support for modern python (CPython 3.2 and PyPy)", the python install
- rules have been made smart enough to install "*.pyc" byte-compiled
- files according to PEP-3147 with modern (post-3.2) pythons. However,
- the uninstall rules hadn't been updated accordingly, causing leftover
- files to remain around after "make uninstall", as well as failures in
- "make distcheck".
- * lib/am/python.am (am__pep3147_tweak): New internal macro, used
- in ...
- (uninstall-%DIR%PYTHON): ... the recipe of this target, which has
- been adjusted to cater to PEP-3147
- 2012-11-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more explicative names for few aclocal tests
- * t/aclocal3.sh: Rename ...
- * t/aclocal-missing-macros.sh: ... like this.
- * t/aclocal4.sh: Rename ...
- * t/aclocal-deps.sh: ... like this.
- * t/aclocal5.sh: Rename ...
- * t/aclocal-deps-subdir.sh: ... like this.
- * t/aclocal6.sh: Rename ...
- * t/aclocal-remake-misc.sh: ... like this.
- * t/aclocal7.sh: Rename ...
- * t/aclocal-no-force.sh: ... like this.
- * t/acloca8.sh: Rename ...
- * t/aclocal-no-unused-required.sh: ... like this.
- * t/acloca9.sh: Rename ...
- * t/aclocal-I-order-1.sh: ... like this.
- * t/acloca11.sh: Rename ...
- * t/aclocal-I-order-2.sh: ... like this, and update heading comments.
- * t/acloca12.sh: Rename ...
- * t/aclocal-I-order-3.sh: ... like this, and update heading comments.
- * t/acloca13.sh: Rename ...
- * t/aclocal-m4-sinclude.sh: ... like this, and update heading comments.
- * t/acloca14.sh: Rename ...
- * t/aclocal-m4-include-are-scanned.sh: ... like this.
- * t/acloca14.sh: Rename ...
- * t/aclocal-m4-include-are-scanned-aclocal-amflags.sh: ... like this,
- and update heading comments.
- * t/acloca15.sh: Rename ...
- * t/aclocal-scan-configure-ac-pr319.sh: ... like this.
- * t/acloca16.sh: Rename ...
- * t/aclocal-no-extra-scan.sh: ... like this, and enhance slightly.
- * t/acloca18.sh: Rename ...
- * t/aclocal-serial.sh: ... like this.
- * t/acloca19.sh: Rename ...
- * t/aclocal-pr450.sh: ... like this.
- * t/acloca20.sh: Rename ...
- * t/aclocal-no-symlinked-overwrite.sh: ... like this.
- * t/acloca21.sh: Rename ...
- * t/aclocal-comments-respected.sh: ... like this.
- * t/acloca22.sh: Rename ...
- * t/aclocal-deleted-header.sh: ... like this.
- * t/acloca22b.sh: Rename ...
- * t/aclocal-deleted-header-aclocal-amflags.sh: ... like this.
- * t/acloca23.sh: Rename ...
- * t/aclocal-underquoted-defun.sh: ... like this.
- * t/list-of-tests.mk: Update.
- 2012-11-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: improve coverage on Texinfo + silent rules
- * t/silent-texi.sh: Here, by basic importing the version of the
- test that is the 'ng/master' branch (that of Automake-NG), plus
- a minor tweak to avoid a spurious failure with NetBSD make.
- 2012-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- build: fix rebuild rules for Makefile.in and aclocal.m4
- hacking: release procedure: fix order of some steps
- maint: post-release minor version bump
- release: stable release 1.12.5
- 2012-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: fix rebuild rules for Makefile.in and aclocal.m4
- They have been broken after our removal of the 'perllibdir' hack
- in yesterday's commit v1.12.4-45-g4872dfe.
- * configure.ac: Rather then redefining AUTOMAKE and ACLOCAL to
- explicitly override the perllibdir, the acdir and the libdir, use
- the ready-made t/wrap/{aclocal,automake}-$APIVERSION scripts.
- * NEWS: Document the fix.
- 2012-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: release procedure: fix order of some steps
- * HACKING (Release procedure): The manuals should be rebuilt and
- uploaded at at www.gnu.org *before* bumping the version number to
- the next alpha release.
- 2012-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.5a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-11-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.5
- * configure.ac (AC_INIT): Bump version number to 1.12.5.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maintcheck: avoid failures, sync with 'ng/master' more
- maintcheck: remove 'sc_perl_syntax'
- sync: update files from upstream with "make fetch"
- maint: get rid of $perllibdir environment variable hack
- configure: respect the '-q' option better
- cosmetics: de-tabify configure.ac
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid failures, sync with 'ng/master' more
- * syntax-checks.mk (sc_diff_aclocal_in_aclocal,
- sc_diff_automake_in_automake): Rename ...
- (sc_diff_aclocal, sc_diff_automake): ... respectively to these, rewrite
- to use static pattern rules and 'diff -u' instead of bare 'diff'. This
- makes the rules more robust in the face of edits to 'automake.in' and
- 'aclocal.in', and get them in sync with the corresponding checks in the
- 'ng/master' branch.
- (syntax_check_rules): Adjust.
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: remove 'sc_perl_syntax'
- It is quite useless, since a "make bootstrap" or "make check" would
- immediately catch a breakage in the 'aclocal' or 'automake' scripts
- anyway. In addition, the recent removal of the 'perllibdir' environment
- variable hack has broken this check.
- * syntax-checks.mk (sc_perl_syntax): Remove.
- (syntax_check_rules): No longer list it.
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/texinfo.tex, lib/config.sub: Update.
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: get rid of $perllibdir environment variable hack
- That was needed when the automake-$APIVERSION and aclocal-$APIVERSION
- wrapper scripts used by the testsuite were shell script, rather than
- perl scripts acting as a thin layers.
- * aclocal.in (BEGIN): Update @INC based on the contents of the array
- '@Aclocal::perl_libdirs', rather than of the environment variable
- 'perllibdir'.
- * t/wrap/aclocal.in (BEGIN): Initialize '@Aclocal::perl_libdirs'
- rather than $ENV{'perllibdir'}.
- * automake.in (BEGIN): Update @INC based on the contents of the array
- '@Automake::perl_libdirs', rather than of the environment variable
- 'perllibdir'.
- * t/wrap/automake.in (BEGIN): Initialize '@Automake::perl_libdirs'
- rather than $ENV{'perllibdir'}.
- * NEWS: Update.
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: respect the '-q' option better
- * configure.ac: Here, by avoiding to print the warnings about
- using a non-stable Automake version if the '$silent' variable
- is set to "yes".
- 2012-11-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: de-tabify configure.ac
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: Automake installation works again
- By renaming 'dist_automake_ac_DATA' to 'nobase_dist_automake_ac_DATA' in
- a recent patch, we have broken the Automake installation, since m4 files
- that were expected to be installed in '${prefix}/aclocal-${APIVERSION}'
- are now being installed in '${prefix}/aclocal-${APIVERSION}/m4' instead.
- Fix this mess.
- * Makefile.am (nobase_dist_automake_ac_DATA): Rename ...
- (dist_automake_ac_DATA): ... like this. And move
- 'm4/internal/ac-config-macro-dirs.m4' ...
- (dist_automake_internal_ac_DATA): ... here.
- (automake_internal_acdir): New, simply defined to
- '$(automake_acdir)/internal'.
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'ac-config-macro-dirs'
- * ac-config-macro-dirs:
- tests: AC_CONFIG_MACRO_DIRS: ignore inevitable failures with old autoconf
- aclocal: AC_CONFIG_MACRO_DIRS: work around autom4te option parsing bugs
- aclocal: tracing AC_CONFIG_MACRO_DIRS can work with older autoconf as well
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: AC_CONFIG_MACRO_DIRS: ignore inevitable failures with old autoconf
- When "older" version of autoconf are used (that is, those before commit
- v2.69-44-g1ed0548), we have no sane way to prevent the autom4te invocation
- issued from aclocal to possibly display warnings "MACRO m4_require'd but
- not m4_defun'd". That's not a big deal, because that just means that
- people using pre-2.70 autoconf with cutting-edge automake will see few
- spurious warnings, but the actual semantics will remain correct.
- However, this blemish was causing a couple of annoying testsuite failures.
- Solve this by simply skipping the affected tests when older (pre-2.70)
- autoconf versions are used.
- * t/aclocl-macrodir.tap ("AC_CONFIG_MACRO_DIR interaction with
- AC_REQUIRE"): Skip when older autoconf is in use.
- * t/aclocl-macrodirs.tap ("AC_CONFIG_MACRO_DIR interaction with
- AC_REQUIRE"): Likewise.
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- recursion: remove _AM_EXTRA_RECURSIVE_TARGETS indirection
- Since automake automatically smashes extra whitespace and newlines
- in the arguments of the macros it traces, we can remove the extra
- indirection with the _AM_EXTRA_RECURSIVE_TARGETS. This doesn't
- truly simplify the existing code, but make it slightly easier to
- understand anyway, since leave it with one less indirection.
- * automake.in: Trace AM_EXTRA_RECURSIVE_TARGETS directly, rather
- than tracing _AM_EXTRA_RECURSIVE_TARGETS. Remove trailing and
- leading empty fields in the extracted arguments.
- * m4/extra-recurs.m4 (_AM_EXTRA_RECURSIVE_TARGETS): Remove, no longer
- needed.
- (AM_EXTRA_RECURSIVE_TARGETS): Adjust by making it a simple no-op.
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: AC_CONFIG_MACRO_DIRS: work around autom4te option parsing bugs
- The autom4te program coming with autoconf 2.68 and earlier had a bug
- which caused the "-" command line argument (with which we tell it to
- read some input from from standard input) to aways be pushed at the
- *end* of the command line, regardless of where the user specified it
- (that bug was fixed by autoconf commit 'v2.68-120-gf4be358', "getopt:
- new Autom4te::Getopt module").
- This broken semantics conflict with our usage in aclocal, where we
- need to pass some input to the invoked autom4te program early, and
- have so far been using the stdin to do so. Now we start using an
- external file instead.
- * m4/internal/ac-config-macro-dirs.m4: New file, contain a fallback
- definition of the AC_CONFIG_MACRO_DIRS macro for older autoconf
- releases.
- * aclocal.in (trace_used_macros): When invoking autom4te, use that
- file instead of "abusing" standard input.
- * Makefile.am (dist_automake_ac_DATA): Rename ...
- (nobase_dist_automake_ac_DATA): ... like this.
- Add 'm4/internal/ac-config-macro-dirs.m4' to it.
- * t/aclocal-acdir.sh: Adjust to avoid spurious failures.
- Helped-by: Eric Blake <eblake@redhat.com>
- 2012-11-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: tracing AC_CONFIG_MACRO_DIRS can work with older autoconf as well
- This will allow our users to interact also with pre-2.70 autoconf without
- need for the user to add ACLOCAL_AMFLAGS in Makefile.am. For example,
- before this change, in order to have aclocal look for macros in 'm4/dir1'
- and 'm4/dir2' also when (say) autoconf 2.69 was used, our users would
- have had to add something like:
- ACLOCAL_AMFLAGS = -I m4/dir1 -I m4/dir2
- in Makefile.am, in addition to the
- AC_CONFIG_MACRO_DIRS([m4/dir1 m4/dir2])
- in configure.ac. Now, the AC_CONFIG_MACRO_DIRS call is enough.
- See the long-winded discussion on automake bug#12845 for more details:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12845>
- * aclocal.in ($ac_config_macro_dirs_fallback): New global variable,
- contains m4 code to issue a fallback definition of AC_CONFIG_MACRO_DIRS
- as an alias for the private macro _AM_CONFIG_MACRO_DIRS.
- (trace_used_macros): Handle and trace that macro. Do some code
- reorganization and fix related botched indentation while at it.
- (write_aclocal): Output '$ac_config_macro_dirs_fallback' early in
- the generated aclocal.m4.
- * t/aclocal-macrodirs.tap: Run unconditionally, even with older
- autoconf.
- * t/subpkg-macrodir.sh: Likewise.
- * doc/automake.texi: Document only AC_CONFIG_MACRO_DIRS, rather
- than AC_CONFIG_MACRO_DIR.
- 2012-11-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'ac-config-macro-dirs'
- * ac-config-macro-dirs:
- news: we trace AC_CONFIG_MACRO_DIRS
- aclocal: trace AC_CONFIG_MACRO_DIR_TRACE
- aclocal: avoid spurious warnings from autom4te with AC_CONFIG_MACRO_DIRS
- coverage: expose a bug in aclocal (spurious warnings)
- aclocal: smash newlines in arguments of traced macros
- tests: better coverage for AC_CONFIG_MACRO_DIRS
- aclocal: diagnose non-existing directories in AC_CONFIG_MACRO_DIRS better
- aclocal: multiple local m4 macro dirs with AC_CONFIG_MACRO_DIRS
- 2012-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: improve a comment
- * t/ax/am-test-lib.sh (require_tool): Here, about python support
- for '--version' option.
- 2012-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: honour $PYTHON override
- * t/ax/am-test-lib.sh (require_tool): Here.
- * t/python-too-old.sh: And here.
- * t/python-vars.sh: And here.
- * t/python-virtualenv.sh: And here. Also add some sanity
- checks while at it.
- 2012-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: typofix in message
- * t/python-virtualenv.sh: Here.
- 2012-11-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document fix for bug#8847 (PEP-3147, __pycache__)
- * NEWS (Bugs fixed in 1.12.5): Here.
- 2012-11-11 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
- python: improve support for modern python (CPython 3.2 and PyPy)
- This fixes automake bug#8847.
- * m4/python.m4 (AM_PATH_PYTHON): Add python3.3 to
- _AM_PYTHON_INTERPRETER_LIST.
- * lib/py-compile: Fix compiled filenames for PEP-3147, currently
- implemented in CPython 3.2 and newer. Do not create '.pyo' files
- for PyPy.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: we trace AC_CONFIG_MACRO_DIRS
- * NEWS (New in 1.13): Update accordingly.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: improve wording
- * NEWS (New in 1.13): Prefer "no longer" over "not anymore",
- wherever possible. Related re-wrapping of text.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: trace AC_CONFIG_MACRO_DIR_TRACE
- This is now the documented way, and indeed the only correct way, to
- support AC_CONFIG_MACRO_DIR and AC_CONFIG_MACRO_DIRS in third-party
- tools. See autoconf commit v2.69-45-g5269030 of 2012-11-09,
- "AC_CONFIG_MACRO_DIRS: improve tracing and add sanity checks".
- * aclocal.in (trace_used_macros): Trace 'AC_CONFIG_MACRO_DIR_TRACE'
- rather than 'AC_CONFIG_MACRO_DIRS'. We still have to trace
- 'AC_CONFIG_MACRO_DIR' explicitly though, for compatibility with
- Autoconf versions before 2.70.
- * t/aclocal-macrodirs.tap: Enhance w.r.t. precedence of arguments
- in one and several AC_CONFIG_MACRO_DIRS calls.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: avoid spurious warnings from autom4te with AC_CONFIG_MACRO_DIRS
- When some macro expanded in configure.ac calls AC_REQUIRE on another
- macro that is defined in one of the local m4 macro dirs specified
- with AC_CONFIG_MACRO_DIRS, aclocal prints spurious warnings like:
- configure.ac:4: warning: MY_BAR is m4_require'd but not m4_defun'd
- configure.ac:3: MY_FOO is expanded from...
- Such warnings come from autom4te, and are due to the fact that the
- *first* autom4te invocation issued by aclocal is not yet able to
- "see" the m4 macro definitions in the local m4 dirs (because they
- can be looked for only after the AC_CONFIG_MACRO_DIRS call has been
- traced, and tracing it requires running autom4te).
- To allow us to work around this issue, autom4te has introduced a new
- "witness" macro 'm4_require_silent_probe', that, when defined, allows
- us to silence that particular kind of warnings (and only it).
- Reported by Nick Bowler; see point (4) of:
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>
- * aclocal.in (trace_used_macros): Pre-define the special macro
- 'm4_require_silent_probe' when invoking autom4te.
- * t/aclocal-macrodirs.tap ("AC_CONFIG_MACRO_DIR interaction with
- AC_REQUIRE"): This test passes now: remove the "TODO" directive.
- * t/aclocal-macrodir.tap ("AC_CONFIG_MACRO_DIRS interaction with
- AC_REQUIRE"): Likewise.
- * t/acloca17.sh: Remove.
- * t/list-of-tests.mk: Adjust.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose a bug in aclocal (spurious warnings)
- When some macro expanded in configure.ac calls AC_REQUIRE on another
- macro that is defined in one of the local m4 macro dirs specified
- with one of the macros AC_CONFIG_MACRO_DIRS or AC_CONFIG_MACRO_DIR,
- aclocal prints spurious warnings like:
- configure.ac:4: warning: MY_BAR is m4_require'd but not m4_defun'd
- configure.ac:3: MY_FOO is expanded from...
- Expose this weakness in our testsuite.
- Reported by Nick Bowler; see point (4) of:
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>
- * t/aclocal-macrodir.tap ("AC_CONFIG_MACRO_DIR interaction with
- AC_REQUIRE"): New test, still xfailing.
- * t/aclocal-macrodirs.tap ("AC_CONFIG_MACRO_DIRS interaction with
- AC_REQUIRE"): Likewise.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: smash newlines in arguments of traced macros
- This change fixes the existing issues with AC_CONFIG_MACRO_DIRS
- containing newlines:
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>
- Likely, it will also allow a less involved implementation of the
- AM_EXTRA_RECURSIVE_TARGETS macro (but that is left for potential
- follow-up patches).
- * aclocal.in (trace_used_macros): When calling autom4te, pass its
- '--trace' option an argument containing '${::}%' rather than '$1'.
- According to the autoconf manual (as of version 2.69), that will expand
- to the concatenation, with the '::' string, of all the arguments passed
- to a macro, with all newline characters in such arguments smashed.
- Related adjustments when handling the macro AC_CONFIG_MACRO_DIRS, to
- ensure leading whitespace in its argument are handled correctly.
- * t/aclocal-macrodirs.tap ("AC_CONFIG_MACRO_DIRS: extra whitespace"):
- No longer declare it as an xfailing test.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better coverage for AC_CONFIG_MACRO_DIRS
- Suggested by a report from Nick Bowler:
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-11/msg00000.html>
- * t/aclocal-macrodirs.tap: Enhance to check use of extra whitespaces
- and newline characters in the arguments to AC_CONFIG_MACRO_DIRS. This
- test currently fails, so mark it as "TODO". While at it, throw in other
- minor edits and enhancements.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: diagnose non-existing directories in AC_CONFIG_MACRO_DIRS better
- This new implementation ensures that any directory (possibly excluding
- the first one, if the '--install' option is used) that is declared with
- AC_CONFIG_MACRO_DIRS and that is non-existent will cause an error from
- aclocal.
- * aclocal.in (scan_m4_dirs): Add a new argument, telling whether it's OK
- for the scanned directory to be non-existing. Adjust the implementation
- accordingly.
- ($first_user_m4dir): Remove, no more needed.
- (scan_m4_files): Update 'scan_m4_dirs' invocations so that aclocal will
- not complain if the first user macro directory is non-existing and the
- '--install' option is given: such directory will be created later by
- aclocal itself.
- * t/aclocal-macrodir.tap: Do not mark the last test as TODO anymore;
- it now passes. Make stricter by ensuring a non-existing directory in
- AC_CONFIG_MACRO_DIRS causes an hard error, not a warning.
- 2012-11-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: multiple local m4 macro dirs with AC_CONFIG_MACRO_DIRS
- A new macro 'AC_CONFIG_MACRO_DIRS' has been recently introduced in
- autoconf (and is expected to appear in the autoconf 2.70 release),
- allowing us to declare several local m4 macro directories for a
- package.
- It can be done either passing several arguments to a single invocation:
- AC_CONFIG_MACRO_DIRS([dir1 dir2])
- or issuing more invocations:
- AC_CONFIG_MACRO_DIRS([dir1])
- AC_CONFIG_MACRO_DIRS([dir2])
- or a combination of the two:
- AC_CONFIG_MACRO_DIRS([dir1 dir2])
- AC_CONFIG_MACRO_DIRS([dir3])
- This will allow projects to use several m4 macro local dirs, without the
- need to use ACLOCAL_AMFLAGS (which we want to make obsolete and finally
- remove). This is especially important for projects that are used as
- nested subpackages of larger projects.
- For more information and rationales, refer to these past discussions:
- <http://lists.gnu.org/archive/html/autoconf/2011-12/msg00037.html>
- <http://lists.gnu.org/archive/html/automake-patches/2012-07/msg00010.html>
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-07/msg00000.html>
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-07/msg00012.html>
- <http://thread.gmane.org/gmane.comp.sysutils.autoconf.patches/8037/>
- <http://thread.gmane.org/gmane.comp.sysutils.autoconf.patches/8087>
- <http://thread.gmane.org/gmane.comp.sysutils.automake.patches/8956>
- as well as to Automake commit v1.12.1-165-gcd1a9cc of 2012-07-03,
- "aclocal: deprecate ACLOCAL_AMFLAGS, trace AC_CONFIG_MACRO_DIR instead",
- autoconf commit v2.69-42-gd73770f of 2012-10-17, "AC_CONFIG_MACRO_DIRS:
- new macro, mostly for aclocal".
- * aclocal.in ($ac_config_macro_dir): Turn this global scalar it into ...
- (@ac_config_macro_dirs): ... this global array.
- (trace_used_macros): Update '@ac_config_macro_dirs' instead of
- re-defining '$ac_config_macro_dir'. Cater to calls the now-preferred
- macro 'AC_CONFIG_MACRO_DIRS' in addition to the "obsolescent" one
- AC_CONFIG_MACRO_DIR.
- (main loop): Append '@ac_config_macro_dirs', not '$ac_config_macro_dir',
- to '@user_includes'.
- * t/subpkg-macrodir.sh: New test.
- * t/aclocal-macrodirs.tap: Likewise.
- * t/list-of-tests.mk: Add them.
- * t/aclocal-macrodir.tap: Adjust and extend a little to keep it more in
- sync with 'aclocal-macrodirs.tap'.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolete comment
- * t/silent-yacc.sh: Here.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove mostly-redundant tests on silent rules
- We used to have several couples of tests named like 'silent-foo-gcc.sh'
- and 'silent-foo-generic.sh'. Differently from what the names suggest,
- the first test in such a couple (that is, "silent-foo-gcc.sh") was not
- meant to check specific GCC-related features, but rather to check how
- the silent rules behave in combination with automatic dependency tracking
- when the 'gcc' depmode (that targets GCC versions before the 3.x and 4.x
- release series) is forced.
- Such depmode forcing was done exclusively to cover the code paths in
- 'lib/am/depend2.am' that actually invoke the 'depcomp' script, rather
- than using the inlined, GCC-specific compiler invocation (the so-called
- "fastdep" mode), which is the default with modern GCC or with other
- modern compilers that can emulate the GCC command-line interface (e.g.,
- clang 3.0).
- But whenever we run the silent-*-generic.sh" tests with other supported
- compilers which have an associated depmode different from 'gcc3', these
- same "non-fastdep" code paths are covered, since in those tests we run
- ./configure with the '--enable-dependency-tracking' option, which causes
- slower depmodes not to be rejected. Examples of such compilers are the
- Sun C and C++ compilers (at least since version 5.9, a.k.a. Sun Studio
- 12.1), and the Tiny C Compiler (from version 0.9.26); and I run the
- Automake testsuite quite regularly with those compilers.
- So, the "silent-*-gcc.sh" test cases don't offer any real coverage
- enhancements, while still using testsuite runtime and causing some
- (admittedly minor, but still annoying) synchronization headaches with
- the sister tests "silent-foo-general.sh" tests. So let's just remove
- these "silent-*-gcc.sh" tests.
- * t/silent-c-gcc.sh: Remove.
- * t/silent-cxx-gcc.sh: Likewise.
- * t/silent-lt-gcc.sh: Likewise.
- * t/silent-many-gcc.sh: Likewise.
- * t/silent-c-generic.sh: Rename ...
- * t/silent-c.sh: ... like this, and adjust heading comments.
- * t/silent-cxx-generic.sh: Rename ...
- * t/silent-cxx.sh: ... like this, and adjust heading comments.
- * t/silent-lt-generic.sh: Rename ...
- * t/silent-lt.sh: ... like this, and adjust heading comments.
- * t/silent-many-generic.sh: Rename ...
- * t/silent-many-languages.sh: ... like this, and adjust heading
- comments.
- * t/list-of-tests.mk: Adjust.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: enhance coverage on silent-rules and C compilation rules a little
- * t/silent-c-generic.sh: Here, by trying them also with automatic
- dependency tracking explicitly disabled.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: new variable $am_testaux_builddir
- tests: rename $am_testauxdir -> $am_testaux_srcdir
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename few tests (on silent-rules support)
- Either to more informative names, or to names more consistent with the
- ones of similar/related tests.
- * t/silent.sh: Rename ...
- * t/silent-c-generic.sh: ... like this, and adjust heading comments.
- * t/silent2.sh: Rename ...
- * t/silent-c-gcc.sh: ... like this, and adjust heading comments.
- * t/silent3.sh: Rename ...
- * t/silent-lt-generic.sh: ... like this, and adjust heading comments.
- * t/silent4.sh: Rename ...
- * t/silent-lt-gcc.sh: ... like this, and adjust heading comments.
- * t/silentcxx.sh: Rename ...
- * t/silent-cxx-generic.sh: ... like this, and adjust heading comments.
- * t/silentcxx-gcc.sh: Rename ...
- * t/silent-cxx-gcc.sh: ... like this, and adjust heading comments.
- * t/silentf77.sh: Rename ...
- * t/silent-f77.sh: ... like this, and adjust heading comments.
- * t/silentf90.sh: Rename ...
- * t/silent-f90.sh: ... like this, and adjust heading comments.
- * t/silent7.sh: Rename ...
- * t/silent-gen.sh: ... like this, and adjust heading comments.
- * t/silent6.sh: Rename ...
- * t/silent-custom.sh: ... like this.
- * t/silent8.sh: Rename ...
- * t/silent-texi.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: merge two tests on silent-rules with libtool
- This helps to reduce code duplication, and also to (marginally)
- speed up the involved tests.
- Before this change, we had:
- $ diff -u t/silent3.sh t/silent9.sh
- --- t/silent3.sh 2012-11-07 19:38:05.000000000 +0100
- +++ t/silent9.sh 2012-11-07 19:27:54.000000000 +0100
- @@ -14,9 +14,9 @@
- # You should have received a copy of the GNU General Public License
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
- -# Check silent-rules mode, with libtool, standard depmode case.
- +# Check silent-rules mode, with libtool, nodep case.
- -# Please keep this file in sync with 'silent4.sh' and 'silent9.sh'.
- +# Please keep this file in sync with 'silent3.sh' and 'silent4.sh'.
- required='cc libtoolize'
- . test-init.sh
- @@ -26,8 +26,8 @@
- cat >>configure.ac <<'EOF'
- AC_CONFIG_FILES([sub/Makefile])
- AC_PROG_CC
- -AM_PROG_AR
- AM_PROG_CC_C_O
- +AM_PROG_AR
- AC_PROG_LIBTOOL
- AC_OUTPUT
- EOF
- @@ -61,7 +61,7 @@
- $AUTOMAKE --add-missing
- $AUTOCONF
- -./configure --enable-silent-rules
- +./configure --disable-dependency-tracking --enable-silent-rules
- $MAKE >stdout || { cat stdout; exit 1; }
- cat stdout
- $EGREP ' (-c|-o)' stdout && exit 1
- * t/silent9.sh: Remove, merge ...
- * t/silent3.sh: ... in here.
- * t/list-of-tests.mk: Adjust.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: new variable $am_testaux_builddir
- And a related fix that solves a spurious testsuite failures in
- VPATH builds.
- * t/ax/test-defs.in ($am_testaux_builddir): New, counterpart of
- $am_testaux_srcdir, but pointing inside the build directory.
- * t/self-check-shell-no-trail-bslash.sh: Use $am_testaux_builddir,
- not $am_testaux_srcdir, when fetching the 'shell-no-trail-bslash'
- script.
- 2012-11-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename $am_testauxdir -> $am_testaux_srcdir
- This is just a preparatory change in view of a future commit.
- * t/ax/test-defs.in: Here.
- * t/ax/tap-summary-aux.sh: And here.
- * t/ax/testsuite-summary-checks.sh: And here.
- * t/distcheck-missing-m4.sh: And here.
- * t/distcheck-outdated-m4.sh: And here.
- * t/self-check-shell-no-trail-bslash.sh: And here.
- * t/test-driver-acsubst.sh: And here.
- * t/test-driver-cond.sh: And here.
- * t/test-driver-custom-multitest.sh: And here.
- * t/test-driver-custom-multitest-recheck.sh: And here.
- * t/test-driver-custom-multitest-recheck2.sh: And here.
- * t/testsuite-summary-count-many.sh: And here.
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- vala tests: source test-init.sh, not ./defs
- tests: fix a spurious typo-related failure
- tests: remove spurious leftover use of 'Exit'
- tests: can check our recipes avoid trailing backslashes
- vala: improve comments to AM_PROG_VALAC
- news: update w.r.t. recent vala changes
- vala: if no proper compiler found, set $(VALAC) to 'valac'
- vala: AM_PROG_VALAC should not produce an error for tool-old valac
- docs: document recent changes to AM_PROG_VALAC
- tests: enhance tests on AM_PROG_VALAC
- vala: style fixes in vala.m4
- vala: add action arguments, for when no proper vala compiler is found
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: source test-init.sh, not ./defs
- This will avoid spurious errors when the new vala tests (introduced
- in the 'vala-work' branch) will be merged back to master.
- * t/vala-headers.sh: Adjust as said.
- * t/vala-libs.sh: Likewise.
- * t/vala-mix.sh: Likewise.
- * t/vala-mix2.sh: Likewise.
- * t/vala-parallel.sh: Likewise.
- * t/vala-vapi.sh: Likewise.
- * t/vala-vpath.sh: Likewise.
- * t/vala.sh: Likewise.
- * t/vala2.sh: Likewise.
- * t/vala3.sh: Likewise.
- * t/vala4.sh: Likewise.
- * t/vala5.sh: Likewise.
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious typo-related failure
- * t/self-check-shell-no-trail-bslash.sh: Here, due to a mistaken
- use of "||" instead of "&&".
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'vala-work' into maint
- * vala-work:
- vala: improve comments to AM_PROG_VALAC
- news: update w.r.t. recent vala changes
- vala: if no proper compiler found, set $(VALAC) to 'valac'
- vala: AM_PROG_VALAC should not produce an error for tool-old valac
- docs: document recent changes to AM_PROG_VALAC
- tests: enhance tests on AM_PROG_VALAC
- vala: style fixes in vala.m4
- vala: add action arguments, for when no proper vala compiler is found
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove spurious leftover use of 'Exit'
- Issue revealed by the 'sc_tests_Exit_not_exit' maintainer check.
- Commit 'v1.12.4-184-g9fed1c8' in master made the same fix basically,
- but we mistakenly applied it to master only, rather than to maint.
- * t/per-target-flags.sh: Here.
- 2012-10-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: can check our recipes avoid trailing backslashes
- This is related to commit v1.11-1704-g254227b of 2012-05-01,
- "parallel-tests: avoid trailing backslashes in make recipes",
- and automake bug#10436.
- Recipes with a trailing backslash character (possibly followed by
- blank characters only) can cause spurious syntax errors with at
- least older bash versions (e.g., bash 2.05b), and can be potentially
- be unportable to other weaker shells.
- So provide a target that runs the testsuite looking for this kind
- of breakage (without requiring a real bugged shell).
- * t/ax/shell-no-trail-bslash.in: New, a "shell" that chokes on '-c'
- commands having a trailing '\' (possibly followed by whitespace only).
- * Makefile (t/ax/shell-no-trail-bslash): Generate this script from it.
- (noinst_SCRIPTS, CLEANFILES): Add it.
- (EXTRA_DIST): Add 't/ax/shell-no-trail-bslash.in'.
- (check-no-trailing-backslash-in-recipes): New target, runs the testsuite
- with 'shell-no-trail-bslash' as the CONFIG_SHELL, to catch possible
- recipes having a trailing backslash character (possibly followed by
- * .gitignore: Update.
- * t/self-check-shell-no-trail-bslash.sh: New testsuite self-check.
- * t/parallel-tests-trailing-bslash.sh: Remove as obsolete.
- * t/list-of-tests.mk: Adjust.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- configure: correctly identify missing GNU compilers as such
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: correctly identify missing GNU compilers as such
- * configure.ac: Here, instead of mistakenly diagnose them as "botched".
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: get rid of ./defs, it's no longer used.
- * defs: Delete.
- * configure.ac (AC_CONFIG_LINKS): No longer link it.
- * t/ax/tap-setup.sh: Don't look for a file named 'defs' in
- the grandparent directory of the current test directory to
- decide whether we're running in the correct directory.
- * syntax-check.mk (xdefs): Remove '$(srcdir)/defs'.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix the name of a check
- * (sc_tests_Exit_not_exit): Rename ...
- (sc_tests_exit_not_Exit): ... like this, which is more faithful
- to what the check actually does. Adjust a grammaro in comments
- while at it.
- (syntax_check_rules): Adjust.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: guard against uses of ./defs in tests
- Now, 'test-init.sh' should be used instead.
- * (sc_tests_no_source_defs): New maintainer check.
- (syntax_check_rules): Add it.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove spurious leftover use of 'Exit'
- * t/per-target-flags.sh: Here, and simply use 'exit' instead.
- Issue revealed by the 'sc_tests_Exit_not_exit' maintainer check.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolete, and probably now wrong, comment
- * t/dirlist.sh: Here.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove obsolescent references to './defs'
- * t/distcom-subdir.sh, t/distcom2.sh, t/ax/depcomp.sh, t/conff2.sh,
- t/ccnoco3.sh, t/ccnoco.sh, t/self-check-dir.tap, t/self-check-exit.tap,
- t/self-check-me.tap: Here. Instead, refer to "am-test-lib.sh",
- "test-init.sh", or simply "the testsuite setup", as appropriate.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prefer including 'test-init.sh' rather than './defs'
- This is a follow-up to today's commit v1.12.4-22-g0610fc8,
- "tests: prepare to move ./defs to t/ax/test-init.sh"
- * All tests: To run the common setup, use the command:
- . test-init.sh
- instead of the older, "historical" one:
- . ./defs || exit 1
- Note that the "|| exit 1" wasn't really useful, since the 'errexit'
- shell flag is in effect in both './defs' and 'test-init.sh', and all
- the known shells that are good enough to run the automake testsuite
- do automatically exit with error when a sourced file cannot be found
- (at least, they do so in non-interactive mode, which is the only
- mode that concerns us in the testsuite).
- * t/ax/tap-summary-aux.sh, t/ax/testsuite-summary-checks.sh: Likewise.
- * gen-testsuite-part: Do the same in the generated tests.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: merge, tweak and modernize few test scripts
- tests: move coverage about BUILT_SOURCES
- tests: more meaningful names for some test cases
- tests: merge some grepping tests on Yacc support
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: merge, tweak and modernize few test scripts
- Basically an adjusted-and-improved cherry-pick from Automake-NG
- commit v1.12.1-343-gff30f83.
- * t/specflg.sh, t/specflg2.sh, t/specflg3.sh: Merged into ...
- * t/per-target-flags.sh: ... this test.
- * t/fo.sh: Remove, its weak grepping checks well superseded by
- the semantic checks in 't/fort4.sh'.
- * t/cxxo.sh: Remove, its weak grepping checks well superseded
- by the semantic checks in 't/cxx-demo.sh'.
- * t/cxxcpp.sh: Enhance a little.
- * t/empty.sh: Renamed ...
- * t/empty-data-primary.sh: ... to this. Add trailing ':' command.
- * t/empty2.sh, t/empty3.sh, t/empty4.sh: Merged ...
- * t/empty-sources-primary.tap: ... into this new test.
- * t/no-outdir-option.sh: Remove. A test to check than an obsolete
- and now deleted option ("--output-dir") stays deleted is way too
- much even for the most test-infected person ;-)
- * t/list-of-tests.mk: Adjust.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move coverage about BUILT_SOURCES
- Basically a backport of some tests from Automake-NG.
- * t/built-sources-check.sh: Sync it with the version in the ng/master
- branch. Accordingly, move part of the checks out ...
- * t/built-sources-install.sh: ... into this new test, synced from
- ng/master as well.
- * t/built-sources-subdir.sh: Minor tweaks and enhancements to sync it
- with the version in ng/master.
- * t/built-sources-cond.sh: New test, synced from ng/master.
- * t/built-sources.sh: Likewise, with minor edits to avoid a spurious
- failure.
- * t/built-sources-fork-bomb.sh: Likewise.
- * t/list-of-tests.mk: Update.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more meaningful names for some test cases
- * t/yacc5.sh: Renamed ...
- * t/yacc-grepping2.sh: ... like this.
- * t/yacc7.sh: Renamed ...
- * t/yacc-headers-and-pr47.sh: ... like this.
- * t/yacc8.sh: Renamed ...
- * t/yacc-subdir.sh: ... like this.
- * t/subdir10.sh: Rename ...
- * t/subdir-env-interference.sh: ... like this.
- * t/specflg10.sh: Rename ...
- * t/am-default-source-ext.sh: ... like this.
- * t/suffix12.sh: Rename ...
- * t/suffix-custom-subobj.sh: ... like this.
- * t/suffix13.sh: Rename ...
- * t/suffix-custom-subobj-and-specflg.sh: ... like this.
- * t/check3.sh: Rename ...
- * t/built-sources-check.sh: ... like this.
- * t/subdirbuiltsources.sh: Rename ...
- * t/built-sources-subdir.sh: ... like this.
- * t/bsource.sh: Rename ...
- * t/no-spurious-install-recursive.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: merge some grepping tests on Yacc support
- * t/yacc.sh, t/yacc2.sh: Merge ...
- * t/yacc-grepping.sh: ... into this test.
- * t/list-of-tests.mk: Adjust.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: prepare to move ./defs to t/ax/test-init.sh
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prepare to move ./defs to t/ax/test-init.sh
- We don't do this in a sweeping passage, because that would cause
- endless headaches in the synchronization between the maint, master
- and ng/master branches. Instead, we setup our framework to allow
- test scripts to work by sourcing either './defs' or 'test-init.sh',
- so that we'll be able to make the transition gradual and painless.
- * t/ax/test-init.sh: New, copied from the previous ./defs file.
- * defs: Simply work by sourcing the new file.
- * Makefile.am (dist_noinst_DATA): List the new file.
- * t/README: Adjust to mandate the sourcing of 'test-init.sh' rather
- than of './defs'.
- * t/c-demo.sh: Source 'test-init.sh' instead of ./defs. This is
- done to verify our new setup actually works.
- * t/ac-output-old.tap: Likewise.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- depcomp: avoid potential interferences from the environment
- depcomp: improve comments about the 'gcc' depmode
- sync: update files from upstream with "make fetch"
- maintcheck: remove an obsolescent check
- tests: rename some tests to more expressive names, again
- tests: remove an obsolescent grepping check
- tests: merge two tests on automatic remake functionality
- tests: rename some test to more expressive names
- news: 'compile' supports libfoo.a naming when wrapping Microsoft tools
- tests: ensure generation of wrapper tests matching multiple conditions
- tests: simplify a loop in gen-testsuite-part
- compile: support libfoo.a naming when wrapping Microsoft tools
- NEWS: fix wording and grammaros, re-wrap text accordingly
- cosmetics: fix typo in 'lib/depcomp' comments
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: avoid potential interferences from the environment
- * lib/depcomp (gccflag, dashmflag): By explicitly initializing these
- variables to the empty string by default.
- 2012-10-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: improve comments about the 'gcc' depmode
- It is not only needed by obsolescent gcc compilers (pre-3.x),
- but also by modern compiler like IBM C/C++. State that ...
- * lib/depcomp: ... here...
- * gen-testsuite-part: ... and here, where we generate the
- 'depcomp*.tap' tests.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: improve comments to AM_PROG_VALAC
- * m4/vala.m4 (AM_PROG_VALAC): Here.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: update w.r.t. recent vala changes
- * NEWS: Here.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: if no proper compiler found, set $(VALAC) to 'valac'
- This is better than setting it to ':' (as is currently done), because
- a triggered makefile rule invoking a vala compilation will then clearly
- fail with an informative error message like "valac: command not found",
- rather than silently, with the error possibly going unnoticed, or
- triggering harder-to-diagnose fallout failures in later steps.
- For a precedent of a similar behaviour, see the AC_PROG_YACC macro.
- * m4/valac.m4: Implement the new semantic.
- * doc/automake.texi (Vala Support): Document it.
- * t/vala4.sh: Adjust.
- 2012-10-26 Sébastien Wilmet <swilmet@gnome.org> (tiny change)
- Matthieu Baerts <matttbe@glx-dock.org>
- Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: AM_PROG_VALAC should not produce an error for tool-old valac
- This change fixes automake bug#12688.
- In the AM_PROG_VALAC macro, when the optional parameter specifying the
- minimum release number is not provided, and/or if the Vala compiler is
- not found, then there is a _warning_ message.
- On the other hand, when the version number is specified and if the Vala
- compiler is too old, there is an _error_ message.
- This error message is problematic, because for a tarball, the Vala
- compiler is not required: the generated C code is included in the
- tarball. So if a user wants to compile the software, he shouldn't
- need the valac program with the right version.
- * m4/vala.m4 (AM_PROG_VALAC): Modify to use AC_MSG_WARN instead
- of AC_MSG_ERROR.
- * t/vala4.sh: Adjust and enhance.
- * doc/automake.texi (Vala Support): Likewise.
- * THANKS: Update.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: document recent changes to AM_PROG_VALAC
- * doc/automake.texi (Vala Support): Here. This is a follow-up to
- recent commit 'v1.12.4-20-gdf202a3', "vala: add action arguments,
- for when no proper vala compiler is found".
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: enhance tests on AM_PROG_VALAC
- * t/vala4.sh: Here.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: style fixes in vala.m4
- * m4/vala.m4 (AM_PROG_VALAC): Here.
- 2012-10-26 Daiki Ueno <ueno@unixuser.org> (tiny change)
- vala: add action arguments, for when no proper vala compiler is found
- * m4/vala.m4 (AM_PROG_VALAC): Add optional action arguments to
- control the behavior if specified version of valac is not found.
- This emulates the behaviour of AM_PATH_PYTHON.
- * t/vala4.sh: Enhance.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess, lib/config.sub: Update.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: remove an obsolescent check
- * syntax-checks.mk (sc_test_names): Remove this check, which verified
- that no test name contained an m4/m4sugar builtin or macro name. Since
- most tests use their own name as the first argument to AC_INIT, doing
- that would have tickled a bug in Autoconf 2.62; but the bug was fixed
- in Autoconf 2.63 already; and we are going to soon require Autoconf
- 2.65 anyway (in automake 1.13), so this check has become more annoying
- than useful.
- (syntax_check_rules): Don't list the removed check.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename some tests to more expressive names, again
- * t/parallel-tests.sh: Rename ...
- * t/parallel-tests-basics.sh: ... like this.
- * t/parallel-tests3.sh: Rename ...
- * t/parallel-tests-concurrency.sh: ... like this.
- * t/parallel-tests5.sh: Rename ...
- * t/parallel-tests-concurrency-2.sh: ... like this.
- * t/parallel-tests6.sh: Rename ...
- * t/parallel-tests-empty.sh: ... like this. Adjust comments.
- * t/parallel-tests8.sh: Rename ...
- * t/parallel-tests-generated-and-distributed.sh: ... like this.
- * t/parallel-tests9.sh: Rename ...
- * t/parallel-tests-recheck.sh: ... like this.
- * t/parallel-tests10.sh: Rename ...
- * t/parallel-tests-trailing-whitespace.sh: ... like this.
- * t/remake3a.sh: Rename ...
- * t/remake-subdir-no-makefile.sh: ... like this.
- * t/remake4.sh: Rename ...
- * t/remake-not-after-make-dist.sh: ... like this.
- * t/remake5.sh: Rename ...
- * t/remake-maintainer-mode.sh: ... like this.
- * t/remake6.sh: Rename ...
- * t/remake-subdir3.sh: ... like this.
- * t/remake7.sh: Rename ...
- * t/remake-fail.sh: ... like this.
- * t/remake11.sh: Rename ...
- * t/remake-deeply-nested.sh: ... like this
- * t/remake12.sh: Rename ...
- * t/remake-mild-stress.sh: ... like this
- * t/pr8365-remake-timing.sh: Rename ...
- * t/remake-timing-bug-pr8365.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolescent grepping check
- * t/remake3.sh: This one, superseded by ...
- * t/remake3a.sh: ... this semantic test, whose comments have been
- djusted accordingly.
- * t/list-of-tests.mk: Adjust.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: merge two tests on automatic remake functionality
- * t/remake2.sh: Merge ...
- * t/remake-subdir-grepping.sh: ... in here.
- * t/list-of-tests.mk: Adjust.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename some test to more expressive names
- * t/remake.sh: Rename ...
- * t/remake-subdir-grepping.sh: ... like this.
- * t/remake8a.sh: Rename ...
- * t/remake-makefile-intree.sh: ... like this, and adjust comments.
- * t/remake8b.sh: Rename ...
- * t/remake-makefile-vpath.sh: ... like this, and adjust comments.
- * t/remake9a.sh: Rename ...
- * t/remake-after-configure-ac.sh: ... like this, and adjust comments.
- * t/remake9b.sh: Rename ...
- * t/remake-after-makefile-am.sh: ... like this, and adjust comments.
- * t/remake9c.sh: Rename ...
- * t/remake-after-acinclude-m4.sh: ... like this, and adjust comments.
- * t/remake9d.sh: Rename ...
- * t/remake-after-aclocal-m4.sh: ... like this, and adjust comments.
- * t/remake10a.sh: Rename ...
- * t/remake-include-configure.sh: ... like this, and adjust comments.
- * t/remake10b.sh: Rename ...
- * t/remake-include-makefile.sh: ... like this, and adjust comments.
- * t/remake10c.sh: Rename ...
- * t/remake-include-aclocal.sh: ... like this, and adjust comments.
- * t/list-of-tests.mk: Adjust.
- 2012-10-26 Jim Meyering <jim@meyering.net>
- compat: reinstate AM_PROG_MKDIR_P, for gettext
- Do not remove AM_PROG_MKDIR_P just yet.
- gettext (latest from git) still AC_REQUIRE's AM_PROG_MKDIR_P via its
- intl.m4 and po.m4 files, which are pulled into *many* projects.
- When I try to build one of those projects (coreutils) using the latest
- from automake.git/master, I see this failure:
- $ aclocal -I m4
- configure.ac:477: warning: AM_PROG_MKDIR_P is m4_require'd \
- but not m4_defun'd
- m4/po.m4:23: AM_PO_SUBDIRS is expanded from...
- m4/gettext.m4:57: AM_GNU_GETTEXT is expanded from...
- configure.ac:477: the top level
- That is because AM_PROG_MKDIR_P was removed (via commit
- v1.12-20-g8a1c64f) in preparation for the next release of automake.
- * NEWS: Remove the paragraph that announced the removal of
- AM_PROG_MKDIR_P.
- * Makefile.am (dist_automake_ac_DATA): Add m4/mkdirp.m4.
- * m4/mkdirp.m4: Re-add file.
- * t/mkdirp-deprecation.sh: Likewise.
- * t/list-of-tests.mk: Add it.
- * automake.in: Restore removed code, and adjust comments, s/1.13/1.14/
- to reflect new plan for removal.
- * doc/automake.texi (Obsolete Macros): Restore the section, but
- now with only one entry: the one for AM_PROG_MKDIR_P.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: 'compile' supports libfoo.a naming when wrapping Microsoft tools
- This is a follow-up to commit 'v1.12.4-10-g3c5c939' of 2012-10-04,
- "compile: support libfoo.a naming when wrapping Microsoft tools".
- * NEWS (Bugs fixed in 1.12.5): Update.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: ensure generation of wrapper tests matching multiple conditions
- * gen-testsuite-part: Our old code to generate wrapper tests had a
- severe limitation, in that if a test matched two or more conditions
- calling for generation of wrapper tests, still only one wrapper test
- was generated, instead of the three that would have been expected --
- that is, one using the setup code triggered by the first condition,
- one using the setup code triggered by the second condition, and one
- using both this setup code fragments.
- Admittedly, this was only a theoretical limitation for the moment,
- since since so far no test exists that matches two or more conditions
- for wrapping. Still, this might change in the future, and easily in
- an unnoticed way, so better fix the issue now, before it might become
- a real problem.
- 2012-10-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: simplify a loop in gen-testsuite-part
- * gen-testsuite-part: No need to loop on the (key, value) entries
- of the %test_generators has: we only use the value, and never the
- key. So loop simply on the values.
- 2012-10-14 Peter Rosin <peda@lysator.liu.se>
- compile: support libfoo.a naming when wrapping Microsoft tools
- There is a future plan to provide some means to have Automake
- create static libraries that are named differently depending
- on the system [1].
- The background is that everyone has always named static libraries
- libfoo.a, except the Redmond crowd who names them foo.lib, and
- you have to jump through hoops to have Automake create libraries
- named foo.lib in the land of non-GNU Windows while still creating
- libfoo.a everywhere else.
- However, there is probably no sane way to accomplish that system
- dependent naming discussed in [1] without user intervention,
- which makes it necessary to support the classic libfoo.a naming
- when using Microsoft tools in the best possible way, for the
- benefit of all projects today and for future projects not
- opting in to whatever scheme is selected for the problem at
- hand.
- [1] http://lists.gnu.org/archive/html/automake/2012-09/msg00028.html
- * lib/compile (func_cl_dashl): As a last resort, match -lfoo with
- libfoo.a, if that file exist on the library search path.
- * t/compile4.sh: Remove obsolescent workaround for the above.
- * t/compile6.sh: Extend to check that libbaz.a is indeed found
- when baz.lib and baz.dll.lib does not exist and that bar.lib
- and bar.dll.lib are preferred over libbar.a.
- 2012-10-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: fix wording and grammaros, re-wrap text accordingly
- Reported-by: Peter Rosin <peda@lysator.liu.se>
- 2012-10-14 Paul Eggert <eggert@cs.ucla.edu>
- cosmetics: fix typo in 'lib/depcomp' comments
- Fixes automake bug#12578.
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- config headers: remove stale comment in makefile fragment
- NEWS: wording and quoting fixlets in few older entries
- config headers: don't emit rules for headers not generated by autoheader
- docs: fix minor typo: s/expending/expanding/
- sync: update files from upstream with "make fetch"
- maint: post-release minor version bump
- maint: typo fixes s/lies into/lies in/
- release: stable release 1.12.4
- NEWS: minor fix
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- config headers: remove stale comment in makefile fragment
- * lib/am/remake-hdr.am: Here.
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: wording and quoting fixlets in few older entries
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- config headers: don't emit rules for headers not generated by autoheader
- This change fixed automake bug#12495.
- Even if an AC_CONFIG_HEADERS invocation is passed a list of several files
- as the first argument, only the first one of those file is considered by
- autoheader for automatic generation of the corresponding '.in' template.
- This is done on purpose, and is clearly documented in the Autoconf manual,
- which (as of the 2.69 version) reads something like this:
- The autoheader program searches for the first invocation of
- AC_CONFIG_HEADERS in configure sources to determine the name of
- the template. If the first call of AC_CONFIG_HEADERS specifies
- more than one input file name, autoheader uses the first one.
- That is, an invocation like:
- AC_CONFIG_HEADERS([config.h config2.h])
- should cause autoheader to generate only a 'config.h.in' template,
- and not also a 'config2.h.in' one.
- Accordingly, automake, when tracing AC_CONFIG_HEADERS, should generate
- remake rules only for the template associated to the first input file
- name passed to that macro. In some situations, however, automake failed
- to properly limit itself in this way; for example, with an input like:
- AC_CONFIG_HEADERS([config.h sub/foo.h])
- in configure.ac, and with the 'sub' directory listed in the SUBDIRS
- variable of the top-level Makefile, automake would erroneously generate
- in 'sub/Makefile.in' a rule to remake the 'foo.h.in' template by
- invoking autoheader.
- This issue was likely introduced in commit 'Release-1-8-23-g262bb92'
- of 2004-01-05.
- * NEWS: Update.
- * doc/automake.texi (Optional): Improve wording in the description of
- hat rules automake generates in response to an 'AC_CONFIG_HEADERS'
- invocation.
- * lib/am/remake-hdr.am: Only emit autoheader-invoking remake rules for
- the %CONFIG_HIN% template if that corresponds to the first argument of
- AC_CONFIG_HEADERS, as explaned above. Do so using the automake-time
- conditional %?FIRST-HDR%, that is properly passed ...
- * automake.in (handle_configure): ... from a 'file_contents' invocation
- in here.
- * t/autohdr-subdir-pr12495.sh: New test.
- * t/list-of-tests.mk: Add it.
- * THANKS: Update.
- Helped-by: Hib Eris <hib@hiberis.nl>
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix minor typo: s/expending/expanding/
- * doc/automake.texi (Wildcards): Here. Fixes automake bug#12516.
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/texinfo.tex: Update.
- 2012-10-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.4a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-09-23 Jim Meyering <meyering@redhat.com>
- maint: typo fixes s/lies into/lies in/
- 2012-09-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.4
- * configure.ac (AC_INIT): Bump version number to 1.12.4.
- * m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
- 2012-09-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: minor fix
- 2012-09-12 Jim Meyering <meyering@redhat.com>
- fix typos in mk-dirp.m4
- * t/gettext-macros.sh: Fix typo in name of macro emitted into
- mk-dirp.m4: s/AM_MKDIR_P/AM_PROG_MKDIR_P/,
- and as Stefano Lattarini noted, also fix this typo:
- s/AC_MKDIR_P/AC_PROG_MKDIR_P/.
- 2012-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: automake bug bug#12372 is fixed
- It has been fixed as a side effect of the overhauling of tags support.
- * t/list-of-tests.mk (XFAIL_TESTS): No longer list 'tags-pr12372.sh'.
- * NEWS: Update.
- 2012-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- coverage: better exposure for automake bug#12372 (tags-related)
- coverage: expose automake bug#12372 (tags-related)
- 2012-09-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: better exposure for automake bug#12372 (tags-related)
- Alas, in contrast with what is said in the commit message of previous
- commit 'v1.12.3-14-g94b7b8e', that bug is still present also in the
- current maint branch (which will become automake version 1.12.4); it
- is just that it only triggers when a _SOURCES variable contains only
- files with custom extension.
- * t/tags-pr12372.sh: Extend.
- * t/list-of-tests.mk: Add it.
- Suggested-by: Юрий Пухальский <aikipooh@gmail.com>
- 2012-09-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#12372 (tags-related)
- That bug is somehow already been fixed in the latest automake
- version (1.12.4); but exercise it anyway in the testsuite, to
- ensure we won't regress.
- * t/tags-pr12372.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-09-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- sync: update files from upstream with "make fetch"
- news: cygnus will be removed in automake 1.13
- news: some changes for 1.13 has been "de-planned"
- news: report that the have seen fixlets after 1.12.3
- warns: enable category 'obsolete' by default
- 2012-09-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/texinfo.tex: Update.
- 2012-09-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: cygnus will be removed in automake 1.13
- * NEWS (Future backward-incompatibilities): So document it here.
- 2012-09-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: some changes for 1.13 has been "de-planned"
- * NEWS (Future backward-incompatibilities): The planned Automake release
- 1.13 already has too much stuff on its plate; so we are not going to
- In Automake 1.13, we are definitely not going to change the exact order
- in which the directories in the aclocal macro search path are looked up.
- Also, experience and user feedback have shown that the "obsolescent"
- two-arguments invocation for AM_INIT_AUTOMAKE:
- AM_INIT_AUTOMAKE(PACKAGE-NAME, PACKAGE-VERSION)
- is still useful (until at least Autoconf is fixed to offer better support
- for "dynamically" package versions), so we are not going to remove
- support for that usage in Automake 1.13. For more details, see commit
- v1.12.2-245-g2abe183 of 2012-08-24, "AM_INIT_AUTOMAKE: allow obsolescent
- two-args invocation once again".
- (New in 1.12.1): Adjust accordingly.
- 2012-09-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: report that the have seen fixlets after 1.12.3
- * NEWS: Here.
- 2012-09-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- warns: enable category 'obsolete' by default
- No surprise that our users were bitten by backward-incompatible changes
- especially hard: the warnings in the 'obsolete' category, that might
- have informed them of the upcoming incompatibilities, and help them to
- prepare for the transition, where not enabled by default!
- * NEWS, doc/automake.texi: Update.
- * lib/Automake/ChannelDefs.pm: Enable warnings in the category 'obsolete'
- by default.
- * t/warnings-obsolete-default.sh: New test.
- * t/list-of-tests.mk: Add it.
- * t/backcompat.sh: Use 'configure.ac' rather than 'configure.in' as
- autoconf input file, to avoid spurious aclocal errors.
- * t/backcompat2.sh: Likewise.
- * t/backcompat3.sh: Likewise.
- * t/backcompat5.sh: Add '-Wno-obsolete' when invoking aclocal. Adjust
- heading comments.
- * t/backcompat6.sh: Likewise.
- * t/cygnus-imply-foreign.sh: Add '-Wno-obsolete' when invoking automake.
- 2012-08-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a maintainer-check failure ('Exit' used instead of 'exit')
- * t/lisp-loadpath.sh: Here.
- 2012-08-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- sync: update files from upstream with "make fetch"
- automake: don't define many identical 'lang_*_rewrite' subroutines
- coverage: bugs #8844 and #9933 (already fixed by Akim's work on ylwrap)
- 2012-08-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess, lib/config.sub: Update.
- 2012-08-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: don't define many identical 'lang_*_rewrite' subroutines
- This is just a simplifying refactoring, with no semantic change intended.
- Cherry-picked from the Automake-NG commit 'v1.12.1-312-g63aa4a9' of
- 2012-06-07.
- 2012-08-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: bugs #8844 and #9933 (already fixed by Akim's work on ylwrap)
- * t/flex-header.sh: New test, show that automake bug#8844 and bug#9933
- have already been fixed by the recent-ish improvements to ylwrap (merged
- with commit v1.12.2-27-gec5cb49 of 2012-07-16, "Merge branch 'yacc-work'
- into maint").
- * t/list-of-tests.mk: Update.
- 2012-08-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- docs: don't suggest to use recursive makefile setup
- tests: fix a timestamp race in python tests
- tests: fixup: make distcheck-override-infodir pass again
- sync: update files from upstream with "make fetch"
- maint: post-release minor version bump
- release: stable release 1.12.3
- maintcheck: fix spurious warnings
- docs: fix typo: s/make install-info/make uninstall-info/
- tests: fixup: make a couple of tests executable
- 2012-08-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- AM_INIT_AUTOMAKE: allow obsolescent two-args invocation once again
- This partially reverts commit 'v1.12-67-ge186355' of 2012-05-25,
- "init: obsolete usages of AM_INIT_AUTOMAKE not supported anymore"
- Some users still need to be able to define the version number for
- their package dynamically, at configure runtime.
- Their user case is that, for development snapshots, they want to be
- able to base the complete version of the package on the VCS revision
- ID (mostly Git or Mercurial). They could of course do so by
- specifying such version dynamically in their call to AC_INIT, as is
- done by several GNU packages. But then they would need to regenerate
- and re-run the configure script before each snapshot, which might be
- very time-consuming for complex packages, to the point of slowing
- down and even somewhat impeding development.
- The situation should truly be solved in Autoconf, by allowing a way
- to specify the version dynamically in a way that doesn't force the
- configure script to be regenerated and re-run every time the package
- version changes. But until Autoconf has been improved to allow
- this, Automake will have to support the obsolescent two-arguments
- invocation for AM_INIT_AUTOMAKE, to avoid regressing the suboptimal
- but working solution for the use case described above.
- See also:
- <http://lists.gnu.org/archive/html/automake/2012-08/msg00025.html>
- * NEWS: Update.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Support once again invocation with
- two or three arguments.
- * t/aminit-moreargs-no-more.sh: Renamed ...
- * t/aminit-moreargs-deprecated.sh: ... like this, and updated.
- * t/nodef.sh: Recovered test, with minor adjustments.
- * t/backcompat.sh: Likewise.
- * t/backcompat2.sh: Likewise.
- * t/backcompat3.sh: Likewise.
- * t/backcompat6.sh: Likewise.
- * t/list-of-tests.mk: Adjust.
- Suggested-by: Bob Friesenhahn n<bfriesen@simple.dallas.tx.us>
- 2012-08-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: don't suggest to use recursive makefile setup
- * doc/automake.texi (Introduction): Here, by erroneously telling that
- "there should generally be one Makefile.am per directory of a project".
- For reference, see commit 'v1.12.1-25-g61dfb47' of 2012-06-12, "docs:
- recursive make considered harmful".
- 2012-08-16 Adam Sampson <ats@offog.org> (tiny change)
- Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a timestamp race in python tests
- Fixes automake bug#12210.
- * t/python-missing.sh: Call aclocal and autoconf with the "--force"
- option. We need this because, on fast machines, it's possible for
- 'mypy.m4' and 'aclocal.m4' to end up with the same timestamp as configure,
- so autoconf (without the "--force" options) wouldn't bother to rebuild it,
- and would just rerun the previous AM_PATH_PYTHON test, succeeding rather
- than failing as expected.
- * t/python-am-path-iftrue.sh: Likewise.
- 2012-08-14 Peter Rosin <peda@lysator.liu.se>
- tests: fixup: make distcheck-override-infodir pass again
- Fixes Automake bug#12198.
- * t/distcheck-override-infodir.sh (main.texi): Remove all leading
- cruft added by commit v1.12.2-96-g133307b "maintcheck: fix spurious
- warnings".
- 2012-08-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess, lib/config.sub, lib/gitlog-to-changelog,
- lib/texinfo.tex: Update.
- 2012-08-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.3a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.3
- * configure.ac (AC_INIT): Bump version number to 1.12.3.
- * m4/amversion.m4: Likewise (auto-updated by "./bootstrap").
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix spurious warnings
- * t/distcheck-override-infodir.sh: Be sure that valid occurences
- of the "aclocal" and "automake" strings, which can confuse the
- 'sc_tests_plain_automake' check, are protected by leading "#"
- characters.
- * t/ax/test-lib.sh: Always use '$(...)' for command subtitution,
- to avoid triggering the 'sc_tests_command_subst' check; there was
- still once place where `...` was used. While at it, fix a related
- comment.
- * t/ax/test-defs.in ($sleep): Use creative quoting to avoid
- spuriously triggering the 'sc_tests_plain_sleep' check.
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix typo: s/make install-info/make uninstall-info/
- * doc/automake.texi (Texinfo): Here. And a minor wording improvement
- while we are at it.
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fixup: make a couple of tests executable
- * t/python-am-path-iftrue.sh: This.
- * t/python-missing.sh: And this.
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: rework tests on AM_PATH_PYTHON
- cosmetics: fix typos and references in comments
- typofix: in a test diagnostic
- readme: fixlets to HACKING
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rework tests on AM_PATH_PYTHON
- * t/python8.sh, t/python9.sh: Merge into ...
- * t/python-am-path-iftrue.sh: ... this new test, with minor adjustments.
- * t/python4.sh, t/python5.sh, t/python6.sh, t/python7.sh: Merge into ...
- * t/python-missing.sh: ... this new test.
- * t/python5b.sh: Rename ...
- * t/python-too-old.sh: ... like this, and adjust/extend.
- * t/list-of-tests.mk: Adjust.
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix typos and references in comments
- * lib/am/check.am: Here.
- * doc/automake.texi: And here.
- * t/*.sh: And in several of these tests.
- 2012-08-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in a test diagnostic
- * t/cscope.tap: Here.
- 2012-08-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: fixlets to HACKING
- * HACKING: Use longer "=====" lines to separate different section (this
- is just eye-candy admittedly, but I prefer it).
- (Release procedure): Don't tell to "update NEWS"; that should be updated
- throughout the normal course of development. Instead, tell to just check
- it. Improve description of the re-bootstrapping and rechecking procedure,
- also suggesting to use "git clean" beforehand (with all due warnings!).
- 2012-08-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cleanup: remove stale references to 'lzma' option
- 2012-08-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove unused transform '%HAVE-MANS%'
- * automake.in (preprocess_file): Here.
- 2012-08-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove stale references to 'lzma' option
- * automake.in (preprocess_file): Here.
- (handle_dist): And here.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- automake: remove an unused local variable
- distcheck: more resilient against possible failures
- cleanup: remove almost-unused global var 'am_relative_dir'
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: remove an unused local variable
- * automake.in (handle_dist): Here, the '$extra_dist' variable.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- distcheck: more resilient against possible failures
- * lib/am/distdir.am (distcheck): Ensure that a failure in the commands
- making the just-extracted source tree read-only cause the recipe to fail.
- While at it, save a fork by creating the '_build' and '_inst' subdir
- with a single mkdir invocation.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove almost-unused global var 'am_relative_dir'
- Cherry picked from commit v1.12.2-741-g53b5d11 of Automake-NG.
- * automake.in ($am_relative_dir): Delete, it was only used once ...
- (generate_makefile): ... in here, so it's simpler to inline its
- expansion.
- (initialize_per_input): Don't reset the deleted variable.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cleanup: remove two almost-unused global variables: {am,in}_file_name
- cleanup: remove almost-unused global var 'topsrcdir'
- automake: remove an unused variable
- tests: make a test script more semantic
- tests: remove an obsolete, no-op test script
- tests: remove an obsolete test script
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove two almost-unused global variables: {am,in}_file_name
- Cherry picked from commit v1.12.2-739-gbf2a8b0 of Automake-NG.
- * automake.in ($am_file_name, $in_file_name): Delete these, which were
- used only in the 'read_main_am_file' subroutine; instead ...
- (read_main_am_file): ... modify it to only work from the '$makefile_am'
- argument (which it was already receiving), and the new '$makefile_in'
- argument, which is now passed to it ...
- (generate_makefile): ... from here.
- (initialize_per_input): Don't reset the two deleted variables anymore.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove almost-unused global var 'topsrcdir'
- Cherry picked from commit v1.12.2-740-ga7f24eb in Automake-NG.
- * automake.in ($topsrcdir): Delete, it was only used once ...
- (handle_LIBOBJS_or_ALLOCA): ... in here, so it's simpler to inline
- its expansion. Improve formatting of immediately surrounding code
- a little while we are at it.
- (initialize_per_input): Don't reset the deleted variable.
- 2012-08-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: remove an unused variable
- * automake.in ($canonical_location): This.
- (scan_autoconf_traces): Don't initialize it.
- 2012-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make a test script more semantic
- This is mostly useful for Automake-NG, that is heavily overhauling the
- generated Makefiles and thus is prone to break grepping checks (which
- can sometimes end up causing false negatives in the testsuite, sadly).
- But this is not a reason not to strengthen the test for mainline
- Automake as well.
- * t/noinstdir.sh: Add semantic checks.
- 2012-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolete, no-op test script
- * t/info.sh: This: it tried to operate by checking the contents of the
- variable '$(INFOS)', but that is not even defined (and probably has been
- obsolete for quite a long time). Since other tests already do thorough
- testing of the Texinfo support, just remove this test.
- * t/list-of-tests.mk: Adjust.
- 2012-08-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolete test script
- * t/scripts.sh: This: it used to check that the 'AC_PROG_INSTALL' macro
- was not uselessly required, but today that macro is AC_REQUIRE'd by
- 'AM_INIT_AUTOMAKE' anyway, so that the test is no more significant.
- * t/list-of-tests.mk: Adjust.
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: avoid spurious failures with older Texinfo
- tests: avoid tons of spurious failures on NetBSD
- runtest: avoid spurious failures on NetBSD
- news: dependency tracking for Portland Group Compilers is now supported
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures with older Texinfo
- * t/distcheck-override-infodir.sh (main.texi): Add explicit calls to
- '@dircategory' and '@direntry', to ensure a 'dir' file will be created
- also by 'install-info' coming with Texinfo 4.8.
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid tons of spurious failures on NetBSD
- * t/ax/am-test-lib.sh (process_requirements): Set the '$am_tool' variable
- to the empty string before trying to unset it; otherwise, we might be
- attempting to unset an already-unset variable, which (together with the
- presence of the 'errexit' shell flag) causes spurious failures at least
- with the /bin/sh shell from NetBSD 5.1. This was actually causing the
- great majority of the Automake tests (all those not using a "required=..."
- declaration) to fail spuriously on that platform!
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: avoid spurious failures on NetBSD
- * runtest.in: Use ${1+"$@"} rather than simply "$@", because the 'set -u'
- setting used in the script causes the latter to trigger a spurious error
- with the NetBSD 5.1 /bin/sh ("./runtest: @: parameter not set") if there
- are no arguments to the test.
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: dependency tracking for Portland Group Compilers is now supported
- * NEWS: So document it here.
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'elisp-work'
- * elisp-work:
- news: document all the recent elisp-related changes and improvements
- coverage: byte-compiling elisp files in different subdirectories
- elisp: honour AM_ELCFLAFS and ELCFLAGS in byte-compilation
- elisp: --batch implies -q, remove -q
- elisp: support elisp files in subdirectories properly
- elisp: simplify suffix rules using emacs '-L' option
- elisp: no need to "absolutize" $(srcdir) and $(builddir) ...
- elisp: prefer $(builddir) files over $(srcdir) ones
- elisp: use suffix rules, get rid of 'elisp-comp' script (mostly a rewrite)
- coverage: elisp path contains $(srcdir) and $(builddir)
- coverage: emacs lisp files in subdirectories
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: cater to OpenSolaris 'zip'
- 2012-08-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: cater to OpenSolaris 'zip'
- * t/dist-formats.tap: Here: OpenSolaris zip do not accept the
- '--version' option, but accept the '-v' one with a similar
- meaning (if no further arguments are given).
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious XPASS on OpenIndiana
- tests: avoid spurious failure of 't/vala-vapi.sh' on OpenIndiana
- tests: avoid spurious failure of 't/uninstall-fail.sh' on OpenIndiana
- tests: reimplement wrappers for automake and aclocal in perl
- tests: work around a ksh bug w.r.t. ${1+"$@"}
- depcomp: style changes to Portland Group Compilers support
- depcomp: initial support for Portland Group Compilers
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious XPASS on OpenIndiana
- * t/instspc.tap: Here, by isolating the $(DESTDIR) used by runs with
- different "problematic strings" to prevent them to unduly interfering
- with each other. With this, the Automake testsuite finally run cleanly
- on the OpenIndiana and Solaris 10 systems I have access to.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure of 't/vala-vapi.sh' on OpenIndiana
- * t/vala-vapi.sh: Use 'printf', not 'echo', to print strings containing
- substrings like '\n', that can be interpreted like escape strings. That
- because the /bin/sh and the /bin/bash shell from OpenIndiana actually
- interpret them that way:
- $ /bin/sh -c 'echo "foo\nbar"'
- foo
- bar
- $ /bin/bash -c 'echo "foo\nbar"'
- foo
- bar
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure of 't/uninstall-fail.sh' on OpenIndiana
- On current OpenIndiana (based on what once was OpenSolaris 11), the shell
- /bin/sh (which, differently from what happens on Solaris, is a true POSIX
- shell, thus worthy of consideration) somehow manages to "eat" the
- error message from 'rm' when that fails to remove a file due to lacking
- permission on the parent directory:
- $ /bin/sh -c "cd unwritable-dir || { echo OOPS; exit 1; }; rm -f foo"
- $ echo rc = $?
- rc = 1
- $ /bin/bash -c "cd unwritable-dir || { echo OOPS; exit 1; }; rm -f foo"
- rm: foo not removed: Permission denied
- $ echo rc = $?
- rc = 2
- $ /bin/sh -c "cd unwritable-dir || { echo OOPS; exit 1; }; env rm -f foo"
- rm: foo not removed: Permission denied
- $ echo rc = $?
- rc = 2
- That is probably due to an improper optimization, that is, the shell tries
- to be smart and remove the file itself instead of invoking 'rm', but fails
- spectacularly in the attempt.
- * t/uninstall-fail.sh: The just-described bug was causing a spurious
- failure in this test case. Cater to thus situation, by relaxing the
- test when a faulty shell is detected. And while at it, fix and improve
- an unrelated comment.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: reimplement wrappers for automake and aclocal in perl
- This will allow us to avoid one extra shell invocation per automake
- and aclocal invocation in our testsuite, and, more importantly, will
- allow us not to worry about potential shell portability issues, at
- least in those wrappers. For an example of such a portability issue,
- refer to the recent commit v1.12.2-80-g65dadf6 "tests: work around a
- ksh bug w.r.t. ${1+"$@"}".
- * t/wrap/automake.in, t/wrap/aclocal.in: Rewritten in perl.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: work around a ksh bug w.r.t. ${1+"$@"}
- Fixes automake bug#10898. See also the older (much older) thread:
- <http://lists.gnu.org/archive/html/automake-patches/2009-12/msg00036.html>
- At least the AT&T and OpenSolaris versions of the Korn shell, as well
- as the /bin/sh from OpenIndiana 11, have a strange bug regarding the
- expansion of ${1+"$@"}: when exactly *one empty* argument is passed to
- a script run by one of this shells, inside that script ${1+"$@"} will
- expand to *nothing*, rather than to to the single empty string, as
- one would expect (OTOH, $# will correctly expand to 1). This buggy
- behaviour was causing a spurious failure in our testsuite (test 6 in
- 't/automake-cmdline.tap'). Work around it.
- * t/wrap/automake.in: Here.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document all the recent elisp-related changes and improvements
- * NEWS (Elisp byte-compilation): Here. Also notice that the recent
- changes have fixed the long-standing (almost two years old!) automake
- bug#7441.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: byte-compiling elisp files in different subdirectories
- Where a '.el' file in a subdirectory might require a '.el' file in
- another one. This does not work out of the box, but can be made to
- work with a judicious use of $(AM_ELCFLAGS) (just introduced in the
- previous commit).
- * t/lisp-subdir-mix.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-08-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- elisp: honour AM_ELCFLAFS and ELCFLAGS in byte-compilation
- * lib/am/lisp.am (.el.elc): Add "$(AM_ELCFLAFS) $(ELCFLAGS)"
- to the emacs command line.
- * t/lisp-flags.sh: New test.
- * t/list-of-tests.mk: Add it.
- * doc/automake.texi (Emacs Lisp): Update.
- 2012-08-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'depcomp-pgcc' into maint
- * depcomp-pgcc:
- depcomp: style changes to Portland Group Compilers support
- depcomp: initial support for Portland Group Compilers
- 2012-07-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- build: fix build in VPATH setup
- gen-tests: simplify sourcing of helper shell files
- 2012-07-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: fix build in VPATH setup
- * Makefile.am (t/ax/test-defs.sh): Ensure the 't/ax' directory exists,
- before trying to create 'test-defs.sh' in there. This is required in
- VPATH builds.
- Reported-by: Akim Demaille <akim@lrde.epita.fr>
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix a couple of minor formatting issues
- * NEWS (New in 1.13): Here.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- gen-tests: simplify sourcing of helper shell files
- This is a follow-up on commit v1.12.2-49-g42fb45b, for an occurrence
- of '. "$am_testauxdir"/foo.sh' that wasn't in a test script, but
- rather in 'gen-testsuite-part' (ending up in the tests generated by
- that script).
- * gen-testsuite-part: In the generated 'depcomp*.tap' tests, use
- simply:
- . depcomp.sh
- rather than:
- . "$am_testauxdir/depcomp.sh"
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in a comment in Makefile.am
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint: (38 commits)
- maintcheck: fixup list of files in $(xdefs)
- tests: never source test-defs.sh directly, source test-lib.sh instead
- runtest: sanitize test environment
- tests: remove an obsolescent self test
- tests: "am_using_tap=yes" -> "am_test_protocol=tap"
- tests: protect test libs against multiple inclusion
- configure: testsuite shell can return early from "dot-sourced" files
- tests: move sanitization and "Bournification" in the generic test lib
- tests: source test defs in the generic test lib
- test defs: no need to re-add $srcdir/t/ax to $PATH
- tests: split test libs into "generic" and "automake-specific"
- test setup: move actual calling of testsuite setup in ./defs
- test setup: merge definitions of function for simple tests
- test init: refactor: new function 'am_test_setup'
- test init: refactor: move displaying of debugging info later
- test init: refactor: new function 'am_setup_testdir'
- test init: refactor: new function 'am_set_exit_traps'
- configure: testsuite shell set exit traps in shell functions
- test init: refactor: new function 'am_exit_trap'
- test init: refactor: new function 'process_requirements'
- ...
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'testsuite-refactor' into maint
- * testsuite-refactor: (33 commits)
- maintcheck: fixup list of files in $(xdefs)
- tests: never source test-defs.sh directly, source test-lib.sh instead
- runtest: sanitize test environment
- tests: remove an obsolescent self test
- tests: "am_using_tap=yes" -> "am_test_protocol=tap"
- tests: protect test libs against multiple inclusion
- configure: testsuite shell can return early from "dot-sourced" files
- tests: move sanitization and "Bournification" in the generic test lib
- tests: source test defs in the generic test lib
- test defs: no need to re-add $srcdir/t/ax to $PATH
- tests: split test libs into "generic" and "automake-specific"
- test setup: move actual calling of testsuite setup in ./defs
- test setup: merge definitions of function for simple tests
- test init: refactor: new function 'am_test_setup'
- test init: refactor: move displaying of debugging info later
- test init: refactor: new function 'am_setup_testdir'
- test init: refactor: new function 'am_set_exit_traps'
- configure: testsuite shell set exit traps in shell functions
- test init: refactor: new function 'am_exit_trap'
- test init: refactor: new function 'process_requirements'
- ...
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr12041' into maint
- * fix-pr12041:
- tests: avoid spurious failure when running as root
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fixup list of files in $(xdefs)
- syntax-checks.mk (xdefs): Adjust to recent changes: add 't/ax/test-lib.sh'
- and 't/ax/test-lib.sh', remove the now-deleted 't/ax/test-init.sh'
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: never source test-defs.sh directly, source test-lib.sh instead
- After the recent re-organization, sourcing 'test-defs.sh' directly might
- not work well and cause spurious failures or other unexpected behaviours.
- We should source 'test-lib.sh' instead, which contains not more direct
- code execution (only definition of shell variables/functions, or sourcing
- of other '*.sh' with the same property), is protected against multiple
- inclusions, and sources 'test-defs.sh' automatically in in a proper way.
- * t/testsuite-summary-count.sh, t/tap-summary.sh, t/tap-summary-color.sh,
- t/testsuite-summary-color.sh: Source 'test-lib.sh', not 'test-defs.sh'.
- * gen-testsuite-part: Likewise, in the generated wrapper scripts.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: sanitize test environment
- * runtest.in: Here, similarly to what is done by AM_TESTS_ENVIRONMENT
- in Makefile.am, unset variables that should be under the complete control
- of the test framework, and that could create havoc if inherited from the
- environment. This remove the need to check against possible environment
- "pollution" ...
- * t/ax/test-defs.in: ... in here.
- * Makefile.am (AM_TESTS_ENVIRONMENT): Add a comment about the need of
- synchronization with 'runtest.in'.
- * t/self-check-env-sanitize.tap: Remove as obsolete.
- * t/list-of-tests.mk: Adjust.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove an obsolescent self test
- * t/self-check-tap.sh: This. The recent reorganization and code
- moving between 'test-defs.sh' and 'test-lib.sh' has made it
- brittle and prone to failures. Since the usefulness of this self
- check is extremely limited, it's not worth trying to fix it. Just
- remove it.
- * t/list-of-tests.mk: Adjust.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: "am_using_tap=yes" -> "am_test_protocol=tap"
- And similarly, "am_using_tap=no" -> "am_test_protocol=none".
- The new '$am_test_protocol' name is clearer, and will allow the easy
- addition of further test protocols in the future. This is not truly
- relevant for automake, but we are trying to make some parts of our
- testsuite framework as general as possible, in view of a future move
- to a more generic project like Gnulib.
- * Makefile.am, t/ax/am-test-lib.sh, t/ax/test-defs.in, t/ax/test-lib.sh,
- t/self-check-env-sanitize.tap, t/self-check-tap.sh: Adjust.
- * syntax-checks.mk (sc_tests_obsolete_variables): Add 'am_using_tap' to
- the list of obsolete variables to check against.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: protect test libs against multiple inclusion
- * t/ax/test-lib.sh, t/ax/am-test-lib.sh: Return early if already sourced.
- Use the witness variables '$test_lib_sourced' and '$am_test_lib_sourced',
- respectively, for this purpose.
- * runtest.in, Makefile.am (AM_TESTS_ENVIRONMENT): Unset 'test_lib_sourced'
- and 'am_test_lib_sourced', to avoid interferences from the environment.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: testsuite shell can return early from "dot-sourced" files
- * configure.ac: Check that the shell selected to run the test
- scripts can call 'return' form within a file being sourced
- with the '.' built-in.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move sanitization and "Bournification" in the generic test lib
- * t/ax/test-defs.sh: From here ...
- * t/ax/test-lib.sh: ... to here. Also move the initialization of
- '$argv0' and '$me'.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: source test defs in the generic test lib
- * t/ax/test-lib.sh: That is, here ...
- * defs: ... rather than here.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: no need to re-add $srcdir/t/ax to $PATH
- * t/ax/test-defs.sh: Here. That is already done by both 'runtest' and
- AM_TESTS_ENVIRONMENT, and the presence of '$srcdir/t/ax' in $PATH is
- anyway required, after the recent changes, for our testsuite framework
- to work at all.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: split test libs into "generic" and "automake-specific"
- This is the first step in the quest to merge the generically useful
- parts of our test suite framework in a more generic project, like
- Gnulib. Time will tell if we'll succeed, and whether the success will
- be worth the extra hassle.
- * t/ax/test-init.sh: Split out ...
- * t/ax/am-test-lib.sh, t/ax/test-lib.sh: ... into these two tests.
- * defs, Makefile.am: Adjust.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test setup: move actual calling of testsuite setup in ./defs
- * t/ax/test-init.sh: Move call to 'am_test_setup' ...
- * defs: ... here.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test setup: merge definitions of function for simple tests
- * t/ax/plain-functions.sh: Delete, moving the definitions of ...
- ($stderr_fileno_): ... this variable ...
- (warn_, fail_, skip_, skip_all_, fatal_, framework_failure_): ... and
- these functions ...
- * t/ax/test-init.sh: ... in here. This allow us to use those functions
- earlier in this file (instead of having to duplicate their behaviour
- with inlined code). The TAP-based tests are still able to override these
- functions later to their TAP-enhanced equivalents when 'tap-functions.sh'
- is sourced.
- * Makefile.am (dist_noinst_DATA): Remove 't/ax/plain-functions.sh'.
- * t/ax/tap-functions.sh: Adjust a comment.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'am_test_setup'
- * t/ax/test-init.sh (am_test_setup): Here.
- Call it from the main code. Remove other calls of functions and
- settings that are now duly called by 'am_test_setup'.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: move displaying of debugging info later
- * t/ax/test-init.sh: Here, about the values of $PATH, $am_using_tap
- and $am_running_installcheck.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'am_setup_testdir'
- * t/ax/test-init.sh (am_setup_testdir): Here.
- Use it instead of inlining its contents in the main code.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'am_set_exit_traps'
- * t/ax/test-init.sh (am_set_exit_traps): Here.
- (trap): Use it instead of inlining the cleanup/finalization code.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: testsuite shell set exit traps in shell functions
- * configure.ac: Check that the shell selected to run the test
- scripts can set an exit trap in a shell function, without having
- that trap executed at the termination of the function rather
- than of the scripts. According to the Autoconf manual, at least
- AUX 5.3 /bin/sh suffers of such a bug.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'am_exit_trap'
- * t/ax/test-init.sh (am_exit_trap): Here.
- (trap): Use it instead of inlining the cleanup/finialization code.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'process_requirements'
- * t/ax/test-init.sh (process_requirements): Here.
- Use it in to check that the tools in $required are present.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: refactor: new function 'require_tool'
- * t/ax/test-init.sh (require_tool): Here.
- Use it in the loop in the prerequisites in $required.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test init: remove a couple of paranoid sanity checks
- * t/ax/test-init.sh: Here, about 'am_top_srcdir' and 'am_top_builddir';
- the values of those variables are AC_SUBST'd, so it's nigh impossible
- for the to be wrong or get "messed up".
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: simplify sourcing of helper shell files
- Now that the early $PATH setup in both 'runtest' and AM_TESTS_ENVIRONMENT
- allow the '.' built-in to find to-be-sourced shell scripts in the 't/ax/'
- directory automatically, we can simplify several usages like:
- . "$am_testauxdir"/foo.sh
- to just:
- . foo.sh
- Also, because our test scripts run with the 'errexit' flag active, and
- because POSIX mandates that, when the '.' built-in is used,
- ... if no readable file is found, a non-interactive shell shall abort ...
- we can further simplify usages like:
- . "$am_testauxdir"/foo.sh || fatal_ "sourcing foo.sh"
- once again to to just:
- . foo.sh
- * ./defs, several tests: Adjusted.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: move in 't/ax/test-defs.sh'
- We can do so with minimal churn, now that the early setup of $PATH in
- both 'runtest' and AM_TESTS_ENVIRONMENT allow the '.' built-in to find
- to-be-sourced shell scripts in 't/ax' automatically, both in in-tree
- and VPATH builds.
- With this change, we take another step forward a more rational and
- "segregated" organization of our testsuite framework.
- * defs-static.in: Rename ...
- * t/ax/test-defs.in: ... like this, and adjust.
- * Makefile.am, syntax-checks.mk, t/README, gen-testsuite-part,
- t/tests-init.sh, t/ax/tap-setup.sh, t/tap-summary.sh, .gitignore,
- t/testsuite-summary-color.sh, t/testsuite-summary-count.sh,
- t/self-check-tap.sh, defs: Adjust.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: update PATH early from AM_TESTS_ENVIRONMENT and runtest
- Because the POSIX standards mandate that sourcing a file with ". FILE"
- will cause FILE (assuming it is a relative containing no slashes) to be
- looked for in PATH, such a move will allow us to simplify our sourcing
- of shell testing libraries like (currently) 't/ax/test-init.sh' and
- 'defs', and to modularize and re-organize them better in the feature,
- with minimal churn.
- * runtest.in, Makefile.am (AM_TEST_ENVIRONMENT): Prepend $(abs_srcdir)/t/ax
- and $(abs_builddir)/t/ax (in that order) to PATH; do so avoiding repetition
- in the common case of non-VPATH builds.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: export $srcdir for use by the test scripts
- This is mostly a preparatory change in view of future ones. But it
- also make the behaviour of runtest more similar to that of the test
- harness used by "make check".
- * runtest.in: Export srcdir (was already defined to '@srcdir@').
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- gen-tests: $testdir/ax -> $testauxdir
- * gen-testsuite-part ($testauxdir): New, defined to "$testdir/ax".
- Use it throughout, for better encapsulation and less duplication.
- ($auxdir): Remove as unneeded.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- gen-tests: less hard-coding of 't' as the test directory
- This will make life easier for us in case we decide to rename the
- testsuite directory in the future (perhaps to something like 'tests',
- which is somewhat less cryptic than the current 't').
- * gen-testsuite-part ($testdir): New variable, used throughout instead
- of hard-coding the name of the test directory to 't'.
- All the script adjusted to make proper use of '$testdir'.
- ($auxdir): Move its definition earlier, for consistency with the one
- of '$testdir'.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: auxiliary testsuite files/scripts built by "make all"
- This will allow the developers to run a tests case by hand out of
- a newly extracted tarball simply doing:
- $ ./configure && make
- $ ./runtest t/the-test-case.sh
- while before this change one has to resort to:
- $ ./configure && make && make check TESTS=
- $ ./runtest t/the-test-case.sh
- or, with some non-GNU makes, even:
- $ ./configure && make && make check TESTS= AM_MAKEFLAGS="TESTS="
- $ ./runtest t/the-test-case.sh
- This come very handy sometimes, especially when doing one-shot
- debugging. Admittedly not a big deal, but one less friction in
- the build system is always nice.
- * Makefile.am (check_SCRIPTS, dist_check_DATA, nodist_check_DATA):
- Move their content to ...
- (noinst_SCRIPTS, dist_noinst_DATA, nodist_noinst_DATA): ... these
- variables.
- Adjust comments.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- perf tests: reorganize
- * t/list-of-tests.mk (handwritten_TESTS): Don't list ($perf_TESTS) in
- here anymore.
- * Makefile.am (EXTRA_DIST): Add them explicitly.
- (perf): New target, run the performance tests and save the logs of
- the ones with unexpected results in the file 't/perf/test-suite.log',
- which is thus ...
- (PERF_TEST_SUITE_LOG): ... defined in this variable ...
- (CLEANFILES): ... and added to this.
- (test_subdirs): Remove 't/perf': the tests in there are no more
- listed in $(TESTS).
- * t/ax/test-init.sh: Don't explicitly skip "perf" test here.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: pass *all* the given shell options to the test invocation
- * runtest.in: Here. This didn't work previously because, in our
- option parsing loop, we were mistakenly redefining '$shell_opts'
- each time, instead of appending to it.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: correctly pass shell option also for TAP tests
- * runtest.in: Here. This required code refactoring not
- completely trivial.
- 2012-07-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove leftover comment fragment from runtest.in
- 2012-07-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: improve a comment
- * defs-static.in: Here, about the unsetting of CDPATH.
- 2012-07-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: remove obsolete comment
- * defs-static.in: Here: do not state anymore that this file should execute
- correctly with any system's /bin/sh shell, as this is not true anymore: the
- testsuite assumes a POSIX shell throughout these days.
- 2012-07-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: support option --shell, tell which shell should run the test
- * runtest.in: Here. The same effect could have been obtained by
- exporting AM_TEST_RUNNER_SHELL to the desired value, but the new
- API is simpler and requires less typing and less thinking.
- 2012-07-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- runtest: support passing options over to the shell
- * runtest.in: Here. Also, support '--help' to display a nice
- help screen.
- 2012-07-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure when running as root
- Fixes automake bug#12041.
- * t/primary-prefix-couples-force-valid.sh: If run as root, don't expect
- a "test -x" on a non-executable files to fail: for root, all files are
- executable (as well as readable and writable), and at least on Solaris
- 10 that causes "test -x" to succeed also on non-executable files.
- 2012-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: avoid non-textual output in a '.log' file
- 2012-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid non-textual output in a '.log' file
- * t/dist-formats.tap: Here. Otherwise, some inferior awk implementations,
- like OpenIndiana /usr/xpg4/bin/awk, could be confused and cause spurious
- errors in the testsuite harness.
- 2012-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: refactor to reduce code duplication (2)
- No semantic change is intended.
- * lib/am/tags.am (am__define_uniq_tagged_files): New variable,
- factor out some code common to ...
- (ctags-am, tags-am, ID): ... the recipes of these targets.
- 2012-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: refactor to reduce code duplication (1)
- No semantic change is intended.
- * lib/am/tags.am (am__uniquify_input): New variable, factor
- out some code common to ...
- (ctags-am, tags-am, ID): ... the recipes of these targets.
- 2012-07-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'tags-simplify-recursion' and 'color-tests-always'
- * tags-simplify-recursion:
- tags: unify recursion for tags targets with that of "usual" targets
- * color-tests-always:
- tests: better name for a couple of tests
- check: support colorized testsuite output by default
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure with Solaris /bin/sh
- The /bin/sh shell on Solaris is dumb enough not to set the exit
- status to 127 after the execution of a non-existing command is
- attempted:
- $ /bin/sh -c 'nonesuch'; echo stat = $?
- /bin/sh: nonesuch: not found
- stat = 1
- This means that the missing script, when run through that shell,
- cannot discriminate between a real failure of a maintainer tool
- and a failure due to its absence. This is not a big deal in
- practice (especially because all the 'missing' invocations in
- our Makefiles are done with $(SHELL), and that is almost surely
- set by configure to a proper POSIX shell), but was causing an
- annoying failure in our testsuite. Fix it.
- * t/missing3.sh: If 'missing' is run with a /bin/sh shell suffering
- from the just-described bug, skip the check that would spuriously
- fail due to that bug.
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix buglet in t/missing3.sh
- * t/missing3.sh: Be sure to use 'run_cmd' also in the first invocation
- of 'missing', to ensure the stderr will actually be saved in a file we
- can later grep.
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- self tests: avoid spurious failures on older bash
- tests: remove t/parallel-tests-many.sh (fixes spurious failure)
- typofix: in a comment in the automake script
- news: minor fixlets and reordering
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11909' into maint
- * fix-pr11909:
- self tests: avoid spurious failures on older bash
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- self tests: avoid spurious failures on older bash
- Fixes automake bug#11909.
- * t/self-check-explicit-skips.sh: Remove or rework few checks for use
- cases that are no more relevant nor supported now that we've got rid
- of the need to use the 'Exit' function explicitly. Make the other
- existing checks stricter.
- 2012-07-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove t/parallel-tests-many.sh (fixes spurious failure)
- That test was checking for automake#7868 "parallel-tests and command-line
- length limit issue". That bug is still open, and the tests was xfailing.
- What concerns us is that the test was also causing an annoying problem.
- On Solaris 10, it produced a '.log' file with two overly-long lines (more
- than 1 million characters long!) and that was causing the test harness to
- experience spurious failures, with Solaris XPG4 awk complaining that:
- /usr/xpg4/bin/awk: line 0 (NR=734): Record too long (LIMIT: 19999 bytes)
- A little consideration shows that the bug#7868 checked by the culprit
- test cannot be solved "by accident", e.g., by another bug fix or some
- simple refactoring, so there is little added value in keeping the xfailing
- test for it, if this causes other problems (and we've seen it does).
- So we just remove the test. In case we ever manage to fix the bug in
- mainline automake, we can copy over the similar test(s) from Automake-NG,
- which has actually managed to fix the bug (and have simpler test cases
- for it).
- * t/parallel-tests-many.sh: Delete.
- * t/list-of-tests.mk (XFAIL_TESTS, handwritten_TESTS): Remove it.
- 2012-07-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better name for a couple of tests
- * t/color.sh: Rename ...
- * t/color-tests.sh: ... like this.
- * t/color2.sh: Rename ...
- * t/color-tests2.sh: ... like this.
- * t/list-of-tests.mk: Adjust.
- 2012-07-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- check: support colorized testsuite output by default
- Fixes automake bug#11855.
- With this change, we make the 'color-tests' option enabled by default.
- That option remains still silently accepted as a no-op, for backward
- compatibility.
- The developer of a package is still free to disable testsuite coloring on
- a per-makefile basis (by adding "AM_COLOR_TESTS = no" to the Makefile.am)
- or on a whole-project basis (by AC_SUBST'ing AM_COLOR_TESTS to "no" in
- configure.ac). But now the user will be able to request the testsuite
- output to be colorized, if he really wants to:
- # With GNU make:
- make AM_COLOR_TESTS=yes check
- # With non-GNU make:
- make AM_COLOR_TESTS=yes AM_MAKEFLAGS=AM_COLOR_TESTS=yes check
- * NEWS: Update.
- * doc/automake.texi: Updated, and some related minor reformatting
- and rewording.
- * automake.in (handle_tests): No need to pass the transform '%COLOR%'
- when processing "check.am".
- * lib/am/parallel-tests.am: Remove use of the '%?COLOR%' transform;
- just act as if it were unconditionally TRUE.
- * t/color.sh: No need to specify 'color-tests' in 'AUTOMAKE_OPTIONS'
- nor in 'AM_INIT_AUTOMAKE'.
- * t/ax/testsuite-summary-checks.sh: Likewise.
- * t/ax/tap-summary-aux.sh: Likewise.
- * t/color2.sh: Likewise. Also, ensure that colorized testsuite output
- can be disabled by default by calling "AC_SUBST([AM_COLOR_TESTS], [no])".
- * t/tap-realtime.sh: Define 'AM_COLOR_TESTS' to "no" in Makefile.am, to
- avoid spurious colorization of the output due to the use of the 'expect'
- program.
- * t/color-tests-opt.sh: New test, check that the 'color-tests' option is
- still recognized as a no-op.
- * t/list-of-tests.mk: Add the new test.
- 2012-07-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: unify recursion for tags targets with that of "usual" targets
- This change has a side effect: now any failure of the 'tags', 'ctags',
- 'cscope' and 'cscopelist' targets in a subdirectory will cause the
- recursive command issued from the top directory to fail. We believe
- that this behavioural change is not only justified by the simplification
- this patch entails, but actually offers better semantics: ignoring
- failures by default is never a good idea, and with make, the user can
- anyway order the completion of commands in the face of possible failures
- with the '-k' option.
- * NEWS: Update.
- * automake.in (%required_targets): Add keys 'cscopelist-am', 'tags-am'
- and 'ctags-am'.
- (handle_tags): Greatly simplified, the major part of the handling of
- recursion for the 'tags', 'ctags' and 'cscopelist' now moved out to ...
- * lib/am/tags.am: ... this file, that has been adjusted and extended
- accordingly.
- * t/maken3.sh: Remove testing of the 'TAGS' target, that is now just
- an alias to 'tags'. Without this change, this test would spuriously
- fail.
- 2012-07-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: in a comment in the automake script
- * automake.in (process_file): Here.
- 2012-07-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: minor fixlets and reordering
- 2012-07-16 Jack Kelly <jack@jackkelly.name>
- elisp: --batch implies -q, remove -q
- According to the emacs manual[1], --batch implies -q, so there's no
- need to pass -q when compiling elisp.
- * lib/am/lisp.am: Remove -q from $(EMACS) call.
- [1]: http://gnu.org/s/emacs/manual/html_node/emacs/Initial-Options.html
- 2012-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: delete "# serial" line in m4/amversion.in
- news: update about recent ylwrap changes and fixes
- m4: get rid of "# serial" lines
- configure: ${#param} must be supported by the shell for the testsuite
- yacc tests: fix a spurious failure with parallel make
- ylwrap: use proper quoting inside a `...` substitution
- ylwrap: don't uselessly reset the exit status in case of failure
- ylwrap: fix C++ support for Bison
- ylwrap: refactor: move loop invariant
- ylwrap: refactoring: don't rely on the file order
- tests: upgrade and fix Bison test case
- tests: fix bison input file
- ylwrap: comment changes
- ylwrap: modernize idioms
- ylwrap: rename header inclusion in generated parsers
- ylwrap: simplify the list of renamings
- ylwrap: refactor: less duplication
- 2012-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: delete "# serial" line in m4/amversion.in
- Otherwise, when m4/amversion.m4 is regenerated, it will contain a
- serial line as well.
- 2012-07-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'yacc-work' into maint
- * yacc-work:
- news: update about recent ylwrap changes and fixes
- yacc tests: fix a spurious failure with parallel make
- ylwrap: use proper quoting inside a `...` substitution
- ylwrap: don't uselessly reset the exit status in case of failure
- ylwrap: fix C++ support for Bison
- ylwrap: refactor: move loop invariant
- ylwrap: refactoring: don't rely on the file order
- tests: upgrade and fix Bison test case
- tests: fix bison input file
- ylwrap: comment changes
- ylwrap: modernize idioms
- ylwrap: rename header inclusion in generated parsers
- ylwrap: simplify the list of renamings
- ylwrap: refactor: less duplication
- 2012-07-16 Akim Demaille <akim@lrde.epita.fr>
- news: update about recent ylwrap changes and fixes
- * NEWS: In ylwrap, renamings are properly propagated, and unknown
- files are preserved.
- 2012-07-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- elisp: support elisp files in subdirectories properly
- For more reference, see:
- <http://lists.gnu.org/archive/html/automake/2009-10/msg00013.html>
- <http://thread.gmane.org/gmane.comp.sysutils.automake.bugs/4772>
- * lib/am/lisp.am (.el.elc): If the file being byte-compiled is in
- a subdirectory, add that (both as a subdirectory of the builddir
- and the srcdir) to the emacs load path. While we are at it (and
- for consistency), drop quoting of $(srcdir) and $(builddir), since
- those variables are ensured (by configure-time checks) not to
- contain white space nor shell metacharacters.
- * t/list-of-tests.mk (XFAIL_TESTS): Add 't/lisp-subdir.sh' and
- 't/lisp-subdir2.sh', since they now passes.
- 2012-07-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- elisp: simplify suffix rules using emacs '-L' option
- * lib/am/lisp.am (.el.elc): Use '-L dir' instead of calling '--eval' to
- explicitly append to the 'load-path' variable.
- 2012-07-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- elisp: no need to "absolutize" $(srcdir) and $(builddir) ...
- * lib/am/lisp.am (.el.elc): ... here: we don't chdir around anyway,
- nor move or copy around our source '.el' files. Update comments,
- and re-wrap them while we are at it.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- elisp: prefer $(builddir) files over $(srcdir) ones
- * lib/am/lisp.am (.el.elc): Here. This better respects VPATH spirit.
- Adjust and extends comments.
- * t/list-of-tests.mk (XFAIL_TESTS): Remove 't/lisp-loadpath.sh', which
- now passes.
- 2012-07-14 Jack Kelly <jack@jackkelly.name>
- elisp: use suffix rules, get rid of 'elisp-comp' script (mostly a rewrite)
- Motivated by automake bug#11806.
- Traditionally, automake byte-compiled emacs-lisp '.el' files by invoking
- 'elisp-comp' on all of them in a bulk; this involved complex timestamping
- and file-locking logic. It was also brittle in any slightly-unusual
- setup, because 'elisp-comp' operated by copying all of the elisp files
- to be compiled into a temporary sub-directory and compiling them in there,
- the copying the resulting byte-compile files back in the build directory.
- This patch removes all of that juggling and chicanery in favour of
- defining a much simpler '.el.elc' suffix rule. Not only this is simpler,
- but it also interacts better with "make -jN" calls, which are becoming
- more and more common and useful on today's increasingly multicore systems.
- * Makefile.am (dist_script_DATA): Remove 'elisp-comp'.
- * automake.in (@common_files): Likewise.
- (handle_emacs_lisp): Do not require 'elisp-comp'.
- * doc/automake.texi: Remove references to 'elisp-comp'.
- * lib/am/lisp.am: Define elisp compilation via a suffix rule; this
- basically amounts to a complete re-write of the lisp byte-compilation
- rules.
- * lib/elisp-comp: Remove.
- * t/add-missing.tap: Remove elisp-comp test.
- * t/dist-auxdir-many-subdirs.sh: Remove reference to elisp-comp.
- * t/primary-prefix-invalid-couples.tap: Likewise.
- * t/primary-prefix-valid-couples.sh: Likewise.
- * t/lisp4.sh: Remove reference to elc-stamp.
- * t/lisp5.sh: Likewise.
- * t/lisp6.sh: Likewise.
- * t/lisp3.sh: Likewise. Also remove the recompilation check that
- involves a (message) call.
- * t/lisp7.sh: Remove check for "Warnings can be ignored". Remove
- reference to elc-stamp.
- * t/lisp8.sh: Likewise.
- * t/lispdry.sh: Remove references to elc-stamp.
- Acked-by: Stefano Lattarini <stefano.lattarini@gmail.com>
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: elisp path contains $(srcdir) and $(builddir)
- * t/lisp-loadpath.sh: Check that. Also check that, in true VPATH
- spirit, elisp files in the build directory are preferred to those
- in the source directory. This test currently fails.
- * t/list-of-tests.mk (handwritten_TESTS): Add the new test.
- (XFAIL_TESTS): Likewise.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: emacs lisp files in subdirectories
- * t/lisp-subdir.sh, t/lisp-subdir2.sh: New tests, still failing.
- * t/list-of-files.mk (handwritten_TESTS, XFAIL_TESTS): Add them.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: get rid of "# serial" lines
- The "#serial" lines are only considered by aclocal for the system-wide
- third-party '.m4' files, not for the Automake-provided ones. So they
- serve no real purpose in the Automake '.m4' files.
- In addition, now that we use git and topic branches, and that we are also
- writing the Automake-NG fork, the "#serial" lines are becoming more and
- more unreliable (e.g., different version of the same file in different
- branches can easily end up having the same serial numbers).
- So let's just nuke all the "#serial" lines. See also automake bug#11932.
- * m4/*.m4: All "# serial" lines removed.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: ${#param} must be supported by the shell for the testsuite
- This will be required at least by the Automake-NG branch.
- * configure.ac: Require the $AM_TEST_RUNNER_SHELL supports ${#param} as
- a way to obtain the length of the expansion of the variable $param.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- yacc tests: fix a spurious failure with parallel make
- * t/yacc-bison-skeleton.sh (Makefile.am): Add 'zardoz.h'
- to BUILT_SOURCES.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- ylwrap: use proper quoting inside a `...` substitution
- * lib/ylwrap ($target): Here, when redefining this to a temporary file.
- 2012-07-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- ylwrap: don't uselessly reset the exit status in case of failure
- * lib/ylwrap: Here. In case of a failure in the wrapped yacc/lex
- invocation, '$ret' (holding the final exit status of ylwrap) was
- being uselessly reset to '1' in the later if/else.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: fix C++ support for Bison
- Fixes automake bug#7648.
- The current logic of ylwrap is to call yacc in a sub directory, and
- pull out of it all the files that were requested on its command line.
- Reverse this approach: export *all* the files created in the
- subdirectory, but rename them according to what the command says.
- This way, extra files, such as position.hh, location.hh and stack.hh
- for C++ parsers, but also parser.xml or parser.dot if XML or Dot
- output is enabled, will be preserved.
- * lib/ylwrap (pairlist): Remove.
- (main loop): Don't loop over pairlist, but over the files in the
- temporary directory.
- * t/list-of-tests.mk (XFAIL_TESTS): Fixes t/yacc-bison-skeleton-cxx.sh.
- * THANKS (James Bostock): Add, he reported bug#7648.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: refactor: move loop invariant
- * lib/ylwrap (input_rx): Move its definition next to its sibling's,
- outside of the main loop.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: refactoring: don't rely on the file order
- Forthcoming changes will make us iterate over the files in a different
- order.
- lib/ylwrap (first): Remove, replaced by...
- (parser): this.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- tests: upgrade and fix Bison test case
- * t/yacc-bison-skeleton-cxx.sh: Request locations, to be
- even more stressful.
- Use %union to make sure the %{...%} is inserted where appropriate.
- Fix some indentation/coding style issues.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- tests: fix bison input file
- Do not provide implementations in the %{...%} section, especially if the
- header is included elsewhere, since then the linker will complain about
- multiple definitions.
- Reported by Stefano Lattarini,
- <http://lists.gnu.org/archive/html/automake-patches/2012-07/msg00126.html>.
- * t/yacc-bison-skeleton.sh (zardoz.y): Define yylex and yyerror in the
- epilogue.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: comment changes
- * lib/ylwrap: Improve some comments.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: modernize idioms
- * lib/ylwrap: Prefer printf to echo when special characters may
- occur.
- Replace the historical ',' sed separator with '|'.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: rename header inclusion in generated parsers
- Some types of Bison parsers, such as the GLR ones, generate a header
- file that they include. ylwrap, which renames the generated files,
- does not rename the included file. Fix this shortcoming, reported
- for instance here:
- <http://lists.gnu.org/archive/html/bug-bison/2012-06/msg00033.html>.
- Fixes t/yacc-bison-skeleton.sh, see Automake bug#7648 and PR automake/491.
- * lib/ylwrap (quote_for_sed): Accept arguments.
- Catch more special characters.
- (rename_sed): New.
- Improve the previous renaming sed commands using quote_for_sed.
- Suggested by Stefano Lattarini here:
- <http://lists.gnu.org/archive/html/automake-patches/2012-07/msg00095.html>.
- (main loop): Use rename_sed to rename the dependencies to other files.
- * t/yacc-d-basic.sh: Exercise this case, even if bison/yacc was
- not issuing such an include.
- * t/list-of-tests.mk (XFAIL_TESTS): Adjust.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: simplify the list of renamings
- * lib/ylwrap (pairwise): Instead of being a straightforward copy from
- the command line arguments, and having to deal with y.tab vs. y_tab
- later, let pairwise store the real file names to process, y_tab
- conversion included when needed.
- (main loop): Use $to instead of $2, for symmetry with $from.
- 2012-07-14 Akim Demaille <akim@lrde.epita.fr>
- ylwrap: refactor: less duplication
- * lib/ylwrap (guard): New function.
- Move functions before actual code.
- 2012-07-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: mention fixed testsuite weaknesses
- news: bump, for future 1.12.3
- tests: verify the shell test scripts are syntactically valid
- tests: don't use C instead of C++ compiler on case-insensitive platforms
- tests: avoid spurious TAP errors on Mac OS X 10.7
- tests: fix spurious failure in aclocal7.sh on fast machines
- 2012-07-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: mention fixed testsuite weaknesses
- 2012-07-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: bump, for future 1.12.3
- 2012-07-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'fix-pr11898' and 'fix-pr-11893-and-10766' into maint
- * fix-pr11898:
- tests: verify the shell test scripts are syntactically valid
- * fix-pr-11893-and-10766:
- tests: don't use C instead of C++ compiler on case-insensitive platforms
- 2012-07-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: verify the shell test scripts are syntactically valid
- Fixes automake bug#11898.
- This measure of extra safety is mostly motivated by the fact that some
- shells (at least some versions of Bash in the 3.x release series, one
- of which serves as /bin/sh on Mac OS X 10.7, as well as Bash 4.0 and the
- /usr/xpg4/bin/sh shell from Solaris 10) erroneously exit with exit status
- 0 upon encountering a syntax error, if an exit trap is sett (as it is in
- our test scripts).
- * Makefile.am (check-tests-syntax): New, check that the shell test
- scripts listed in $(TESTS) are syntactically correct.
- (.PHONY, check-local): Depend on it.
- * t/self-check-exit.tap : Remove checks verifying that a script exits
- with non-zero status upon encountering a syntax error; as explained
- above, we can't depend on that.
- 2012-07-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: style changes to Portland Group Compilers support
- * lib/depcomp (pgcc): Quote 'like this', not `like this'. Other minor
- quoting improvements. Remove a commented-out command. In comments,
- use proper capitalization and punctuation. Make a more consistent use
- of whitespace. Make fatal error messages more nicely formatted, and
- send them to standard error rather than to standard output.
- 2012-07-12 Dave Goodell <goodell@mcs.anl.gov>
- Jeff A. Daily <jeff.daily@pnnl.gov>
- depcomp: initial support for Portland Group Compilers
- * lib/depcomp: Here. See automake bug#8880.
- Acked-by: Stefano Lattarini <stefano.lattarini@gmail.com>
- 2012-07-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't use C instead of C++ compiler on case-insensitive platforms
- This change fixes automake bug#11893 and bug#10766.
- On at least Cygwin and Mac OS X 10.7, the file system where the system
- compilers are located can be case-insensitive, so that looking for a
- program named 'CC' might actually find the C compiler in /usr/bin/cc.
- Now, the Automake configure script looks for a C++ compiler named 'CC'
- before looking for more obvious names like c++ or g++ (that is done to
- increase testsuite "coverage in the wild", e.g., preferring, on Solaris,
- the Sun Studio C++ compiler /usr/bin/CC over the GNU C++ compiler).
- Since the checks done in AC_PROG_CXX are apparently not strict enough
- to rule out C compilers like those from GCC or Clang (which are smart
- enough to recognize if a file has a C++ extension, passing it to the
- C++ front end) the testsuite might end up using a C compiler where a
- C++ one is expected, with some subtle bad consequences.
- * configure.ac: Don't look for a C++ compiler named 'CC' if the
- "top-level" file system(s) (where /bin and /usr/bin are) are detected
- to be case-insensitive.
- Reported-by: Peter Rosin <peda@lysator.liu.se>
- Reported-by: Max Horn <max@quendi.de>
- Helped-by: Eric Blake <eblake@redhat.com>
- 2012-07-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious TAP errors on Mac OS X 10.7
- Fixes automake bug#1897. Reported by Max Horn.
- * t/suffix8.tap: The libtool bug#11895 was causing the ./configure script
- to output a stray "ok" string on a line of its own, confusing the TAP
- driver into thinking this was an extra test result (which resulted in the
- next, real test results being flagged as "OUT-OF-ORDER"). Fix this by
- protecting configure output.
- * t/suffix10.tap: Likewise, and for the "make distcheck" output as well.
- * THANKS: Update.
- 2012-07-10 Adam Sampson <ats@offog.org> (tiny change)
- tests: fix spurious failure in aclocal7.sh on fast machines
- Fixes automake bug#11896. Issue introduced in commit v1.12.1-46-g13dd512.
- * t/aclocal7.sh: Since aclocal rewrites aclocal.m4 unless the input files
- are all older than the existing aclocal.m4, so we must sleep to ensure
- somedefs.m4 has an older timestamp than the aclocal.m4 the next aclocal
- call will generate.
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' (with fix for CVE-2012-3386)
- This makes the fix for a locally-exploitable security vulnerability
- (CVE-2012-3386) available to the Automake master branch.
- * maint:
- sync: update files from upstream with "make fetch"
- news: improve wording in entry about CVE-2012-3386
- maint: post-release minor version bump
- release: stable release 1.12.2
- distcheck: never make part of $(distdir) world-writable
- compat: automake should substitute @mkdir_p@, for backward compatibility
- fixup: t/README: it's ./runtest, not ./t/ax/runtest
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess, lib/gitlog-to-changelog, lib/texinfo.tex: Update.
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: improve wording in entry about CVE-2012-3386
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.2a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.2
- * configure.ac (AC_INIT): Bump version number to 1.12.2.
- * m4/amversion.m4: Likewise (auto-updated by "./bootstrap").
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'distcheck-vulnerability-CVE-2012-3386' into maint
- * distcheck-vulnerability-CVE-2012-3386:
- distcheck: never make part of $(distdir) world-writable
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- distcheck: never make part of $(distdir) world-writable
- This fixes a locally-exploitable security vulnerability (CVE-2012-3386).
- In the 'distcheck' rule, we used to make the just-extracted (from
- the distribution tarball) $(distdir) directory and all its files and
- subdirectories read-only; then, in order to create the '_inst' and
- '_build' subdirectories in there (used by the rest of the recipe) we
- made the top-level $(distdir) *world-writable* for an instant (the
- time to create those two directories) before making it read-only
- again.
- Making that directory world-writable (albeit only briefly) introduced a
- locally exploitable race condition for those who run "make distcheck" with
- a non-restrictive umask (e.g., 022) in a directory that is accessible by
- others. A successful exploit would result in arbitrary code execution
- with the privileges of the user running "make distcheck" -- game over.
- Jim Meyering wrote a proof-of-concept script showing that such exploit is
- easily implemented.
- This issue is similar to the CVE-2009-4029 vulnerability:
- <http://lists.gnu.org/archive/html/automake/2009-12/msg00012.html>
- * lib/am/distdir.am (distcheck): Don't make $(distdir) world-writable,
- not even for an instant; make it user-writable instead, which is enough.
- Helped-By: Jim Meyering <jim@meyering.net>
- 2012-07-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- compat: automake should substitute @mkdir_p@, for backward compatibility
- That has been unwittingly broken by commit v1.12-19-g7a1eb9f of 2012-04-28,
- "AM_PROG_MKDIR_P: deprecate, to be removed in Automake 1.13". We thought it
- wasn't a big deal, but Jim Meyering reported that @mkdir_p@ is used in
- gettext's Makefile.in.in template:
- <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
- * lib/am/header-vars.am (mkdir_p): Don't define.
- * m4/init.m4 (AM_INIT_AUTOMAKE): AC_SUBST 'mkdir_p' with $(MKDIR_P).
- * t/mkdir_p.sh, t/mkdirp-deprecation.sh: Enhance.
- * NEWS: Update.
- 2012-07-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: t/README: it's ./runtest, not ./t/ax/runtest
- * t/README (Supported shells): Here. And remove an extra empty line.
- 2012-07-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: move 'runtest' into the top-level directory
- 2012-07-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move 'runtest' into the top-level directory
- Move our wrapper script 'runtest' (meant to allow the execution of
- Automake test cases from the command line) from the 't/ax/' directory
- to the top-level one. This makes the script easier to find and to
- invoke. Much more importantly, our DejaGNU-checking test cases won't
- try anymore to use that script instead of the 'runtest' program provided
- by DejaGNU (that happened because '$(srcdir)/t/ax/' is automatically
- added early to the $PATH variable in our test cases), which was causing
- spurious SKIPs.
- * t/ax/runtest.in: Move ...
- * runtest.in: ... here.
- * Makefile.am, t/README, .gitignore: Adjust.
- 2012-07-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cosmetics: rename t/ax/test-runner => t/ax/runtest
- fixup: another "make recheck" failure with BSD make
- test runner: work correctly in VPATH setups
- compat: automake should define $(mkdir_p), for backward compatibility
- coverage: test that AM_PROG_MKDIR_P and $(mkdir_p) still works
- tests init: don't automatically re-execute tests with a POSIX shell
- yacc tests: fix spurious failure with parallel make
- tests: ignore minor 'recheck' regression for BSD make
- tests: don't clutter the top-level dir with temporary test directories
- tests: avoid spurious failures when @MKDIR_P@ points to "install-sh -d"
- lisp: better support of VPATH builds
- news: fixlets and updates
- + Extra non-trivial edits:
- * NEWS: State that $(mkdir_p) is still provided as an alias to
- $(MKDIR_P), for (partial) backward-compatibility.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: rename t/ax/test-runner => t/ax/runtest
- The latter is shorter and clearer. Better to do the rename early,
- before other developers or contributors begin to get used to the
- 'test-runner' name.
- * t/ax/test-runner.in: Rename ...
- * t/ax/runtest.in: ... like this.
- * Makefile.am, t/README, .gitignore: Adjust.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: another "make recheck" failure with BSD make
- * t/parallel-tests-log-override-recheck.sh: Here, add a proper $sleep
- before calling "make recheck". This should ideally have been done
- in the earlier commit 'v1.12.1-100-g19d84bc', but it somehow slipped
- through the cracks.
- * t/test-metadata-recheck.sh: Likewise.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- test runner: work correctly in VPATH setups
- Due to a "feature" of AC_CONFIG_FILES, because 't/ax/test-runner.in'
- is in a subdirectory, the '@srcdir@' value that is AC_SUBST'd in it
- gets tweaked to contain as much '..' components as are the directory
- components of 't/ax/test-runner'. Because our build system operates
- in a non-recursive setup, this substitution is wrong; for example,
- the final 't/ax/test-runner' build in a VPATH builds where the source
- directory is ".." contains the line:
- : ${srcdir='../../../t/ax'}
- instead of the expected (and correct):
- : ${srcdir='../t/ax'}
- We solve the issue by building 't/ax/test-runner' with a Makefile
- recipe instead of config.status substitutions; this is already done
- for other testsuite-related files, like 'defs-static'.
- * configure.ac (AC_CONFIG_FILES): Don't build 't/ax/test-runner'
- anymore.
- * Makefile.am (t/ax/test-runner): New rule.
- (EXTRA_DIST): Add 't/ax/test-runner.in'.
- (CLEANFILES, noinst_SCRIPTS): Add 't/ax/test-runner'.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11806' into maint
- * fix-pr11806:
- lisp: better support of VPATH builds
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests init: don't automatically re-execute tests with a POSIX shell
- I've unwittingly broken support for that feature *again* in some of
- my recent testsuite tweaking. In this case, the re-execution code
- works correctly when the tests are executed with a POSIX shells, but
- breaks when they are invoked by an old-style Bourne shells (e.g.,
- /bin/sh on Solaris).
- It's time to face it: that feature is too much brittle, and too seldom
- used (because the Makefile takes care of running the tests with the
- correct shell anyway, so that a breakage is only experienced when
- running the tests by hand). It just don't remain working for long, not
- when we often touch the testsuite setup (which we are going to do again
- when we'll try to move part of our testsuite framework to Gnulib, or a
- similar project).
- So, instead of trying to be extra-smart and automatically re-execute the
- tests with the correct shell, we now offer a simple wrapper script that
- the user can employ to run the test scripts with the proper shell. And
- while we are at it, we write this wrapper to also deal with TAP tests in
- a better way, running them through the prove(1) utility, so that their
- results are correctly recognized and reported.
- * t/ax/test-runner.in: New file; the wrapper script we were talking about.
- * configure.ac (AC_CONFIG_FILES): Process it into 't/ax/test-runner'.
- * .gitignore: Add 't/ax/test-runner'.
- * defs: Remove code for automatic re-execution of the scripts with the
- correct shell. This file now just a very thin layer around 'defs-static'
- and 't/ax/test-init.sh'.
- * t/README: Adjust, and remove or fix some imprecise or outdated text in
- the process (like "... test scripts are written with portability in mind,
- so that they should run with any decent Bourne-compatible shell ..." ).
- * Makefile.am (AM_TESTS_ENVIRONMENT): No need to export 'AM_TESTS_REEXEC'
- to "no" anymore.
- * t/self-check-explicit-skips.sh: Likewise.
- * t/self-check-exit.tap: Likewise.
- * t/self-check-me.tap: Likewise.
- * t/self-check-dir.tap: Likewise.
- * t/self-check-reexec.tap: Remove as obsolete.
- * t/list-of-tests.mk: Adjust.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- yacc tests: fix spurious failure with parallel make
- * t/yacc-deleted-headers.sh: Here, by adding a missing dependency
- in the Makefile.am. Revealed by a failure with Sun Distributed make
- run on Solaris 10 in parallel mode.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: ignore minor 'recheck' regression for BSD make
- It turns out that, with NetBSD 5.1 make and FreeBSD 9 make, running
- "make recheck" two times in a row quickly fails to correctly re-run
- the failed tests in the second run.
- That issue has been introduced likely introduced in commit
- 'v1.12.1-95-gd5443e4' of 20102-07-01, "parallel-tests: reimplement
- fix for bug#11791".
- Anyway, the use case that has been broken is not realistic (who is
- going to run "make recheck" two times in one second, without modifying
- any of the tests or the tested programs in the meantime?), so we believe
- the best fix is to simply work around the issue in the affected test
- cases, rather than risking to slow down or uglify the 'recheck' rule.
- * t/parallel-tests9.sh: Enhance a little.
- * t/tap-recheck.sh: Adjust adding proper '$sleep' calls were required.
- * t/parallel-tests-log-override-recheck.sh: Likewise.
- * t/test-driver-custom-multitest-recheck.sh: Likewise.
- * t/test-driver-custom-multitest-recheck2.sh: Likewise.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't clutter the top-level dir with temporary test directories
- * t/self-check-me.tap: Be sure to initialize '$am_create_testdir' to "no"
- in all the shell invocations sourcing './defs'. Otherwise, when running
- the testsuite with 'keep_testdirs=yes', the following temporary director
- are left cluttering the top-level directory:
- ./012.dir
- ./abc..dir
- ./a.b.c.dir
- ./foo.dir
- ./foo.bar.dir
- ./foo-bar-.dir
- ./_foo__bar.dir
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures when @MKDIR_P@ points to "install-sh -d"
- * t/self-check-cleanup.tap: Several checks in this test were failing on
- NetBSD 5.1. That happened because on that system, '@MKDIR_P@' expands to
- an "install-sh -d" invocation that references the $(builddir), and the
- code trying to duplicate some of the Automake testsuite infrastructure
- in the test subdirectory of this self test wasn't smart enough to cater
- to that situation. Granted, we could tweak the test case once more to
- fix this Yet Another Spurious Failure, but at this point it has become
- clear that the extra coverage offered by this test is not worth all the
- hassle. Just remove the test. Since the testsuite is regularly run on
- several systems and with different setups, most issues with the testsuite
- framework will reveal themselves anyway; no actual need to unit-test them
- in our testsuite, if that's too tricky.
- * t/list-of-tests.mk: Adjust.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- compat: automake should define $(mkdir_p), for backward compatibility
- That has been unwittingly broken by commit 'v1.12-19-g7a1eb9f'
- of 2012-04-28, "AM_PROG_MKDIR_P: deprecate, to be removed in
- Automake 1.13".
- Report from Benoit Sigoure and Diego Elio Pattenò:
- <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
- * lib/am/header-vars.am (mkdir_p): Define as an alias for $(MKDIR_P).
- * t/list-of-tests.mk (XFAIL_TESTS): Remove 't/mkdir_p.sh'.
- * NEWS: Update.
- 2012-07-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: test that AM_PROG_MKDIR_P and $(mkdir_p) still works
- They are deprecated, but should continue to work in the 1.12.x
- release series. Report from Benoit Sigoure and Diego Elio Pattenò:
- <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
- * t/mkdirp-deprecation.sh: Enhance.
- * t/mkdir_p.sh: New test, check that AM_INIT_AUTOMAKE still defines
- the $(mkdir_p) make variable. Currently xfailing.
- * t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add the new
- test.
- 2012-07-06 Jack Kelly <jack@jackkelly.name> (tiny change)
- Stefano Lattarini <stefano.lattarini@gnu.org>
- lisp: better support of VPATH builds
- Fixes automake bug#11806.
- * lib/am/lisp.am: Pass the value of '$(abs_srcdir)' to the
- elisp-compile script in the environment.
- * lib/elisp-comp: Add the vale of '$abs_srcdir' to the emacs
- load-path.
- * t/lisp-pr11806.sh: New test.
- * t/list-of-tests.mk: Add it.
- Reported-by: Makoto Fujiwara <makoto@ki.nu>
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make 't/aclocal-macrodir.tap' executable
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix spurious failure in 'maintainer-check-list-of-tests'
- * Makefile.am (test_subdirs): Add 'contrib/t', otherwise we would get a
- spurious error like:
- List of tests in Makefile an on filesystem differ
- + diff -u in-makefile on-filesystem
- --- tests-in-makefile-list.tmp 2012-07-03 23:07:47.000000000 +0200
- +++ tests-on-filesystem-list.tmp 2012-07-03 23:07:47.000000000 +0200
- @@ -1,7 +1,3 @@
- -contrib/t/help-multilib.sh
- -contrib/t/multilib.sh
- -contrib/t/parallel-tests-html-recursive.sh
- -contrib/t/parallel-tests-html.sh
- t/ac-output-old.tap
- t/acloca10.sh
- t/acloca11.sh
- make: *** [maintainer-check-list-of-tests] Error 1
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: fix cleaning of test directories in contrib (and in t/perf)
- * Makefile.am (clean-local-check): Update recipe to cater to the fact
- that some tests using a temporary directory have been placed in other
- directories that the 't/' directory (for the moment, at least 't/perf'
- and 'contrib/t').
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'aclocal-trace-macrodir'
- * aclocal-trace-macrodir:
- aclocal: deprecate ACLOCAL_AMFLAGS, trace AC_CONFIG_MACRO_DIR instead
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: deprecate ACLOCAL_AMFLAGS, trace AC_CONFIG_MACRO_DIR instead
- Maintaining ACLOCAL_AMFLAGS in the Makefile.am to pass extra flags
- to aclocal is (and have always been) quite of an hack. For example,
- autoreconf is forced to grep Makefile.am to honour those flags. But
- this is a bad obsolescent behaviour; in fact, the autotools have moved
- consistently in the past years from custom grepping of Makefile.am and
- configure.ac to tracing of m4 macro calls, which is more consistent,
- more reliable and more flexible.
- And when autoreconf is not used, the developer is forced to add *by hand*
- the flags specified by ACLOCAL_AMFLAGS to the aclocal calls not triggered
- by make rebuild rules; here lie again more duplication and more chances
- for errors.
- Moreover, ACLOCAL_AMFLAGS has only two typical use cases:
- - to instruct aclocal to look for extra macro definition in a local
- directory (as with "ACLOCAL_AMFLAGS = -I m4"); and
- - to further instruct aclocal to copy in that local directory the
- required third-party .m4 files found in the system-wide directory
- (as with "ACLOCAL_AMFLAGS = -I m4 --install").
- The first use case can be better covered if aclocal can instead trace and
- honours call to the AC_CONFIG_MACRO_DIR autoconf macro; and the second
- use case shouldn't be considered really legitimate, as it is quite (and
- subtly) brittle (see automake bug#9037).
- Thus we now make aclocal trace AC_CONFIG_MACRO_DIR macro, and act
- accordingly. For backward compatibility, we continue to support the
- ACLOCAL_AMFLAGS special variable (although removing any mention of it
- from the documentation). Future Automake releases will likely start
- to warn about the use of that variable, and eventually remove support
- for it altogether.
- From a suggestion by Eric Blake.
- This is a much simplified (and IMHO saner) version of the patch series
- discussed in the threads:
- <http://lists.gnu.org/archive/html/automake-patches/2010-10/msg00045.html>
- <http://lists.gnu.org/archive/html/automake-patches/2010-12/msg00156.html>
- * aclocal.in ($ac_config_macro_dir): New global variable.
- (trace_used_macros): Also trace the macro 'AC_CONFIG_MACRO_DIR',
- and set the '$ac_config_macro_dir' variable accordingly.
- (parse_arguments): Code for diagnosis of '--install' used without
- any user-specified include directory moved ...
- (while (1)): .. into the main loop. Which now also updates the
- list of user-specified include directories to include the directory
- given as argument to the call (if any) of 'AC_CONFIG_MACRO_DIR'.
- * lib/am/configure.am: Update comments.
- * NEWS: Updated.
- * doc/automake.texi: Likewise. Also, stop advising the use of the
- '--install' in ACLOCAL_AMFLAGS (see automake bug#9037 for a rationale),
- and remove any reference to ACLOCAL_AMFLAGS (which is now considered
- obsolescent).
- * t/aclocal-path-install.sh: Adjust grepping check in the aclocal
- error messages.
- * t/subpkg.sh: Updated: add 'AC_CONFIG_MACRO_DIR' call to configure.ac,
- remove setting of 'ACLOCAL_AMFLAGS' in Makefile.am and use of aclocal
- command line arguments.
- * t/subpkg2.sh: Likewise.
- * t/subdir8.sh: Likewise.
- * t/remake10c.sh: Likewise.
- * t/remake8a.sh: Likewise.
- * t/remake8b.sh: Likewise.
- * t/aclocal4.sh: Likewise.
- * t/aclocal6.sh: Likewise.
- * t/acloca14.sh: Likewise.
- * t/acloca22.sh: Likewise.
- * t/aclocal5.sh: Likewise, and do not not invade the Automake
- namespace (this avoids spurious failures).
- * t/acloca14b.sh: New test, identical to the previous version of
- 'acloca14.test'; it is kept to verify backwards compatibility with
- the use of ACLOCAL_AMFLAGS.
- * t/acloca22b.sh: Likewise (but for 'acloca22.test').
- * t/aclocal-amflags.sh: New test, check for backwards
- compatibility that ACLOCAL_AMFLAGS still works.
- * t/remake-macrodir.sh: New test, checking that aclocal's honoring of
- AC_CONFIG_MACRO_DIR interacts nicely with automatic rebuild rules.
- * t/list-of-tests.mk: Add the new tests.
- 2012-07-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fixlets and updates
- * NEWS: Here. In particular, report the change in 'missing'
- semantics.
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- contrib: check-html: pass flags to rst2html invocations
- Related to automake bug#11287.
- * contrib/t/check-html.am (.log.html): Here, passing $(AM_RST2HTMLFLAGS)
- and $(RST2HTMLFLAGS) (in that order).
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- contrib: simple improvements to check-html
- Related to automake bug#11287.
- * contrib/t/check-html.am (.log.html): Do not look for $RST2HTML in
- the environment, looking for $(RST2HTML) should be enough (also, the
- pre-existing code was broken, because it single-quoted $RST2HTML).
- Fix the loop-and-search implementation to be more similar to the
- one in 'contrib/t/parallel-tests-html.sh'. Prefer 'mv -f' over bare
- 'mv'. Do not break the recipe in
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: check-html can be used recursively
- Addresses the main part of Automake bug#11287.
- * contrib/t/parallel-tests-html-recursive.sh: New test.
- * contrib/t/local.am: Add it.
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: tests for stuff in contrib goes in 'contrib/t'
- * t/help-multilib.sh: Move ...
- * contrib/t/help-multilib.sh: .. here. Remove a now-obsolete
- "FIXME" comment.
- * t/multlib.sh: Move ...
- * contrib/t/multilib.sh: .. here. Remove a now-obsolete
- "FIXME" comment.
- * t/parallel-test2.sh: Move ...
- * contrib/t/parallel-tests-html.sh: .. here. Remove a
- now-obsolete "FIXME" comment.
- * contrib/t/local.am: New, basically defining the list of
- tests for stuff in 'contrib/'.
- * t/list-of-tests.mk, Makefile.am: Adjust.
- * .gitignore: Update.
- * syntax-checks.mk (xtests): Likewise.
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'user-recursive-targets'
- * user-recursive-targets:
- recursion: support user-defined recursive targets
- tests: rename 'recurs*.sh' to 'var-recurs*.sh'
- tests: minor improvements to 'recurs*.sh'
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- recursion: support user-defined recursive targets
- The user can now define his own recursive targets that recurse
- in the directories specified in $(SUBDIRS). That can be done by
- specifying the name of such targets in invocations of the new
- 'AM_EXTRA_RECURSIVE_TARGETS' m4 macro.
- The API goes like this:
- $ cat configure.ac
- AC_INIT([pkg-name], [1.0]
- AM_INIT_AUTOMAKE
- AM_EXTRA_RECURSIVE_TARGETS([foo])
- AC_CONFIG_FILES([Makefile sub/Makefile])
- AC_OUTPUT
- $ cat Makefile.am
- SUBDIRS = sub
- foo-local:
- @echo This will be run by "make foo".
- $ cat sub/Makefile.am
- foo-local:
- @echo This too will be run by a "make foo" issued either in
- @echo the 'sub/' directory or in the top-level directory.
- Like for the "default" recursive targets (e.g., 'all' and 'check'),
- the user-defined recursive targets descend in the $(SUBDIRS) in a
- depth-first fashion, and process '.' last (unless that is explicitly
- specified in $(SUBDIRS)).
- * NEWS, doc/automake.texi: Document the new feature.
- * automake.in (@extra_recursive_targets): New global variable.
- (scan_autoconf_traces): Trace macro '_AM_EXTRA_RECURSIVE_TARGETS'.
- (handle_user_recursion): New subroutine; among other things, it defines
- the new internal '$(am__extra_recursive_targets)' make variable, and
- the '*-am', '*-local' and '*-recursive' targets associated with the
- user-specified user recursive targets.
- (generate_makefile): Call the new subroutine.
- * lib/am/subdirs.am (am__recursive_targets): New internal make variable,
- listing all of '$(RECURSIVE_TARGETS)', '$(RECURSIVE_CLEAN_TARGETS)' and
- '$(am__extra_recursive_targets)' together.
- (AM_RECURSIVE_TARGETS): Adjust the definition of this variable ...
- (.PHONY, .MAKE): ... and the list of dependencies of these special targets
- to take advantage of the new '$(am__recursive_targets)' variable.
- ($(am__recursive_targets)): New targets, superseding ...
- ($(RECURSIVE_TARGETS), $(RECURSIVE_CLEAN_TARGETS)): ... these, and
- inheriting their rules. This way, the rules to handle recursion for
- built-in recursive targets (e.g., 'all', 'dvi', 'clean') and for user
- defined recursive targets are the same.
- * m4/extra-recurs.m4: New file, contain definition of new macro
- 'AM_EXTRA_RECURSIVE_TARGETS' and '_AM_EXTRA_RECURSIVE_TARGETS'.
- These macros are basically dummy, only used for tracing by automake.
- * m4/Makefile.am (dist_automake_ac_DATA): Update.
- * t/recurs-user.sh: New test.
- * t/recurs-user2.sh: Likewise.
- * t/recurs-user-deeply-nested.sh: Likewise.
- * t/recurs-user-indir.sh: Likewise.
- * t/recurs-user-keep-going.sh: Likewise.
- * t/recurs-user-many.sh: Likewise.
- * t/recurs-user-no-subdirs.sh: Likewise.
- * t/recurs-user-no-top-level.sh: Likewise.
- * t/recurs-user-override.sh: Likewise.
- * t/recurs-user-phony.sh: Likewise.
- * t/recurs-user-wrap.sh: Likewise.
- * t/remake-recurs-user.sh: Likewise.
- * t/list-of-tests.mk: Update.
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename 'recurs*.sh' to 'var-recurs*.sh'
- * t/recurs.sh: Rename ...
- * t/var-recurs.sh: ... to this.
- * t/recurs2.sh: Rename ...
- * t/var-recurs2.sh: ... to this.
- * tests/list-of-tests.mk: Adjust.
- 2012-07-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: minor improvements to 'recurs*.sh'
- * t/recurs.sh: Removed useless calls to AM_CONDITIONAL in
- the generated 'configure.ac'.
- * t/recurs2.sh: Add trailing ':' command.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: don't trust the exit status of "make -k" for non-GNU makes
- parallel-tests: reimplement fix for bug#11791
- tests setup: unset CDPATH
- tests setup: more namespace safeness
- tests setup: remove an unused variable
- tests setup: less hard-coding of the test subdirectory
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't trust the exit status of "make -k" for non-GNU makes
- * t/parallel-tests-recheck-pr11791.sh: Here. At least some versions
- of FreeBSD make botch it up, returning success when failure should be
- returned.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: reimplement fix for bug#11791
- * lib/am/check.am: Here. The new implementation is shorter, slightly
- more efficient (requiring less forks), less brittle in the face of
- signals or unexpected interruptions in the make process, and should
- also be easier to merge in the 'ng/master' branch (as of now, due to
- the difficulties in merging our previous version of the fix in the
- 'ng/master' codebase, Automake-NG still lacks a fix for bug#11791).
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests setup: unset CDPATH
- So that our test scripts can safely chdir around using relative
- paths as well, without having to worry abut possible CDPATH
- interferences.
- * defs-static.in: unset CDPATH.
- * t/ax/tests-init.sh: Remove a now-unneeded workaround.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests setup: more namespace safeness
- * t/ax/tests-init.sh ($testSubDir): Rename ...
- ($am_test_subdir): ... to this, throughout the file.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests setup: remove an unused variable
- * defs-static.in ($testprefix): This one.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests setup: less hard-coding of the test subdirectory
- * t/ax/tests-init.sh: Make the code creating the temporary
- test subdirectory smart enough to automatically create it
- in the same subdirectory of the test that is being run.
- * defs-static.in ($MKDIR_P, $am_rel_srcdir): New variables,
- AC_SUBST'd from @MKDIR_P@ and @srcdir@ respectively, and
- used in the new 'tests-init.sh' code.
- 2012-07-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- parallel-tests: silence an overly verbose recipe
- tests: fix some uses of 'Exit', where 'exit' should now be used instead
- maintcheck: test scripts should be executable, check for that
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: silence an overly verbose recipe
- * lib/am/check.am (check-TESTS): Here, the part of the recipe
- removing the stale '.log' and '.trs' files.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix some uses of 'Exit', where 'exit' should now be used instead
- * t/parallel-tests-recheck-pr11791.sh: Here.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: test scripts should be executable, check for that
- * syntax-checks.mk (sc_tests_executable): Here, in this new check.
- (syntax_check_rules): Add it.
- * Makefile.am (dist-hook): Drop, no need to make test cases executable
- anymore.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- parallel-tests: recipes for "check" and "recheck" are separated again
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'recheck-fix' into maint
- * recheck-fix:
- parallel-tests: recipes for "check" and "recheck" are separated again
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- parallel-tests: "recheck" behaves better in case of compilation failures
- scripts: quote 'like this', not `like this'
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: recipes for "check" and "recheck" are separated again
- * lib/am/check.am: Here. They have distinctly diverged recently, and
- the reduction in code duplication obtained keeping their recipes united
- is not anymore worth the extra complications.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'recheck-fix' into maint
- * recheck-fix:
- parallel-tests: "recheck" behaves better in case of compilation failures
- scripts: quote 'like this', not `like this'
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prefer "test ! -e FILE" to check that a file doesn't exist
- * t/autohdrdry.sh: Here, rather than using "test ! -r FILE".
- 2012-06-30 Jim Meyering <jim@meyering.net>
- texi: clean after Texinfo manuals in $(SUBDIRS) directories correctly
- Fixes the regression exposed by previous commit 'v1.12.1-165-g498492f'.
- * automake.in (handle_texinfo_helper): Add $infobase.{t2d,t2p}
- to @mostly_cleans, but *without* the '$relative_dir/' prefix.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: regression in texinfo "make mostlyclean" with $(SUBDIRS)
- After commit v1.12.1-91-g205c757 of 2012-06-20, "texi: require
- Texinfo >= 4.9, related enhancements", the presence of a Texinfo manual
- 'manual.texi' in a subdir (say 'doc/') of a package using a recursive
- make setup would cause "make distcheck" to fail, due to the presence of
- the 'manual.t2d/' directory created by texi2dvi. That directory would
- not be correctly removed because the 'mostlyclean' rule would run, from
- within the 'doc/' sub-directory, "rm -rf doc/manual.t2d", instead of
- the expected (and correct) "rm -rf manual.t2d".
- Reported by Jim Meyering:
- <http://lists.gnu.org/archive/html/automake-patches/2012-06/msg00203.html>
- * t/txinfo21.sh: Enhance to expose the issue.
- * t/txinfo-no-clutter.sh: Likewise, and other miscellaneous improvements.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious failure
- configure: fix detection of POSIX shell to work in a VPATH build
- tests: prefer "test ! -e FILE" to check that a file doesn't exist
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure
- * t/parallel-tests-dry-run-2.sh: Here.
- 2012-06-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: fix detection of POSIX shell to work in a VPATH build
- * configure.ac: When checking whether "test -e" works, use 'config.log',
- not 'configure', as the witness file, because the latter does not exist
- in the current directory during a VPATH build.
- 2012-06-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prefer "test ! -e FILE" to check that a file doesn't exist
- Once, for the sake of (at least) Solaris 10 /bin/sh, we had to use
- "test ! -f FILE" or "test ! -r FILE" or "test ! -d FILE" instead,
- because the that shell's 'test' built-in didn't grok the '-e' option.
- Note however that we still can't use "test ! -e" in the Makefile recipes
- used in the test cases; that is because those recipes are run with the
- shell detected by 'configure', and Autoconf-generated configure scripts
- do no guarantee to find or provide a POSIX-compatible shell.
- * Several tests: Adjust.
- * t/yacc-clean-cxx: Adjust, and remove a couple of useless commands.
- * t/parallel-tests-dry-run-2.sh: Adjust, and add invocation to
- "make -n" forgotten in previous versions of the test.
- * t/txinfo26.sh: Adjust, and don't bother to skip the test when it's
- run in a directory whose absolute path contain whitespace: that setup
- is not supported anyway.
- * t/maken3.sh: Adjust, and fix a typo that could cause a minor false
- negative.
- * t/test-trs-recover2.sh: Prefer using 'skip_' with a suitable error
- message over a bare 'exit 77'.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- configure: move a misplaced "section" comment
- configure: clump check for ${var%...} and ${var#...} expansion together
- cosmetics: improve wording of a couple of configure messages
- configure: the testsuite shell must support 'test -e' and 'test ! -e'
- tests: remove stale workarounds for Solaris /bin/sh
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: move a misplaced "section" comment
- * configure.ac (Create output files): This, move it towards the end
- of the script.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: clump check for ${var%...} and ${var#...} expansion together
- And together with those for the ${var%%...} and ${var##...} expansions.
- After all, it is basically impossible to find a shell that support one
- of them but not the others.
- Suggestion by Eric Blake.
- * configure.ac: Here.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: improve wording of a couple of configure messages
- * configure.ac: Fix a couple of messages so that the configure
- output changes from this:
- checking whether /bin/sh "set -e" preserves exit traps... yes
- checking whether /bin/sh "set -x" corrupts stderr... no
- to this:
- checking whether /bin/sh preserves exit traps with "set -e"... yes
- checking whether /bin/sh corrupts stderr with "set -x"... no
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: the testsuite shell must support 'test -e' and 'test ! -e'
- * configure.ac: Require that the shell that is to be selected to run
- the testsuite understands "set -e" and "set ! -e".
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove stale workarounds for Solaris /bin/sh
- Our testsuite cannot be run with that shell anymore (as it is
- not POSIX-compliant).
- * t/tap-more.sh: Remove outdated workarounds for Solaris /bin/sh.
- * t/self-check-exit.tap: Likewise.
- * t/ansi2knr-no-more.sh: Likewise.
- * t/add-missing.tap: Likewise.
- * t/dist-auxfile.sh: Likewise.
- * t/test-driver-custom-multitest-recheck2.sh: Likewise.
- * t/ax/test-init.sh: Remove obsolete references to Solaris
- /bin/sh.
- * t/confh5.sh: Likewise.
- * t/uninstall-fail.sh: Likewise. And update comments about
- quirks of Solaris /bin/ksh and /usr/xpg4/bin/sh.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests init: don't bother allowing '$me' to be overridable
- tests init: typofixes in comments
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests init: don't bother allowing '$me' to be overridable
- We once used that feature in our wrapper tests; but now (and probably
- even since commit 'v1.11-1308-g375f23d' of 2011-09-08, "testsuite:
- revamp generation of autogenerated tests") it is not needed anymore.
- By removing it we can simplify our growingly complex testsuite framework
- a little.
- * t/ax/test-inist.sh ($me): Do not initialize it here (and only if not
- already set), instead ...
- * defs-static.in ($me): ... initialize it here unconditionally.
- Do not check anymore that $me doesn't come from the environment: that
- wouldn't cause any problem now.
- Now that '$me' is defined early, prefer it over 'argv0' in early error
- messages, both here ...
- * defs: ... and here.
- * Makefile.am (AM_TESTS_ENVIRONMENT): Do not bother "nullifying" $me
- anymore.
- * t/self-check-env-sanitize.tap: Adjust.
- * t/self-check-me.tap: Likewise.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests init: typofixes in comments
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: one test was not executable, make it so
- readme: fix typo in t/README: s/$((...)/$((...))/
- tests: don't skip if $(abs_builddir) or $(abs_srcdir) contain whitespace
- tests: avoid spurious maintainer-check failures
- tests: remove obsolete hacks around maintainer-check false positives
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: one test was not executable, make it so
- * t/subdir-order.sh: This test.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: fix typo in t/README: s/$((...)/$((...))/
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't skip if $(abs_builddir) or $(abs_srcdir) contain whitespace
- We used to explicitly skip libtool and gettext tests if the absolute
- path of the builddir or of the srcdir which Automake was configured
- with contained any whitespace (or other metacharacters).
- But several other tests would spuriously fail in such an unholy setup.
- To be precise, it would cause 61 'FAIL's and 42 'ERROR's in the whole
- Automake testsuite.
- The fact that, as of today, nobody has reported any failure of this kind
- means that (thankfully) nobody is building automake with $(abs_srcdir)
- or $(abs_builddir) mangled by whitespace. So, instead of trying to cater
- to such a broken setup consistently, we just drop the extra check in the
- libtool/gettext tests.
- In case someone will ever reports a failure due to extra whitespace in
- either $(abs_srcdir) or or $(abs_builddir), we will simply enhance our
- 'configure.ac' to bail out flatly and loudly at such a setup.
- * t/ax/test-init.sh: Simplify accordingly.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious maintainer-check failures
- * t/ax/test-init.sh: Here, by adding extra quoting for two
- occurrences of the string "perl".
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove obsolete hacks around maintainer-check false positives
- * gen-testsuite-part, t/test-trs-recover.sh: Here.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: simpler workaround for shells losing the exit status in exit trap
- + Extra non-trivial edits:
- * Several tests: Adjusted to use 'exit' rather than 'Exit'.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'simplify-exit-trap-workaround' into maint
- * simplify-exit-trap-workaround:
- tests: simpler workaround for shells losing the exit status in exit trap
- + Extra non-trivial edits:
- * t/am-missing-prog.sh: Use 'exit, not 'Exit'.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove trailing whitespace in some files
- * lib/missing, t/comment7.sh, t/objc-flags.sh, t/objcxx-flags.sh,
- t/perf/testsuite-summary.sh, t/self-check-explicit-skips.sh: Here.
- Prompted by a report from Karl Berry.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: enhance tests in 'missing' script a little
- * t/am-missing-prog.sh: Here, by also verifying its expected
- exit status.
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- coverage: tests AM_MISSING_PROG usage
- docs: document AM_MISSING_PROG
- 2012-06-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: tests AM_MISSING_PROG usage
- Now that AM_MISSING_PROG is documented, we want to make sure it
- works as expected when used in third-party code.
- * t/am-missing-prog.sh: New test.
- * t/ammissing: Rename ...
- * t/am-macro-not-found.sh: ... like this, to avoid confusion (this
- test has nothing to do with the 'missing' script nor with the
- 'AM_MISSING_PROG' macro).
- * t/list-of-tests.mk: Adjust.
- 2012-06-28 Eric Blake <eblake@redhat.com>
- docs: document AM_MISSING_PROG
- Addresses automake bug#11793.
- This macro has been present for a long time, and coreutils has been
- relying on it despite no documentation, which argues that it is stable
- enough to be worth documenting.
- Furthermore, since we are hoping to change our preferred invocation
- from 'missing --run program' to 'missing program' in a future version
- of automake, we need a way for packages to consistently get the
- preferred invocation form rather than open-coding a call to 'missing'.
- In particular, the Autoconf manual would love to recommend this macro
- when discussing how to integrate an autotest suite with automake.
- * doc/automake.texi (Public Macros): Document AM_MISSING_PROG.
- 2012-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious failure with Solaris make
- tests: avoid several spurious failures on Solaris
- tests: avoid a spurious failure on NetBSD
- 2012-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure with Solaris make
- * t/subdir-order.sh: Run make in parallel only if the make implementation
- truly supports it.
- 2012-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: "recheck" behaves better in case of compilation failures
- With this change, the "recheck" target behaves better in the face of build
- failures related to previously failed tests. For example, if a test is a
- compiled program that must be rerun by "make recheck", and its compilation
- fails, that test will still be rerun by further "make recheck" invocations.
- Previously, its '.log' and '.trs' would have both been lost, so that the
- test would have not been re-run.
- This change fixes automake bug#11791.
- * NEWS: Update.
- * lib/am/check.am (recheck, check-TESTS): Adjust to cater to scenario
- described above.
- * t/parallel-tests-recheck-pr11791.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-06-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- scripts: quote 'like this', not `like this'
- * lib/test-driver.sh: Here.
- 2012-06-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'missing-not-touch-just-warn'
- * missing-not-touch-just-warn:
- missing: --run is supported again (as a no-op) for use by older automake
- 2012-06-26 Eric Blake <eblake@redhat.com>
- missing: --run is supported again (as a no-op) for use by older automake
- Commit v1.12.1-87-ga22717d of 2012-06-21 ("missing: do not touch
- timestamps; only warn for out-of-date files") has removed the '--run'
- option, since our new preferred calling conventions now imply it; but
- if a newer 'missing' is mixed with an already built project that used
- an older Automake version (this happened in practice for GNU m4; see:
- <http://lists.gnu.org/archive/html/bug-m4/2012-06/msg00001.html>), then
- the 'Makefile' in that project will fail due to passing the '--run'
- option when trying to bring the project up-to-date.
- * lib/missing: Parse and ignore '--run'.
- 2012-06-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'missing-not-touch-just-warn'
- * missing-not-touch-just-warn:
- missing: don't cater to 'configure.in' in our advice
- missing: better tips about missing tools
- 2012-06-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- missing: don't cater to 'configure.in' in our advice
- The use of 'configure.in' as autoconf input now deprecated the development
- versions of both Automake and Autoconf, and we'd like to speed up its
- demise.
- * missing: In the advice displayed in case some autotools are detected to
- be missing, refer to 'configure.ac' unconditionally, instead of referring
- to 'configure.in' when that file exists in the current directory (and no
- 'configure.ac' does).
- 2012-06-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: simpler workaround for shells losing the exit status in exit trap
- Now that we can assume our tests are run by a decent POSIX shell, we
- can simplify our workaround aimed at having the exit status propagated
- correctly to the code in the exit trap. Unfortunately, we cannot
- dispense with such a workaround altogether, because it's still required
- by some shells we need to support (at least Solaris 10 /bin/ksh and
- /usr/xpg4/bin/sh).
- For more information about the need of that workaround, see the entry
- about 'trap' in the section "Limitations of Shell Builtins" in the
- Autoconf manual:
- <http://www.gnu.org/software/autoconf/manual/autoconf.html#trap>
- The new workaround has been tested successfully with the following
- shells:
- - Bash 4.1
- - Bash 3.2
- - Bash 3.0
- - Bash 2.05b
- - dash 0.5.5.1
- - dash 0.5.2
- - AT&T Ksh 93u (from official Debian package)
- - MirBSD Korn Shell 40.2 (from official Debian package)
- - Solaris 9, 10 and 11 /bin/ksh
- - Solaris 9, 10 and 11 /usr/xpg4/bin/sh
- - NetBSD 5.1 /bin/sh
- - NetBSD 5.1 /bin/ksh
- * t/ax/test-init.sh (Exit): Rename ...
- (_am_exit): ... like this.
- (exit): New alias for '_am_exit'. We cannot simply redefine 'exit'
- as a shell function, because some shells (dash 0.5.5.1, Solaris 10
- /bin/ksh and /usr/xpg4/bin/sh) do not allow it.
- (_am_exit, trap): Add extra escaping for 'exit' calls, to ensure we
- really invoke the 'exit' builtin and not our alias with the same
- name.
- * configure.ac: Check that the shell selected to run our testsuite
- supports aliases named like shell builtins.
- * t/REAMDE: Adjust.
- * All tests: Adjust, by simply using 'exit' instead of 'Exit'.
- * t/self-check-explicit-skips.sh: Adjust: the first usage of 'exit'
- after it has been redefined as an alias must be on a new line w.r.t.
- that where the alias is defined, in order for the redefinition to be
- honored.
- * syntax-checks.mk (sc_tests_Exit_not_exit): Delete.
- (sc_tests_exit_not_Exit): New.
- (syntax_check_rules): Adjust.
- (sc_tests_automake_fails): Simplify the recipe a little.
- * Several tests: Remove now useless spurious quoting once required
- to placate the 'sc_tests_Exit_not_exit' maintainer check.
- * gen-testsuite-part: Likewise. Also, avoid uses of 'Exit' in the
- generated scripts.
- 2012-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid several spurious failures on Solaris
- * t/ax/is_newest: Rewrite to be Bourne-compatible, for /bin/sh shells like
- Solaris' that are not POSIX-conforming. The script is so small that such
- a rewrite is easier than going through the hoops that would be required to
- ensure this script is always executed with a POSIX shell.
- * t/ax/is: Add a comment stating that this script is to be kept Bourne
- compatible as well.
- 2012-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure on NetBSD
- * t/maken.sh: Do not expect the timestamp of the current directory
- to be unchanged after a "make -n".
- 2012-06-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix automatic re-execution of tests with Zsh
- tests: drop support for older Zsh shells
- tests: allow AM_TEST_RUNNER_SHELL to be overridden
- tests: fix setup for older Zsh
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix automatic re-execution of tests with Zsh
- * defs: Use '$argv0' instead of '$0'. With Zsh not started right
- away in Bourne-compatibility mode, the latter will be the path not
- of the test script itself, but of the file it's currently sourcing
- -- i.e., in our case, './defs'. This would cause the automatic
- re-execution code to execute './defs' (basically a no-op) rather
- than re-run the test correctly.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: drop support for older Zsh shells
- * defs-static.in: Here. The fact that such support has been broken for
- almost a year (only fixed by today's commit 'v1.12.1-57-gf1e0300'),
- causing no bug reports from anyone, shows that such support is not truly
- warranted. And it will get in the way of future improvements in the
- handling of the exit trap (because bugs in older Zsh versions will
- prevent some of our planned improvements). So just drop it.
- * t/README: Remove obsolete advice for working around bugs in older
- versions of Zsh; instead, indicate version 4.3 is the oldest Zsh now
- supported.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: allow AM_TEST_RUNNER_SHELL to be overridden
- * defs-static.in: Here. This will make it easier for the maintainer
- to run some self checks (like those in 't/self-check-exit.tap') with
- different shells, to look for possible portability problems. Fix a
- typo (doubled "the") while we are at it.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix setup for older Zsh
- * defs-static.in: After the addition of TAP-based tests and our renaming
- of "simple" test scripts from 'tests/foo.test' to 't/foo.sh', a test name
- is valid if it matches the wildcard "*.sh" or "*.tap", not the wildcard
- "*.test". Adjust accordingly.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- missing: better tips about missing tools
- * lib/missing: Try to point the user to the home page of such tools
- where possible. Also, make clear that some tools (e.g., aclocal or
- autoheader) are distributed as part of bigger projects (resp. automake
- and autoconf, in those cases). While at it, refactor and re-format
- the existing code heavily, in particular introducing
- (give_advice): ... this new function in the process.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'missing-not-touch-just-warn'
- * missing-not-touch-just-warn:
- missing: do not touch timestamps; only warn for out-of-date files
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: avoid one last `...` command substitution in 'test-init.sh'
- maintcheck: guard against `...` for command substitution in test cases
- tests: more uses of $(...) over `...` for command substitution
- cosmetics: quote `like this', not 'like this', in a couple of tests
- readme: clarify/extend few entries in 't/README'
- readme: better separation of entries in 't/README'
- readme: subsections "Do" and "Do not" in 't/README' merged
- tests: new requirement 'grep-nonprint'
- cosmetics: fix description of an expected error message in a test
- tests: assume automake quotes 'like this', not `like this'
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid one last `...` command substitution in 'test-init.sh'
- * t/ax/test-init.sh (me): In the definition of this variable. This
- also shave off a couple of forks, and the need for a sanity check
- only required in fringe situations.
- 2012-06-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: guard against `...` for command substitution in test cases
- But still allow them in configure.ac, Makefile.am and shell scripts
- created or used inside test cases itself, because Autoconf (as of
- version 2.69) does not yet ensure that $CONFIG_SHELL will be set to
- a proper POSIX shell.
- * syntax-checks.mk (sc_tests_command_subst): New check.
- (syntax-check_rules): Add it.
- * t/tap-global-log.sh: Minimal tweakings to avoid triggering the
- new maintainer check.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: more uses of $(...) over `...` for command substitution
- Somehow missed by the previous changes. No big deal, fix them now.
- * t/ax/depcomp.sh: Here.
- * t/autodist.sh: And here.
- * t/autodist-no-duplicate.sh: And here.
- * t/autodist-subdir.sh: Ad here.
- * t/remake11.sh t/self-check-me.tap: And here.
- * t/perf/testsuite-summary.sh: And here.
- * t/perf/testsuite-recheck.sh: And here.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: quote `like this', not 'like this', in a couple of tests
- * t/ansi2knr-no-more.sh: Here.
- * t/aclocal-verbose-install.sh: And here.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: clarify/extend few entries in 't/README'
- * t/README (Writing test cases): Here.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: better separation of entries in 't/README'
- * t/README (Writing test cases): Prepend different entries with a '*'
- character acting like a bullet in a list. This make different entries
- better separated, visually-wise. Minor related reformatting.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: subsections "Do" and "Do not" in 't/README' merged
- * t/README (Writing test cases): Merge subsections "Do" and "Do not".
- The distinction was rather artificial, and more confusing than helpful.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: new requirement 'grep-nonprint'
- * t/ax/test-inist.sh ($esc): New, a literal escape character.
- (grep-nonprint): New requirement, check that the grep implementation
- available that can handle non-printing characters correctly.
- * t/color.sh: Use it instead of hand-rolled equivalent, and do not
- (re)define '$esc' explicitly.
- * t/color2.sh: Likewise.
- * t/tap-color.sh: Likewise.
- * t/vtexi4.sh: Likewise.
- * t/parallel-tests-no-color-in-log.sh: Likewise. Also prefer the use
- of grep over that of $FGREP, because the new requirement only check
- grep, and ensure we only grep non-printing characters from a pipe, to
- avoid hitting a BSD grep limitation.
- * t/parallel-tests-reset-term.sh: Likewise.
- * t/ax/tap-summary-aux.sh: Use '$esc' instead of hard-coding the
- literal escape character.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix description of an expected error message in a test
- * t/vartypo2.sh: Here. This reflects the change from `this style'
- of quoting to 'this style'.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: assume automake quotes 'like this', not `like this'
- * t/add-missing.tap: Here. This slightly simplifies and/or enhances
- some grepping checks on automake diagnostic.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: prefer using 'is_newest' over 'ls -t' hacks
- tests: implement is_newest as an auxiliary script, not shell function
- tests: fix some spurious failures in VPATH setup
- tests: work in VPATH setup again
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prefer using 'is_newest' over 'ls -t' hacks
- To verify that a file 'new' is newer than the file 'old', it's much
- cleaner to use "is_newest new old" rather than the more clumsy
- "ls -t". Adjust several of our tests accordingly.
- * syntax-checks.mk (sc_tests_ls_t): New check, guard against uses
- of "ls -t" and similar.
- (syntax_check_rules): Add it.
- * t/maken.sh: Adjust.
- * t/autohdr4.sh: Likewise.
- * t/extradep2.sh: Likewise.
- * t/lex-depend-cxx.sh: Likewise.
- * t/extradep.sh: Likewise.
- * t/yacc-depend2.sh: Likewise.
- * t/yacc-pr204.sh: Likewise.
- * t/lex-pr204.sh: Likewise.
- * t/yacc8.sh: Likewise.
- * t/acloca13.sh: Likewise.
- * t/lex-depend.sh: Likewise, and enhance.
- * t/acloca14.sh: Likewise.
- * t/aclocal7.sh: Likewise.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: implement is_newest as an auxiliary script, not shell function
- This will allow to also use it in the makefile recipes used in our
- test cases.
- * t/ax/test-init.sh (is_newest): Remove.
- * t/ax/is_newest: New script.
- * Makefile.am (EXTRA_DIST): Add it.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix some spurious failures in VPATH setup
- * t/self-check-cleanup.tap: No need to copy the 'ax/t/test-init.sh'
- file over in our temporary directory.
- * t/self-check-reexec.tap: Likewise.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: work in VPATH setup again
- * defs: Drop overly paranoid sanity checks that was causing all the tests
- to fail spuriously when run in a VPATH setup, with a message like:
- "../t/nodef.sh: ./t/ax/test-init.sh: not found in current directory".
- Those checks looked for invariants that, even if broken, would still
- cause the test to fail very early and with a pretty clear error message
- anyway.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: automatic re-execution works for non-POSIX shells too
- tests: use more POSIX shell features our test scripts
- + Extra non-trivial edits:
- * t/ax/test-init.sh: Apply the diffs between past versions of
- 'defs' in maint and in master; i.e., remove handling of $required
- entries 'texi2dvi-o' and 'makeinfo-html', and adjust to the fact
- that the parallel testsuite harness is now the default.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: automatic re-execution works for non-POSIX shells too
- Some inferior shells are too greedy in parsing their input. If a
- non-POSIX Bourne shell (like Solaris 10 /bin/sh) was used to launch
- one of our test scripts, it would fail unconditionally, because it
- unexpectedly saw some (by it) unsupported constructs, notwithstanding
- such constructs being placed *after* the code implementing automatic
- test re-execution with a better shell. In conclusion, the shell
- bailed out like this:
- $ /bin/sh t/ar.sh
- $ t/ar.sh: syntax error at line 257: `is_newest_files=$' unexpected
- By moving all the potentially problematic code in a separate file, to
- be sourced only after the code for automatic re-execution with a better
- shell, we ensure that inferior shell cannot see such code by mistake.
- * defs: All code after automatic shell re-execution moved out ...
- * t/ax/test-init.sh: ... to this new file.
- * syntax-checks.mk (xdefs): Add it.
- * Makefile.am (dist_check_DATA): Add it. Also move in 'defs' from
- a less explicit 'check_DATA' declaration.
- (nodist_check_DATA): Move in 'defs-static' from a less explicit
- 'check_DATA' declaration.
- (check_DATA): Remove.
- * t/self-check-sanity.sh: Remove, it was actually too hacky and brittle,
- sanity-checking situations we don0t actually care about.
- * t/list-of-tests.mk: Adjust.
- * t/self-check-explicit-skips.sh: Adjust, and fix a botched heading
- comments while we are at it.
- * t/self-check-reexec.tap: Adjust.
- * t/self-check-cleanup.tap: Likewise.
- 2012-06-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: use more POSIX shell features our test scripts
- Since commit 'v1.12-36-g2d68fd9' of 2012-05-07, "configure: search a
- sturdy POSIX shell to be used in the testsuite", the shell running
- our test script is assured to be a POSIX-conforming shell, so we can
- use the more modern and flexible idioms and features that we couldn't
- use when we also aimed at compatibility with non-POSIX Bourne shells,
- like Solaris /bin/sh.
- * t/README: Suggest to use POSIX shell features liberally in test cases,
- with possible exception of Makefile recipes and configure shell code.
- * Several tests: Adjust to use more POSIX shell features; e.g., $(...)
- rather than `...`, $((...)) rather than `expr ...`, "if ! CMD; then ..."
- instead of "if CMD; then :; else ...", and so on.
- In several places, when using the 'test' built-in, prefer '-eq' over
- '=' for numeric comparisons, and prefer "grep -c PATTERN FILE" over
- "grep PATTERN FILE | wc -l".
- Throw in other low-hanging easy improvements and fixlets while we are
- at it.
- * t/ax/depcomp.sh, t/ax/tap-summary-aux.sh, t/ax/tap-functions.sh,
- defs, defs-static.in: Likewise.
- 2012-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- docs: avoid failures with development version of Texinfo (4.13.90)
- typofix: s/test derivers/test drivers/ in check.am comments
- typofix: s/env/even/ in comments in GNUmakefile
- 2012-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: avoid failures with development version of Texinfo (4.13.90)
- * doc/automake-history.texi: Use '@item' instead of '@itemx' where
- appropriate.
- 2012-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- missing: do not touch timestamps; only warn for out-of-date files
- Before this change, the missing script had a twofold role:
- - it warned the user if some required maintainer tools was missing,
- or too old;
- - in such a case, it tried to "fix" the timestamp of the files that
- should have been rebuilt by that tool (without actually updating
- the file contents, of course), to allow the build to continue.
- The second capability used to be quite useful in the days when most
- projects committed files generated by maintainer-only tools in their
- VCS repository (today the trend is not to keep such generated files
- VCS-committed anymore). In such a setup, the "timestamp-fixing"
- capability of 'missing' was quite useful, in that it allowed users
- lacking some required maintainer tool to build from a VCS checkout
- in the face of skewed timestamps (as could have been caused by
- "cvs update" or "git checkout").
- But then, when the automatic remake rules kicked in due to the
- generated files being *actually out-of-date* (e.g., because the user
- had modified 'configure.ac' but lacked a modern-enough autoconf to
- rebuild it), that behaviour of 'missing' caused the same problem that
- plagued AM_MAINTAINER_MODE; i.e., the user would get non-dependable
- builds and inconsistent statuses of the build tree -- changes to
- source files don't reflect on generated files, and this can be very
- confusing and cause hard-to-spot errors).
- So we now believe that the best approach to deal with timestamp-related
- issues is not to have 'missing' to "automagically" try to resolve
- them (with all the risk and brittleness entailed), but rather to
- suggest those projects still keeping generated files committed in their
- VCS to provide a proper (say) 'fix-timestamp.sh' script that touches
- the timestamp of the checked-out files, to ensure no spurious rebuild
- will be triggered. As a bonus, such a script can be more aware of the
- particularities, nooks and corner cases of a project, and thus more
- reliable than the old 'missing' script.
- An example of this approach is offered by GNU awk (release 4.0.1, Git
- tag 'gawk-4.0.1', commit b85b04e8). The GNU awk maintainers commit
- the Autotools-generated files (configure, Makefile.in, etc.) and other
- generated in the project's Git repository, but offer a useful script
- 'bootstrap.sh' that fixes the timestamps of those files, to ensure no
- useless remake is triggered in a freshly cloned repository:
- #! /bin/sh
- # bootstrap.sh --- touch relevant files to avoid out-of-date issues
- # in Git sandboxes
- touch aclocal.m4
- find awklib -type f -print | xargs touch
- sleep 1
- touch configure
- sleep 2
- touch configh.in
- sleep 1
- touch test/Maketests
- find . -name Makefile.in -print | xargs touch
- touch doc/*.info
- touch po/*.gmo
- touch po/stamp-po
- touch awkgram.c
- touch command.c
- touch version.c
- A similar, simplified script is also reported as an example in the
- manual.
- * NEWS: Update.
- * doc/automake.texi (Auxiliary Programs, maintainer-mod): Update.
- (CVS): Do not suggest that 'missing' can "automagically" fix botched
- timestamp due to a "cvs update"; this isn't true anymore. Give an
- example of a custom 'fix-timestamp.sh' script that can be used to
- obtain the same effect (in a slightly more laborious but also more
- explicit and less brittle way). Fix some minor typos and improper
- wordings while we are at it.
- * lib/missing: Basically rewritten to implement the new semantics.
- As a side effect (one of the several), the '--run' option is no more
- required nor recognized.
- * m4/missing.m4 (AM_MISSING_HAS_RUN): Enhance the test on '$MISSING'
- to ensure it actually provides the new semantics (by trying the new
- "witness" option '--is-lightweight').
- * lib/am/distdir.am (distdir): No need anymore to check for "bad"
- distributed man pages that were actually dummy stubs generated by
- the 'missing' script.
- * t/missing4.sh: Rename ...
- * t/remake-aclocal-version-mismatch.sh: ... like this.
- * t/missing2.sh: Rename ...
- * t/missing-version-mismatch.sh: ... like this, and adjust to the
- new semantics.
- * t/missing3.sh: Adjust to the new semantics.
- * t/man4.sh: Remove as obsolete.
- * t/missing.sh: Likewise.
- * t/missing5.sh: Likewise.
- * t/txinfo30.sh: Likewise.
- * t/man6.sh: Adjust grepping checks.
- * t/remake6.sh: Likewise.
- * t/list-of-tests.mk: Adjust.
- 2012-06-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: s/test derivers/test drivers/ in check.am comments
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- typofix: s/env/even/ in comments in GNUmakefile
- Spotted by Eric Blake.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- bootstrap: overhaul and improve
- docs: quote 'like this', not `like this'
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- bootstrap: overhaul and improve
- This fixes several weaknesses and buglets in the 'bootstrap' convenience
- target offered in GNUmakefile (and its supporting code). Refer to the
- extensive code comments in there for more details.
- * GNUmakefile: Almost completely rewritten.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: quote 'like this', not `like this'
- * doc/automake.texi: Fix the reported warnings and informative messages
- from automake to quote 'like this' rather than as `like this'. Do the
- same for comments and some text in our examples.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: tests: special requirement 'makeinfo-html' removed from ./defs
- This should have ideally been part of earlier commit v1.12.1-93-g3c64d54.
- * defs (makeinfo-html): Remove.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: guard against obsolete $required entries
- * syntax-check.mk: Add rules guarding against the use of the
- obsolete test requirements 'texi2dvi-o' and 'makeinfo-html'.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: drop requirement 'makeinfo-html'; 'makeinfo' is enough
- * defs: Since we now require Texinfo 4.9 or later in the Automake
- generated Makefiles, and since the '--html' option of makeinfo, as
- well as its capability to generate HTML output, has been supported
- since Texinfo 4.0 (according to the Texinfo NEWS file), the
- requirement 'makeinfo-html' is obsolete -- the simpler requirement
- 'makeinfo' is enough.
- * t/instdir-texi.sh ($required): Adjust by using simply 'makeinfo'
- instead of 'makeinfo-html'.
- * t/silent8.sh: Likewise.
- * t/txinfo21.sh: Likewise.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: drop requirement 'texi2dvi-o'; 'texi2dvi' is enough
- * defs: Since we now require Texinfo 4.9 or later in the Automake
- generated Makefiles, and since the '-o' option of texi2dvi has been
- supported since Texinfo 4.1, the requirement 'texi2dvi-o' is
- obsolete -- the simpler requirement 'texi2dvi' is enough.
- * t/silent8.sh ($required): Adjust by using simply 'texi2dvi'
- instead of 'texi2dvi-o'
- * t/txinfo-no-clutter.sh: Likewise.
- * t/txinfo13.sh: Likewise.
- * t/txinfo23.sh: Likewise.
- * t/txinfo24.sh: Likewise.
- * t/txinfo25.sh: Likewise.
- * t/txinfo28.sh: Likewise.
- * t/txinfo33.sh: Likewise.
- * t/vtexi4.sh: Likewise.
- 2012-06-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- texi: require Texinfo >= 4.9, related enhancements
- We start passing the '--build-dir' option to the texi2dvi and texi2pdf
- invocations done in our Texinfo-related rules. The argument for this
- option will be specific for each info_TEXINFOS entry, to work around a
- texi2dvi bug that could otherwise cause racy failures in parallel make
- builds:
- <http://lists.gnu.org/archive/html/automake-patches/2012-06/msg00073.html>
- That bug seems already fixed in the development version of texi2dvi,
- though:
- <http://lists.gnu.org/archive/html/automake-patches/2012-06/msg00074.html>
- so the details of our '--build-dir' usage can be revisited once we can
- assume Texinfo 5.0 or later.
- Since the '--build-dir' options has been only supported since Texinfo
- 4.9, we lose compatibility with all older Texinfo versions.
- But we also get some real improvements.
- First, the '--build-dir' option implies the '--tidy' option; this, like
- the '--clean' option that we were formerly using, prevents cluttering of
- the build directory with all the TeX and Texinfo auxiliary files and
- build by-products, but, differently from '--clean', keeps them around
- for later re-runs to use; this shortens the rebuild times considerably.
- Second, the use of '--build-dir' also allows us to specify different
- build directories for the PDF and DVI output, preventing the rules
- building them from stomping on each other's feet when run in parallel.
- This is demonstrated by the test cases 'txinfo-no-clutter.sh' and
- 'txinfo33.sh', which before this change used to fail when run with
- MAKE="make -j4", but now succeed even in that case.
- * NEWS: Update.
- * lib/am/texibuilds.am: Do not try to avoid texi2dvi/texi2pdf option
- '-o'; it has been supported since Texinfo 4.1, and we now require
- Texinfo >= 4.9. Remove an obsolete comment. Modify calls to texi2dvi
- and texi2pdf to use the '--build-dir' option, so that TeX auxiliary
- files and build by-products for a 'foo.texi' input will be placed in
- a 'foo.t2d' directory (for texi2dvi) or in a 'foo.t2p' directory (for
- texi2pdf).
- * automake.in (scan_texinfo_file): Greatly simplify the implementation,
- since we don't need anymore to keep track of the TeX auxiliary files and
- build by-products to clean. Drop the '@CLEAN_FILES' part of the return
- value.
- (handle_texinfo_helper): Adjust the 'scan_texinfo_file()' call to its
- new signature. Append the "work directories" now created by texi2dvi
- and texi2pdf invocation to the list of files/directories removed upon
- "make mostlyclean".
- * lib/am/texinfos.am: Update the cleaning rules (and comments)
- accordingly.
- * t/txinfo-no-clutter.sh: Minimal adjustment to avoid spurious failures.
- * .gitignore: Update.
- 2012-06-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: it's not true that DISTCHECK_CONFIGURE_FLAGS is maintainer-reserved
- At least, not anymore since commit 'v1.11-372-g9760039' of 2001-06-10,
- "distcheck: add support for AM_DISTCHECK_CONFIGURE_FLAGS". See also
- automake bug#8784.
- * doc/automake.texi (Flag Variables Ordering): Do not report
- 'DISTCHECK_CONFIGURE_FLAGS' as a "variables that are only useful
- to the maintainer that has no user counterpart": now it is a
- user-reserved variable, its maintainer-reserved counterpart
- being 'AM_DISTCHECK_CONFIGURE_FLAGS' .
- 2012-06-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'am-preprocess-drop-tricky-transform'
- * am-preprocess-drop-tricky-transform:
- automake: stop supporting "%KEY?iftrue:iffalse%" transforms
- am: stop using "%KEY:iffalse?iftrue%" transforms
- 2012-06-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: minor reorganization of few tests
- fixup: adjust t/list-of-tests.mk for renamed/added tests
- subdirs: enhance coverage, tweak and rename few tests
- sync: update files from upstream with "make fetch"
- py-compile: consistently quote 'like this', not `like this'.
- docs: recursive make considered harmful
- docs: clean rules are not run in reverse order of build rules anymore
- silent: new $(AM_V_P) variable, tell if we're running in silent mode
- refactor: silent rules handling (a little)
- refactor: &define_verbose_var: accept a third optional argument
- + Extra non-trivial edits:
- These are due to the fact that support for silent rules is enabled
- unconditionally these days (since commit 'v1.12-34-g14141f2' of
- 2012-05-01, "silent rules: support for them is always active now").
- * automake.in: In the new silent related code, do not ever check
- whether the 'silent-rules' option is active; just assume support
- for silent rules is enabled.
- * t/silent-obsolescent-warns.sh: Remove as obsolete.
- * t/list-of-tests.mk: Adjust.
- 2012-06-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'docs-recursion' into maint
- * docs-recursion:
- docs: recursive make considered harmful
- 2012-06-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'silent-custom' into maint
- * silent-custom:
- silent: new $(AM_V_P) variable, tell if we're running in silent mode
- refactor: silent rules handling (a little)
- refactor: &define_verbose_var: accept a third optional argument
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: stop supporting "%KEY?iftrue:iffalse%" transforms
- And the similar "reduced forms" "%KEY:iffalse%" and "%KEY?iftrue%"
- as well.
- They are convoluted, never used (after the previous change), and will
- get in the way in the Automake-NG branch, where we'll soon want to use
- GNU make static pattern rules in our internal '*.am' fragments.
- * automake.in (preprocess_file, transform): Simplify not to support
- those transform patterns.
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- am: stop using "%KEY:iffalse?iftrue%" transforms
- And the similar "reduced forms" "%KEY:iffalse%" and "%KEY?iftrue%"
- as well.
- They are harder to grasp, can be easily reformulated in function of
- other "plainer" transforms ("?KEY?" and "?!KEY?"), and we'll remove
- support for them anyway in a later change.
- * lib/am/data.am, lib/am/libs.am, lib/am/lisp.am, lib/am/ltlib.am,
- lib/am/progs.am, lib/am/python.am, lib/am/scripts.am: Adjusted not
- to rely on those kinds of transforms.
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: minor reorganization of few tests
- * t/subdir3.sh: Rename ...
- * t/sourcefile-in-subdir.sh: ... like this.
- * t/subdir4.sh: Rename ...
- * t/depcomp-implicit-auxdir.sh: ... like this.
- * t/subdir6.sh: Rename ...
- * t/confh-subdir-clean.sh: ... like this.
- * t/subdir7.sh: Renamed ...
- * t/dir-named-obj-is-bad.sh: ... like this, and enhance.
- * t/srcsub.sh, t/srcsub2.sh: Unify ...
- * t/src-acsubst.sh: ... as this test.
- * t/list-of-tests.mk: Adjust.
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: adjust t/list-of-tests.mk for renamed/added tests
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdirs: enhance coverage, tweak and rename few tests
- * t/subdir5.sh: Rename ...
- * t/subdir-add-pr46.sh: ... like this.
- * t/subdir8.sh: Rename ...
- * t/subdir-add2-pr46.sh: ... like this.
- * t/cond2.sh: Rename ...
- * t/subdir-cond-err.sh: ... like this.
- * t/subdir9.sh: Rename ...
- * t/subdir-with-slash.sh: ... like this; improve heading comments.
- * t/subcond.sh: Rename ...
- * t/subdir-cond-gettext.sh: ... like this; improve m4 quoting.
- * t/subcond2.sh: Rename ...
- * t/subdir-am-cond.sh: ... like this; adjust heading comments.
- * t/subcond3.sh: Rename ...
- * t/subdir-ac-subst.sh: ... like this; adjust heading comments.
- * t/subdir2.sh: Rename ...
- * t/subdir-subsub.sh: ... like this; enhance so that it also runs
- './configure' and 'make'.
- * t/subdir-order.sh: New test, check that the $(SUDBIRS) entries
- are processed in the order they are specified.
- * doc/automake.texi: Adjust references to tests.
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.guess, lib/gitlog-to-changelog, lib/texinfo.tex: Update.
- 2012-06-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- py-compile: consistently quote 'like this', not `like this'.
- * lib/py-compile (usage_error): Here.
- 2012-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: recursive make considered harmful
- In the documentation, we shouldn't confuse "packages using subdirectories"
- with "packages using recursive make invocations". A package can have a
- careful organization in subdirectories, make no (or almost no) use of make
- recursion (examples of such packages are GNU bison, GNU cppi, and Automake
- itself).
- In fact, make recursion should be used as seldom as possible, because it
- makes the build system more brittle and dependency declarations less
- faithful. See Peter Miller's article "Recursive Make Considered Harmful"
- for more a more in-depth discussion:
- http://miller.emu.id.au/pmiller/books/rmch/
- * doc/automake.texi (Directories): Clarify how a build system based on
- make recursion does. Observe that such a system, albeit being very
- widespread, has its own issues and drawbacks, and that one can have a
- non-recursive setup also for projects using complex directory layout.
- (Recursing subdirectories): Speak of "packages that use make recursion"
- rather than of "packages with subdirectories".
- 2012-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'subdirs-simplify' into maint
- * subdirs-simplify:
- docs: clean rules are not run in reverse order of build rules anymore
- 2012-06-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: clean rules are not run in reverse order of build rules anymore
- At least since commit 'v1.12.1-12-gec6a135' of 2012-06-10, "subdirs: unify
- rules for "cleaning" and "normal" recursive targets"
- * doc/automake.texi (Recursing subdirectories): Adjust.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maintcheck: fix failures, both real and spurious
- subdir tests: avoid an use of "make -j4", for portability
- tests: avoid failure due to libtool quirks in C++ demo test
- tests: fix spurious failures due to missing '$sleep'
- subdirs: unify rules for "cleaning" and "normal" recursive targets
- tests: add a "demo" test on C support
- tests: look for '.lo' rather than '.o' object when using Libtool with C++
- cosmetics: few typofixes in older ChangeLogs, suggested by "codespell.py"
- maint: grammar fixes: s/all these/all of these/
- subdir-objects: improve "make mostlyclean" efficiency and flexibility
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'subdir-objects-pr10697' into maint
- * subdir-objects-pr10697:
- maintcheck: fix failures, both real and spurious
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix failures, both real and spurious
- * syntax-checks.mk (sc_rm_minus_f): Whitelist the
- 't/subobj-clean*-pr10697.sh' tests.
- * t/subobj-clean-pr10697.sh: When redefining PATH,
- use '$PATH_SEPARATOR', not hard-coded ':'.
- * t/subobj-clean-lt-pr10697.sh: Likewise.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: merged some testsuite fixlets
- * fix-cxx-libtool-demo:
- tests: avoid failure due to libtool quirks in C++ demo test
- * subdir-objects-pr10697:
- tests: fix spurious failures due to missing '$sleep'
- * subdirs-simplify:
- subdir tests: avoid an use of "make -j4", for portability
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdir tests: avoid an use of "make -j4", for portability
- Otherwise, a spurious failure with Solaris CCS make can be triggered.
- The coverage is not actually reduced, since the code path is still
- covered when one runs the testsuite with AM_TESTSUITE_MAKE="make -jN"
- (as should be done periodically).
- * t/subdir-distclean.sh : Call simply "make maintainer-check", not
- "make -j4 maintainer-check".
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid failure due to libtool quirks in C++ demo test
- Revealed by failures on NetBSD 5.1.
- * t/cxx-lt-demo.sh: In "make distcheck" invocation, don't define 'CC'
- to "false", as that value would be exported and passed to the child
- ./configure invocation, and some configure checks generated by libtool
- autoconf macros can still require a C preprocessor even for packages
- using only C++, and bail out if it's not found. The problem was not
- apparent on Solaris and GNU/Linux because those systems have a
- '/lib/cpp' program, and configure detected and used that as a fallback
- C preprocessor.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures due to missing '$sleep'
- Revealed by failures on NetBSD 5.1.
- * t/subobj-clean-pr10697.sh: Call '$sleep' before modifying the
- files that should trigger an automatic remake.
- * t/subobj-clean-lt-pr10697.sh: Likewise.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'subdirs-simplify' and 'subdir-objects-pr10697' into maint
- * subdirs-simplify:
- subdirs: unify rules for "cleaning" and "normal" recursive targets
- tests: add a "demo" test on C support
- * subdir-objects-pr10697:
- subdir-objects: improve "make mostlyclean" efficiency and flexibility
- tests: look for '.lo' rather than '.o' object when using Libtool with C++
- cosmetics: few typofixes in older ChangeLogs, suggested by "codespell.py"
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdirs: unify rules for "cleaning" and "normal" recursive targets
- Before this change, the recursive invocation of cleaning targets in
- the $(SUBDIRS) where done in inverse order, i.e., starting from the
- last $(SUBDIRS) entry and proceeding towards the first. According
- to the code comments, this was done ...
- ... in an attempt to alleviate a problem that can happen when
- dependencies are enabled. In this case, the .P file in one
- directory can depend on some automatically generated header
- in an earlier directory. Since the dependencies are required
- before any target is examined, make bombs.
- But this comment does not apply anymore to the current implementation
- of automatic dependency tracking: the '.Po' and '.Plo' files does not
- depend on any C header or source file, ever!
- So it seems that the distinction between "normal" and "cleaning"
- recursive targets is a stale leftover of an older implementation of
- the automatic dependency tracking. In fact, the Automake History
- manual seems to confirm this suspect; the section "First Take on
- Dependency Tracking" reads:
- Because each .P file was a dependency of Makefile, this meant
- that dependency tracking was done eagerly by make. For instance,
- "make clean" would cause all the dependency files to be updated,
- and then immediately removed. This eagerness also caused problems
- with some configurations; if a certain source file could not be
- compiled on a given architecture for some reason, dependency
- tracking would fail, aborting the entire build.
- and the following section "Dependencies As Side Effects" reads:
- In this approach, the .P files were included using the -include
- command, which let us create these files lazily. This avoided
- the "make clean" problem.
- So the distinction between "normal" and "cleaning" recursive targets
- has likely been obsolete since by then already. We can thus remove
- such distinction, thus reducing some complications and duplication in
- our rules. Doing so, the whole testsuite still passes (both with GCC
- and Sun C 5.9), even the test 'c-demo.sh', which, among the other
- things, exercise the setup described in the obsolete code comment
- referenced above.
- Finally, note that we still keep '$(RECURSIVE_CLEAN_TARGETS)' and
- '$(RECURSIVE_TARGETS)' as two distinct variables, to ensure a better
- backward-compatibility for any user-defined rules that happen to use
- those variables.
- * NEWS: Update.
- * lib/am/subdirs.am ($(RECURSIVE_CLEAN_TARGETS), $(CLEAN_TARGETS)):
- Merge their recipes.
- * t/subdir-distclean.sh: New test, check that "./configure && make
- && make distclean" is actually a no-op, even when conditional SUBDIRS
- are involved.
- * t/list-of-tests.mk: Add it.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: add a "demo" test on C support
- Showing and testing non-trivial use of C support, and its interaction
- with other features.
- * t/c-demo.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: look for '.lo' rather than '.o' object when using Libtool with C++
- * t/cxx-lt-demo.sh: ... in this test.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: few typofixes in older ChangeLogs, suggested by "codespell.py"
- The typofixes offered by this patch have been suggested by the
- "codespell.py" script. Reference:
- <http://git.profusion.mobi/cgit.cgi/lucas/codespell/>
- * old/ChangeLog.01, old/ChangeLog.02, old/ChangeLog.03: Fix few typos.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- silent: new $(AM_V_P) variable, tell if we're running in silent mode
- Addresses part of automake bug#8665.
- * automake.in (handle_silent): Define a new make variable '$(AM_V_P)',
- that expands to a shell conditional that can be used in make recipes to
- determine whether they are being run in silent mode or not. The choice
- of the name derives from the LISP convention of appending the letter
- 'P' to denote a predicate (see also "the '-P' convention" in the Jargon
- File); we do so for lack of a better convention.
- * t/automake.texi, NEWS: Document the new variable.
- * t/silent6.sh: Adjust and extend. Move out the checks that didn't
- actually deal with user extension of silent rules ...
- * t/silent-obsolescent-warns.sh: ... into this test (bound to be
- removed once 'maint' is merged into the 'master' branch).
- * t/list-of-tests.mk: Add the new test.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: silent rules handling (a little)
- * automake.in (handle_languages): Move definition of $(AM_V_GEN)
- variable ...
- (define_verbose_tagvar): ... and of '$(AM_V_at)' variable ...
- (handle_silent): ... in this new subroutine.
- (generate_makefile): Call it.
- 2012-06-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: &define_verbose_var: accept a third optional argument
- This is only required by future changes.
- * automake.in (define_verbose_var): Accept a third optional argument,
- specifying the value to assign to the given make variable when silent
- rules are disabled.
- 2012-06-10 Jim Meyering <meyering@redhat.com>
- maint: grammar fixes: s/all these/all of these/
- Run this command:
- git grep -li '\<all.these\>' \
- |xargs perl -pi -e 's/\b([Aa])ll these\b/${1}ll of these/'
- 2012-06-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- subdir-objects: improve "make mostlyclean" efficiency and flexibility
- Fixes automake bug#10697.
- Before this change, the generated Makefile issued one 'rm' invocation
- for each subdir object file. Not only was this very inefficient when
- there were several such files, but it also caused stale object files
- to be left behind when a source file was renamed or removed.
- * automake.in (handle_single_transform): When a subdir object is seen,
- update '%compile_clean_files' to clean all the compiled objects in its
- same subdirectory, and all the libtool compiled objects ('.lo') there
- as well is that subdir object is a libtool one.
- * t/subobj-clean-pr10697.sh: New test.
- * t/subobj-clean-lt-pr10697.sh: Likewise.
- * t/list-of-tests.mk: Add them.
- * NEWS: Update.
- 2012-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: look for '.lo' rather than '.o' object when using Libtool with C++
- cosmetics: few typofixes in older ChangeLogs, suggested by "codespell.py"
- tests: add basic semantic tests on C++ support
- tests: minor tweak to 't/objc-megademo.sh'
- 2012-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: look for '.lo' rather than '.o' object when using Libtool with C++
- * t/cxx-lt-demo.sh: ... in this test.
- 2012-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: few typofixes in older ChangeLogs, suggested by "codespell.py"
- The typofixes offered by this patch have been suggested by the
- "codespell.py" script. Reference:
- <http://git.profusion.mobi/cgit.cgi/lucas/codespell/>
- * old/ChangeLog.01, old/ChangeLog.02, old/ChangeLog.03: Fix few typos.
- 2012-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: add basic semantic tests on C++ support
- Strange as it might seem, we were still missing them (yikes).
- * t/cxx-demo.sh: New test.
- * t/cxx-lt-demo.sh: Likewise (using libtool).
- * t/list-of-tests.mk: Add them.
- 2012-06-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: minor tweak to 't/objc-megademo.sh'
- * t/objc-megademo.sh (am_create_testdir): Define to "empty" before
- including ./defs, because this test doesn't rely on the files usually
- pre-set by the setup in there.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: simplify subroutine '&saw_extension'
- * automake.in (saw_extension): Now that we use the '%extension_seen'
- hash only as a set (it's keys being its elements), we can simplify
- the implementation of this function accordingly.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove subroutine '&saw_sources_p'
- * automake.in (saw_sources_p): Remove, its implementation is now so
- trivial that it's easier to inline it into ...
- (handle_languages): ... it's only caller.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove unused '&count_files_for_language' subroutine
- * automake.in (count_files_for_language): Remove. Its only remaining
- caller (saw_sources_p) has stopped calling it in the previous commit.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: simplify '&saw_sources_p'
- This is just a minor cleanup. No semantic change is intended.
- * automake.in (saw_sources_p): Since its now-only caller calls it with
- the '0' argument, remove the code paths that assumed the argument could
- be '1', and assume no arguments.
- (handle_languages): Drop the arguments '0' in the '&saw_sources_p'
- invocation.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: look at $(am__tagged_files) to decide whether to activate
- This is just a preparatory refactoring in view of future changes.
- * automake.in (handle_tags): To decide whether to include the tags rules,
- rely on whether the automake-defined variable $(SOURCES) is non-empty,
- rather than on the fact that '&saw_sources(1)' returns true.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags: new var $(am__tagged_files) to list all files to run taggers on
- This change reduce code duplication a little, and will be needed by
- future simplifications.
- * automake.in (handle_tags): Define a new 'am__tagged_files' private
- make variable that lists all files to run taggers (mkid, cscope, ctags,
- etc) on. Drop the now-useless transform '%CONFIG%' when including
- 'tags.am'.
- * lib/am/tags.am: Use it in several recipes and dependencies list to
- reduce code duplication.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags (cscope): also process $(TAGS_FILES)
- * lib/am/tags.am (cscopelist): Also scan the files (if any) listed in
- the '$(TAGS_FILES) variable, for consistency by what is done by the
- 'ID', 'TAGS' and 'CTAGS' rules.
- 2012-06-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tags (ID, cscope): also process config header (if any)
- * lib/am/tags.am (cscopelist, ID): Also scan the file given by the
- '%CONFIG%' transform, for consistency by what is done by the 'TAGS'
- and 'CTAGS' rules.
- 2012-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: document deprecation of configure.in
- news: put planned backward compatibilities early
- sync: update files from upstream with "make fetch"
- maint: deprecate 'configure.in' as autoconf input
- maint: post-release minor version bump
- release: stable release 1.12.1
- copyright: update copyright years in a couple of files
- tests: avoid spurious failures with Solaris 9 cscope program
- maintcheck: fix a spurious failure
- perf: beginning of a performance testsuite
- aclocal: declare function prototypes, do not use '&' in function calls
- news: support for configure.in will be dropped in future automake versions
- tests: fix botched heading comments in 'lex-clean-cxx.sh'
- [ng] maintcheck: some tweaks and fixlets
- help: fix a typo in the list of warning categories
- maint: version bump after beta release
- release: beta release 1.12.0b (will become 1.12.1)
- release: remove overly picky check
- 2012-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document deprecation of configure.in
- * NEWS (Warnings and deprecations): We now warn if 'configure.in' is
- used instead of 'configure.ac' as autoconf input.
- (Future backward-incompatibilities): Adjust.
- 2012-06-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: put planned backward compatibilities early
- * NEWS (Future backward-incompatibilities): Put them in the news
- entries for the future 1.12.2 release.
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: update files from upstream with "make fetch"
- * lib/config.sub, lib/gitlog-to-changelog, lib/texinfo.tex: Update.
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: deprecate 'configure.in' as autoconf input
- It has been years since that has been deprecated in the documentation,
- in favour of 'configure.ac':
- Previous versions of Autoconf promoted the name configure.in, which
- is somewhat ambiguous (the tool needed to process this file is not
- described by its extension), and introduces a slight confusion with
- config.h.in and so on (for which '.in' means "to be processed by
- configure"). Using configure.ac is now preferred.
- It's now time to start giving runtime warning about the use of
- 'configure.in', so that support for it can be removed in future
- versions of autoconf/automake.
- See also, in the Autoconf repository, commit 'v2.69-4-g560f16b' of
- 2012-05-23, "general: deprecate 'configure.in' as autoconf input".
- * lib/Automake/Configure_ac.pm: Issue a warning in the 'obsolete'
- category if 'configure.in' is detected. Since this module is synced
- from Automake, this change is to be backported there (and will be
- soon).
- * t/help.sh: Adjust.
- * t/configure.sh: Adjust and enhance.
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: post-release minor version bump
- * configure.ac (AC_INIT): Bump version number to 1.12.1a.
- * m4/amversion.m4: Likewise (automatically regenerated by
- "make bootstrap").
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable release 1.12.1
- * configure.ac (AC_INIT): Bump version number to 1.12.1.
- * m4/amversion.m4: Likewise (auto-updated by "./bootstrap").
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- copyright: update copyright years in a couple of files
- * doc/help2man, t/aclocal-verbose-install.sh: Update copyright,
- thanks to "make update-copyright".
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures with Solaris 9 cscope program
- * t/cscope.tap: Also check that the cscope program in use supports the
- '-q' option; if this is not the case, some cscope usages in the generated
- Makefiles would fail, so we must skip the checks involving those usages.
- 2012-06-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix a spurious failure
- * Makefile.am (test_subdirs): Add 't/perf'. Fix spurious failure
- of the 'maintainer-check-list-of-tests' target.
- 2012-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- perf: beginning of a performance testsuite
- Some tests in the Automake testsuite already aims only at verifying
- the performance, rather than the correctness, of some operations.
- Still, they are somewhat shoehorned and forced into the PASS/FAIL
- framework (say, with the 'ulimit' shell builtin used to verify some
- operation doesn't take up too much time or memory), but that is
- conceptually a stretch, and has already caused problems in practice
- (see automake bug#11512 for an example).
- So we start moving the "performance tests" out of the testsuite proper,
- and make them run only "on demand" (when the user exports the variable
- 'AM_TESTSUITE_PERF' to "yes"). Ideally, we should provide those tests
- with a custom runner/driver that measures and displays the relevant
- performance information, but doing that correctly and with the right
- APIs is definitely more difficult, so we leave it for a later step
- (an hope we'll take such a step eventually).
- * t/cond29.sh: Move ...
- * t/perf/cond.sh: ... here, and adjust.
- * t/testsuite-recheck-speed.sh: Move ...
- * t/perf/testsuite-recheck.sh: ... here.
- * t/testsuite-summary-speed.sh: Move ...
- * t/perf/testsuite-summary.sh: ... here.
- * t/list-of-tests.mk (perf_TESTS): New variable, listing the tests in
- the 't/perf' directory.
- (handwritten_TESTS): Adjust.
- * defs: Skip any tests in the 't/perf/' subdirectory unless the
- 'AM_TESTSUITE_PERF' variable is set to "yes" or "y".
- * .gitignore: Update.
- 2012-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11543' into maint
- * fix-pr11543:
- aclocal: declare function prototypes, do not use '&' in function calls
- 2012-05-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: declare function prototypes, do not use '&' in function calls
- This change will also fix automake bug#11543 (from a report by Matt
- Burgess).
- * aclocal.in: Declare prototypes for almost all functions early, before
- any actual function definition (but omit the prototype for the dynamically
- generated '&search' function). Add prototypes to any function definition.
- Remove '&' from function invocations (i.e., simply use "func(ARGS..)"
- instead of "&func(ARGS...)").
- * THANKS, NEWS: Update.
- 2012-05-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: support for configure.in will be dropped in future automake versions
- The use of configure.in as Autoconf input has been deprecated for a
- very long time in the Autoconf documentation, and the next version of
- Autoconf (2.70) will start warning about it ar runtime as well (see
- commit 'v2.69-4-g560f16b' or 2012-05-23, "general: deprecate
- 'configure.in' as autoconf input", in the Autoconf's git repository).
- * NEWS (Future backward-incompatibilities): Update.
- 2012-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- missing: support AC_CONFIG_HEADERS in addition to obsolete AC_CONFIG_HEADER
- * missing (autoheader*): Do not look only for AC_CONFIG_HEADER when
- grepping configure.ac, but also for AC_CONFIG_HEADERS: the latter has
- been preferred to the former by several years now in Autoconf.
- 2012-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- missing: don't bother checking for AM_CONFIG_HEADER: it is gone now
- * missing (autoheader*): Do not look for AM_CONFIG_HEADER when
- grepping configure.ac: it is not supported anymore (has been in
- fact deleted in commit v1.12-15-gd2ca168 of 2012-04-27, "m4: delete
- several obsolete macros").
- 2012-05-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: remove mention of AM_CONFIG_HEADER: it is obsolete and removed now
- * doc/automake.texi (Variables used when building a program): Remove
- obsolete mention of AM_CONFIG_HEADER as an alias to AC_CONFIG_HEADERS.
- 2012-05-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix botched heading comments in 'lex-clean-cxx.sh'
- * t/lex-clean-cxx.sh: This file tests lex, not yacc.
- 2012-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- [ng] maintcheck: some tweaks and fixlets
- * syntax-checks.mk (sc_no_brace_variable_expansions): Do not complain
- about ${MAKEVAR} usages in comments: they might be legitimate. This
- change is not strictly required for mainline automake, but will help
- in the Automake-NG branch.
- * sc_tests_here_document_format: Relax a bit, so that usages like
- "cout << "string" << endl;" in the test scripts (usages which can be
- used in here documents defining C++ sources) are not flagged as uses
- of bad delimiters for here documents. This change is not strictly
- required for mainline automake, but will help in the Automake-NG
- branch, and will anyway be more future proof w.r.t. possible future
- testsuite additions.
- (sc_tests_Exit_not_exit): Do not whitelist lines containing $PERL
- explicitly (that was only required for one test); instead ...
- * t/ext2.sh: ... use "exit (1)" instead of "exit 1" in the perl
- invocation of the guilty script.
- 2012-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'am-init-automake'
- * am-init-automake:
- init: obsolete usages of AM_INIT_AUTOMAKE not supported anymore
- 2012-05-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- init: obsolete usages of AM_INIT_AUTOMAKE not supported anymore
- This is a follow-up on commit v1.12-66-g27136df of 2012-05-06, "init: warn
- against obsolete usage of AM_INIT_AUTOMAKE".
- With this change, we drop support for the two-arguments and three-arguments
- invocation forms of the AM_INIT_AUTOMAKE macro, as in either of:
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION, NODEFINE)
- * NEWS, doc/automake.texi: Update.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Report the two- and three-arguments
- invocation form as a hard error.
- * t/aminit-moreargs-deprecation.sh: Renamed ...
- * t/aminit-moreargs-deprecation.sh: ... to this, and updated to check
- the new semantics.
- * t/ac-output-old.tap: Adjust by avoiding old-style uses of AC_INIT
- and AM_INIT_AUTOMAKE.
- * t/acsilent.sh: Likewise.
- * t/dirlist.sh: Likewise.
- * t/dirlist2.sh: Likewise.
- * t/req.sh: Likewise.
- * t/nodef.sh: Remove as obsolete.
- * t/version.sh: Likewise.
- * t/version2.sh: Likewise.
- * t/backcompat.sh: Likewise.
- * t/backcompat2.sh: Likewise.
- * t/backcompat3.sh: Likewise.
- * t/backcompat5.sh: Likewise.
- * t/backcompat4.sh: Renamed ...
- * t/backcompat-acout.sh: ... to this.
- * t/list-of-tests.mk: Adjust.
- 2012-05-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- help: fix a typo in the list of warning categories
- * lib/Automake/ChannelDefs.pm (usage): s/none'/none/.
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release
- * configure.ac (AC_INIT): Bump version number to 1.12.0c.
- * m4/amversion.m4: Likewise (auto-updated by "./bootstrap").
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: beta release 1.12.0b (will become 1.12.1)
- * configure.ac (AC_INIT): Bump version number to 1.12.0b.
- * m4/amversion.m4: Likewise (auto-updated by "./bootstrap").
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: remove overly picky check
- * Makefile.am (git-tag-release): Do not check that the version number
- NEWS is updated w.r.t. $(VERSION); given the new way we manage NEWS,
- that would cause gratuitous spurious failures.
- * HACKING: Update.
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'parallel-tests-default'
- * parallel-tests-default:
- check: the parallel-tests driver is now the default
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- ylwrap: preserve subdirectories in "#line" munging
- ylwrap: preparatory refactoring
- 2012-05-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'ylwrap-line-filename' into maint
- * ylwrap-line-filename:
- ylwrap: preserve subdirectories in "#line" munging
- ylwrap: preparatory refactoring
- 2012-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- check: the parallel-tests driver is now the default
- The old serial testsuite driver is still supported, and can be activated
- by the 'serial-tests' option (introduced by commit 'v1.11-1989-gdeb7773'
- of 2012-02-20, "automake: new option 'serial-tests'").
- * lib/Automake/Options.pm: Now, the 'parallel-tests' option is a no-op
- (but still explicitly recognized, for backward compatibility), while the
- 'serial-tests' option is recognized and registered.
- * automake.in: Adjust to ensure that the parallel test harness is used by
- default; mostly, this amounts at using "! option('serial-tests')" where
- "option('parallel-tests')" was used before.
- * NEWS, doc/automake.texi: Update.
- * configure.ac (AM_INIT_AUTOMAKE): Drop 'parallel-tests' option, is
- redundant now.
- * defs: In the generated AM_INIT_AUTOMAKE call, use the 'serial-tests'
- when the serial testsuite harness is to be used, and no option otherwise.
- * lib/am/check.am: Use (static) conditional '%SERIAL_TESTS%' instead of
- conditional '%PARALLEL_TESTS%'.
- * lib/test-driver: Adjust heading comments.
- * t/ax/extract-testsuite-summary.pl: Likewise.
- * t/check-exported-srcdir.sh: Likewise.
- * t/check-subst.sh: Likewise.
- * t/java-compile-run-nested.sh: Likewise.
- * t/parallel-tests-dry-run-1.sh: Likewise.
- * t/parallel-tests-dry-run-2.sh: Likewise.
- * t/parallel-tests-interrupt.sh: Likewise.
- * t/parallel-tests-many.sh: Likewise.
- * t/test-metadata-global-log.sh: Likewise.
- * t/tests-environment-backcompat.sh: Likewise.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Adjust a comment.
- * t/check8.sh: Likewise.
- * t/check-tests-in-builddir.sh: Likewise.
- * t/java-compile-run-flat.sh: Adjust a botched comment.
- * t/ax/tap-summary-aux.sh: Remove explicit use of the 'parallel-tests'
- option.
- * t/ax/testsuite-summary-checks.sh: Likewise.
- * t/aclocal-path-precedence.sh: Likewise.
- * t/dist-aux-many-subdirs.sh: Likewise.
- * t/parallel-tests-no-color-in-log.sh: Likewise.
- * t/parallel-tests-reset-term.sh: Likewise.
- * t/parallel-tests-subdir.sh: Likewise.
- * t/check-no-test-driver.sh: Fix setup to adjust to the changed
- semantics. Update heading comments.
- * t/parallel-tests-driver-install.sh: Adjust to the new semantic.
- * t/test-driver-is-distributed.sh: Simplified according to the
- new semantics.
- 2012-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: use 'parallel-tests' Automake option by default
- doc: fix location of Automake's own test-suite.log file
- yacc tests: avoid a spurious failure with Sun C++ 5.9
- self tests: cater for /bin/ksh symlinked to Zsh
- tests: fix spurious failures due to dpkg install-info
- 2012-05-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: use 'parallel-tests' Automake option by default
- This will help our transition from 'serial-tests' to 'parallel-tests'
- as the default test suite driver enabled by a TESTS assignment in the
- input Makefile.am. Note that that change of default will only take
- place in master, though.
- * defs: Pass the 'parallel-tests' option to the AM_INIT_AUTOMAKE
- invocation in the created 'configure.ac' stub, unless the variable
- 'am_serial_tests' is set to "yes". Don't pay attention anymore to
- the 'am_parallel_tests' variable, that's obsolete now.
- * defs-static.in: Warn if the 'am_serial_tests' variable is set in the
- environment; conversely, don't warn anymore about 'am_parallel_tests'
- being set in the environment.
- * Makefile.am (AM_TESTS_ENVIRONMENT): Nullify the 'am_serial_tests'
- variable instead of the now-obsolete 'am_parallel_tests' one.
- * syntax-checks.mk (sc_tests_obsolete_variables): Also warn against
- uses of 'am_parallel_tests', which is now deprecated in favor of
- 'am_serial_tests'. Similarly, if a use of 'parallel_tests' is seen,
- suggest using 'am_serial_tests' instead, not 'am_parallel_tests'.
- * gen-testsuite-part: Now that we use the 'parallel-tests' by default
- in our tests, we need to completely change the logic and semantics of
- generation of sibling tests for those tests that check the Automake
- generated testsuite harness itself. Do that, and give a complete
- explanation of the new logic and semantics in the relevant comments.
- * t/README: Update.
- * Lots of test cases: Adjust.
- 2012-05-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- doc: fix location of Automake's own test-suite.log file
- * doc/automake.texi (Reporting Bugs): The global testsuite log of
- Automake is now (basically since we have removed make recursion from
- the Automake's build system) saved in the file 'test-suite.log', not
- in the file 'tests/test-suite.log'. Adjust accordingly.
- 2012-05-16 Nikolai Weibull <now@bitwi.se> (tiny change)
- Stefano Lattarini <stefano.lattarini@gmail.com>
- ylwrap: preserve subdirectories in "#line" munging
- If Automake is used in non-recursive mode and one of the inputs is a
- yacc file, for example, "src/grammar.y", ylwrap will remove too many
- directories from the output file when it adjusts the paths in it.
- This results in #line directives referring to "grammar.y" instead of
- "src/grammar.y".
- This is a result of $input_rx simply taking all the directory
- components of the absolute input path and removing them.
- One solution is to store the path passed to ylwrap and replace
- $input_rx with it. This is what we do.
- Suggestion and initial patch (without tests) by Nikolai Weibull:
- <http://lists.gnu.org/archive/html/automake/2012-05/msg00013.html>
- Final patch by Stefano Lattarini.
- * lib/ylwrap ($input_sub_rx): New.
- When munging the #line directives, substitute '$input_rx' with it,
- instead of stripping it altogether.
- Adjust comments.
- * t/yacc-line.sh, t/lex-line: Adjust and extend.
- * NEWS, THANKS: Update.
- 2012-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- ylwrap: preparatory refactoring
- This commit should cause no semantic change in the ylwrap behaviour.
- It will only be needed in light of a future change. See:
- <http://lists.gnu.org/archive/html/automake/2012-05/msg00013.html>
- * lib/ylwrap (get_dirname, quote_for_sed): New functions, factoring
- out some non-trivial code. Use them where appropriate.
- 2012-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- yacc tests: avoid a spurious failure with Sun C++ 5.9
- * t/yacc-cxx.sh (parse1.yy): When calling the 'getchar' function declared
- in the #included <cstdio>, fully qualify it as std::getchar', to avoid
- Sun C++ 5.9 erroring out with:
- "parse1.yy", line 5: Error: The function "getc" must have a prototype.
- * t/yacc-clean-cxx.sh (sub1/parsefoo.yxx): Likewise.
- 2012-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- self tests: cater for /bin/ksh symlinked to Zsh
- * t/self-check-reexec.tap: When searching for a suitable non-Bash
- shells, be sure to reject any shell that is Zsh "in disguise" (as
- can be found on some Debian systems, where /bin/ksh can be symlinked
- to /bin/zsh4). This is required because our testsuite does not
- support older versions of Zsh, and that was causing the test to fail
- in the setup just described.
- 2012-05-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures due to dpkg install-info
- * t/install-info-dir.sh: Skip some checks if 'install-info' is the one
- from dpkg, not the one from GNU info; the former might try to create
- files in '/var/backups/', causing spurious failures like this for any
- non-root user:
- install-info(.../install-info-dir.dir/_inst/info/foo.info): \
- creating new section `Dummy utilities'
- cp: cannot create regular file `/var/backups/infodir.bak': \
- Permission denied
- install-info(.../install-info-dir.dir/_inst/info/foo.info): \
- could not backup .../install-info-dir.dir/_inst/info/dir in \
- /var/backups/infodir.bak: No such file or directory
- 2012-05-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix spurious failure due to i18n issue
- tests: add few missing 'cc' and 'c++' requirements
- 2012-05-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to i18n issue
- Fixes automake bug#11452.
- * t/parallel-tests-fork-bomb.sh: Export LANG, LANGUAGE and LC_ALL to
- 'C', to ensure error messages will be in English, and thus avoiding
- possible false negatives in our grepping of them.
- 2012-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: add few missing 'cc' and 'c++' requirements
- Without that requirements, the configure-time overrides of CC and CXX
- wouldn't be honored in the affected tests.
- * t/silent-yacc.sh ($required): Require 'cc'.
- * t/silent-yacc-headers.sh: Likewise.
- * t/silent-lex.sh: Likewise.
- * t/lex-clean.sh: Likewise.
- * t/lex-depend.sh: Likewise.
- * t/lex-line.sh: Likewise.
- * t/lex-depend.sh: Likewise.
- * t/lex-pr204.sh: Likewise.
- * t/yacc-deleted-headers.sh: Likewise.
- * t/yacc-line.sh: Likewise.
- * t/yacc-depend.sh: Likewise.
- * t/yacc-depend2.sh: Likewise.
- * t/yacc-dist-nobuild-subdir.sh: Likewise.
- * t/yacc-bison-skeleton.sh: Likewise.
- * t/yacc-bison-skeleton-cxx.sh ($required): Require 'c++'.
- * t/yacc-clean-cxx.sh: Likewise.
- * t/yacc-d-cxx.sh: Likewise.
- * t/yacc-cxx.sh: Likewise.
- * t/yacc-mix-c-cxx.sh ($required): Require 'cc' and 'c++'.
- 2012-05-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/ in 't/confsub.sh'
- Issue introduced in the recent merge 'v1.12-101-g12405c9'.
- 2012-05-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a spurious failure with dash
- test defs: fix indentation (cosmetic change)
- tests: remove obsolete uses of $sh_errexit_works
- configure: search a sturdy POSIX shell to be used in the testsuite
- tests: shell running test scripts is now named AM_TEST_RUNNER_SHELL
- fixup: distribute t/README
- init: warn against obsolete usage of AM_INIT_AUTOMAKE
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'testsuite-saner-shell' into maint
- * testsuite-saner-shell:
- tests: fix a spurious failure with dash
- test defs: fix indentation (cosmetic change)
- tests: remove obsolete uses of $sh_errexit_works
- configure: search a sturdy POSIX shell to be used in the testsuite
- tests: shell running test scripts is now named AM_TEST_RUNNER_SHELL
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failure with dash
- The dash shell, at least version 0.5.5.1, doesn't always bail out
- with a syntax error when a stray "fi" in encountered:
- $ dash -c ":; fi"; echo stat = $?
- stat = 0
- See also the relevant bug report:
- <http://permalink.gmane.org/gmane.comp.shells.dash/717>
- This behaviour was causing a spurious error in our testsuite. Fix it.
- * t/self-check-exit.tap: Use a stray parentheses rather than a stray
- 'fi' to trigger a syntax error.
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: fix indentation (cosmetic change)
- * defs (exit trap): Fix indentation left botched by previous
- patch 'v1.11b-51-g626bf65'.
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove obsolete uses of $sh_errexit_works
- After the last changes, configure will ensure that the shell
- selected to run the test scripts can correctly propagate exit
- status to the exit trap when 'set -e' is in effect.
- * configure.ac (sh_errexit_works): Do not AC_SUBST it anymore.
- * defs-static.in (sh_errexit_works): Do not initialize
- from the AC_SUBST value anymore.
- * defs (trap): Trap the EXIT signal unconditionally.
- * t/self-check-explicit-skips.sh: Do not skip the test if
- '$sh_errexit_works' is != "yes", this check doesn't make
- sense anymore.
- * t/self-check-cleanup.tap: Likewise.
- * t/self-check-exit.tap: Assume the exit trap is always
- installed by ./defs.
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: search a sturdy POSIX shell to be used in the testsuite
- * configure.ac: Add code (partially inspired to checks in gnulib's
- 'tests/init.sh') to search for a good-enough, not-buggy POSIX/XSI
- shell to be used in our testsuite. Accordingly AC_SUBSTitute the
- variable 'AM_TEST_RUNNER_SHELL'.
- * NEWS: Update.
- 2012-05-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: shell running test scripts is now named AM_TEST_RUNNER_SHELL
- This is just a preparatory refactoring for future changes.
- * configure.ac (AM_TEST_RUNNER_SHELL): New variable, defined
- to $SHELL', and AC_SUBST'd.
- * Makefile.am (LOG_COMPILER): Redefine from $(SHELL) to
- $(AM_TEST_RUNNER_SHELL).
- * defs: Adjust to use $AM_TEST_RUNNER_SHELL instead
- of $CONFIG_SHELL and/or $SHELL, where appropriate. Minor
- opportunistic changes.
- * t/self-check-explicit-skips.sh: Likewise.
- * t/self-check-sanity.sh: Likewise.
- * t/self-check-tap.sh: Likewise.
- * t/self-check-cleanup.tap: Likewise.
- * t/self-check-dir.tap: Likewise.
- * t/self-check-env-sanitize.tap: Likewise.
- * t/self-check-exit.tap: Likewise.
- * t/self-check-me.tap: Likewise.
- * t/self-check-reexec.tap: Likewise.
- 2012-05-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: distribute t/README
- Since commit v1.11-2128-g8e02441 of 2012-04-06, "maint: no more make
- recursion in Automake's build system" we haven't been distributing the
- testsuite README file in our release tarballs. Oops.
- * Makefile.am (EXTRA_DIST): Add 't/README'.
- 2012-05-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- init: warn against obsolete usage of AM_INIT_AUTOMAKE
- Support for the two- and three-arguments invocation forms of the
- AM_INIT_AUTOMAKE macro, as in:
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
- or:
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION, NODEFINE)
- will be removed in the next major Automake release (1.13).
- Such usages have already been deprecated in the documentation
- starting from commit v1.11-2015-ge99690a of 23-02-2012 "docs,
- news: document planned removal of obsolete macros and features".
- We now start giving runtime warnings as well (in the 'obsolete'
- category).
- * NEWS: Update.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Report the two- and three-arguments
- form invocation.
- * automake.in (scan_autoconf_traces): Likewise.
- * doc/automake.texi: Minor adjustments. Add an @anchor to the
- location where it's described how to modernize outdated invocation
- of AM_INIT_AUTOMAKE, so that it can be referenced from automake
- warning/error messages.
- * t/aminit-moreargs-deprecation.sh: New test.
- * tests/list-of-tests.mk: Add it.
- * tests/ac-output-old.tap: Adjust by calling automake with the
- warnings in the 'obsolete' category disabled.
- * t/backcompat.test: Likewise.
- * t/backcompat3.test: Likewise.
- * t/backcompat5.test: Likewise.
- * t/backcompat6.test: Likewise.
- * t/version.test: Likewise.
- * t/version2.test: Likewise.
- * t/pr2.test: Modernize style of AC_INIT and AM_INIT_AUTOMAKE
- invocations, and use proper m4 quoting.
- * t/pr87.test: Likewise.
- * t/confsub.test: Likewise.
- * t/install2.test: Likewise.
- 2012-05-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- m4: prepend m4 builtins with "m4_"
- docs: fix clumsy grammar in the scripts-based testsuite chapter
- 2012-05-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: prepend m4 builtins with "m4_"
- The comments in 'lib/autoconf/autoconf.m4' from Autoconf 2.69 read:
- We discourage the use of the non prefixed macro names: M4sugar maps
- all the builtins into 'm4_'. Autoconf has been converted to these
- names too. But users may still depend upon these, so reestablish
- them.
- Alas, in our init.m4 files, we were still using m4 builtins without
- prefixing them with "m4_". Not nice for a package that is one of the
- major clients of Autoconf, and an integral part of the GNU Autotools!
- Fix the issue.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Use 'm4_define' and 'm4_defn' instead
- of 'define' and 'defn'.
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- require: autoconf >= 2.65; related simplifications
- The new support for Objective C++ (to be added in Automake 1.12.1) can be
- simplified if we assume Autoconf version 2.65 or later (2.65 being the
- version that introduced support for Objective C++). Since such an Autoconf
- version is two and half years old now (and will likely be almost three
- years old when Automake 1.13 gets released), requiring it is acceptable.
- This will also simplify testing and maintenance of Automake, because we'll
- need to test with fewer Autoconf version, and possibly rely on new Autoconf
- features.
- * NEWS (Version requirements): Automake 1.13 will require Autoconf
- 2.65 or later.
- * configure.ac ($required_autoconf_version): Bump to 2.65.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Require Autoconf >= 2.65.
- Assume AC_PROG_OBJCXX is unconditionally defined.
- * m4/depout.m4: Adjust a comment about a nugget of defensive programming.
- * t/ext.sh: Assume that AC_PROG_OBJCXX is unconditionally defined,
- and that we are using Autoconf >= 2.65. Related simplifications.
- * t/objc-megademo.sh: Likewise.
- * t/objcxx-basic.sh: Likewise.
- * t/objcxx-deps.sh: Likewise.
- * t/objcxx-flags.sh: Likewise.
- * t/objcxx-minidemo.sh: Likewise.
- * t/nodep2.sh: Likewise.
- * t/backcompat3.sh: Assume AC_INIT accepts an URL argument.
- * t/depend5.sh: Adjust a comment.
- * syntax-checks.mk (sc_test_names): Delete this check as now useless:
- autoconf >= 2.65 (>= 2.63, actually) can handle arguments to AC_INIT
- that contain or are m4 builtins or predefined macros.
- (m4_builtin): Delete this now-useless variable as well, was used only
- by the check above.
- (syntax_check_rules): Update.
- 2012-05-05 Nick Alcock <nick.alcock@oracle.com> (tiny change)
- docs: fix clumsy grammar in the scripts-based testsuite chapter
- * doc/automake.texi (Scripts-based Testsuites): "We'll have later" is
- a rare example of English in the Automake manual clearly not written
- by a native English-speaker: while comprehensible, it can be better
- formulated.
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: use append mode to capture parallel make output
- parallel-tests: separate different logs with an empty line
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: use append mode to capture parallel make output
- This should fix the spurious failure reported in automake bug#11413.
- This is due to the fact that the redirected output of parallel make
- can racily loose lines. For example, if GNU make (3.82) is run on
- a Makefile like this:
- all = 0 1 2 3 4 5 6 7 8 9
- default: $(all)
- $(all):
- @sleep 0.$$(($RANDOM % 10)); echo $@
- and has its standard output redirected in overwrite-mode to a regular
- file, it looses a line of that output every 15 runs or so on a Fedora
- 17 system with 64 ppc64 cores and Linux 3.3.1. Redirection in append
- mode does not suffer of this problem.
- See also similar commit 'Release-1-10-280-g6426999' of 2009-03-10,
- "Use append mode to capture parallel test output", which tackled a
- similar problem for 't/parallel-tests3.sh' and 't/lisp8.sh'.
- * t/tap-more.sh: Use append mode for output from "make -j", to avoid
- dropped lines.
- * t/parallel-tests3.sh, t/lisp8.sh: Enhance comments.
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'parallel-tests-performance' into maint
- * parallel-tests-performance:
- parallel-tests: separate different logs with an empty line
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: separate different logs with an empty line
- After commit v1.12-21-g5eeb366 "parallel-tests: optimize global log
- creation", the log files copied in the global log are not anymore
- separated by a blank line, causing unclear output like this:
- FAIL: test1
- ===========
- output from test 1
- FAIL: test2
- ===========
- output from test 2
- where we would want something like this:
- FAIL: test1
- ===========
- output from test 1
- FAIL: test2
- ===========
- output from test 2
- Fix this regression.
- * lib/am/check.am (am__create_global_log): Print an extra empty line
- after having displayed the content of a '.log' file.
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maintcheck: avoid a couple of spurious failures
- maintcheck: reduce code duplication, increase coverage
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid a couple of spurious failures
- * t/objcxx-deps.sh, t/objcxx-minidemo.sh: In C++ files, use
- "std::cout <<", not "cout <<", to avoid triggering a spurious
- failure by the syntax check 'sc_tests_here_document_format'.
- Cherry-picked from yesterday's commit v1.12-81-g7f3f467, that
- had erroneously been applied to 'master' only rather than to
- 'maint'.
- 2012-05-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: reduce code duplication, increase coverage
- * syntax-checks.mk: Move ...
- (sc_tests_plain_aclocal,
- sc_tests_plain_autoconf,
- sc_tests_plain_perl,
- sc_tests_plain_autoupdate,
- sc_tests_plain_automake,
- sc_tests_plain_make,
- sc_tests_plain_autoheader,
- sc_tests_plain_autoreconf,
- sc_tests_plain_autom4te): ... all these targets ...
- (sc_tests_plain_egrep_fgrep): ... and part of this target ...
- (sc_tests_plain_check_rules): ... into this variable, and
- reimplement their recipes ...
- ($(sc_tests_plain_check_rules)): ... with this static pattern
- rule. Enhance the coverage they offer a little since we are
- at it.
- (sc_m4_am_plain_egrep_fgrep): New rule, the part of the old
- 'sc_tests_plain_egrep_fgrep' rule that checked for use of
- 'fgrep' and 'egrep' in *.am and *.m4 fragments (rather than
- in test scripts).
- (syntax_check_rules): Update.
- * t/dist-formats.tap: Fix bad use of "make" instead of "$MAKE"
- revealed by the extra coverage.
- * t/cond5.sh, t/auxdir-autodetect.sh: Cosmetic changes to avoid
- spuriously triggering the maintainer checks due to the
- enhanced coverage.
- 2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid a couple of spurious failures
- * t/objcxx-deps.sh, t/objcxx-minidemo.sh: In C++ files, use
- "std::cout <<", not "cout <<", to avoid triggering a spurious
- failure by the syntax check 'sc_tests_here_document_format'.
- 2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: avoid spurious failure on missing Obj C/C++ compiler
- objc, objc++: test support for compilation flags
- objc, objc++: add stress test
- objc, objc++: test automatic dependency tracking
- objc: reorganize basic tests
- objc++, objc: add first semantic tests
- objc++: add first basic test
- news: announce initial support for Objective C++
- objc++: test support for '.mm' suffix in _SOURCES entries
- objc++: add documentation
- objc++: initial support for Objective C++
- 2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'objc++' into maint
- * objc++:
- tests: avoid spurious failure on missing Obj C/C++ compiler
- 2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure on missing Obj C/C++ compiler
- * t/objc-megademo.sh: Arrange the test to SKIP, not FAIL, if there is
- no Objective C or no Objective C++ compiler. Since we are at it, remove
- some checks that were actually testing Autoconf (not Automake) behaviour.
- 2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'objc++' into maint
- * objc++:
- objc, objc++: test support for compilation flags
- objc, objc++: add stress test
- objc, objc++: test automatic dependency tracking
- objc: reorganize basic tests
- objc++, objc: add first semantic tests
- objc++: add first basic test
- news: announce initial support for Objective C++
- objc++: test support for '.mm' suffix in _SOURCES entries
- objc++: add documentation
- objc++: initial support for Objective C++
- 2012-05-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: don't bother putting README first in $(DIST_COMMON)
- Comments on some of our automake-time pre-processing of $(DIST_COMMON)
- said that it was done in order to "put README first because it then
- becomes easier to make a Usenet-compliant shar file". But such a
- format is hardly relevant anymore, and not worth the (albeit small)
- added complexity.
- * automake.in (handle_dist): Don't sort @dist_common.
- (for_dist_common): Delete this function, is not used anymore.
- * lib/am/distdir.am (DISTFILES): Remove obsolete comment.
- * t/distcom4.sh: Adjust.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'always-support-silent-rules'
- * always-support-silent-rules:
- silent rules: support for them is always active now
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: document improvement in parallel-tests performance
- tests: fix spurious failure due to autom4te caching
- news: fix typos
- aclocal: error out again on unrecognized arguments
- parallel-tests: save few forks when possible
- parallel-tests: optimize global log creation
- parallel-tests: optimize 'recheck' target for speed
- coverage: add performance tests on some parallel-tests aspects
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document improvement in parallel-tests performance
- * NEWS: Document the improved performances of the parallel-tests targets
- 'check' and 'recheck'. See recent commits:
- - v1.12-20-gf5733aa of 2012-04-26,
- "parallel-tests: optimize 'recheck' target for speed"
- - v1.12-21-g5eeb366 of 2012-02-26,
- "parallel-tests: optimize global log creation"
- - v1.12-22-g4c2dd6e of 2012-04-30,
- "parallel-tests: save few forks when possible"
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to autom4te caching
- Reported by Peter Breitenlohner :
- <http://lists.gnu.org/archive/html/automake-patches/2012-05/msg00045.html>
- * t/suffix.sh: Remove stale autom4te.cache directories, to prevent racy,
- spurious failures (using 'aclocal --force' was not enough, since the cache
- was still picked up by the following automake call).
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Peter Breitenlohner <peb@mppmu.mpg.de>
- objc, objc++: test support for compilation flags
- * t/objc-flags.sh, t/objcxx-flags.sh: New tests.
- * t/list-of-tests.mk: Add them.
- 2012-05-02 Peter Breitenlohner <peb@mppmu.mpg.de>
- objc, objc++: add stress test
- * t/objc-megademo.sh: New test, trying out a package using all
- of C, C++, Objective C and Objective C++ at the same time.
- * t/list-of-tests.mk: Add it.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- objc, objc++: test automatic dependency tracking
- * t/objc-deps.sh, t/objcxx-deps.sh: New tests.
- * t/list-of-tests.mk: Add them.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- objc: reorganize basic tests
- * t/objc.sh, t/objc2.sh: Removed, merged into ...
- * t/objc-basic.sh: ... this new test.
- * t/objcxx-basic.sh: Add reference to new sister test.
- * t/list-of-tests.mk: Update.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Peter Breitenlohner <peb@mppmu.mpg.de>
- objc++, objc: add first semantic tests
- * t/objcxx-minidemo.sh: New test.
- * t/objc-minidemo.sh: Likewise.
- * t/list-of-tests.mk: Add them.
- 2012-05-02 Peter Breitenlohner <peb@mppmu.mpg.de>
- objc++: add first basic test
- * t/objcxx-basic.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'parallel-tests-performance' into maint
- * parallel-tests-performance:
- parallel-tests: save few forks when possible
- parallel-tests: optimize global log creation
- parallel-tests: optimize 'recheck' target for speed
- coverage: add performance tests on some parallel-tests aspects
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix typos
- * NEWS (Bugs fixed in 1.12.1): Fix botched indentation of an entry,
- add a forgotten "and", remove a redundant "the".
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: error out again on unrecognized arguments
- Starting from commit v1.11-662-g52246cc of 2102-02-18, "cmdline parsing:
- move into a dedicated perl module", aclocal has been silently ignoring
- non-option arguments instead of correctly reporting them.
- Fix this regression.
- * t/aclocal.sh: Update to catch the regression.
- * aclocal.in (parse_arguments): Explicitly reject non-option arguments.
- * NEWS: Update.
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'cygnus-remove'
- * cygnus-remove:
- cygnus: remove support for Cygnus-style trees
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cosmetics: fix typo in aclocal m4 directory README
- cygnus: warn when it's used (flagged as 'obsolete' now)
- 2012-05-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'cygnus-deprecate' into maint
- * cygnus-deprecate:
- cygnus: warn when it's used (flagged as 'obsolete' now)
- 2012-05-01 Andrew Eikum <aeikum@codeweavers.com> (tiny change)
- cosmetics: fix typo in aclocal m4 directory README
- * m4/acdir/README: Add forgotten "if".
- * THANKS: Update.
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- silent rules: support for them is always active now
- Before this change, support for silent rules was optional and activated
- only if the 'silent-rules' option was specified.
- The rationale behind that behaviour was that the silent-rules machinery
- originally only worked with make implementations supporting nested
- variables expansions, which isn't (or wasn't) a POSIX-specified features;
- so that packages wanting to be "extra-portable" couldn't use the
- silent-rules machinery at all.
- But after Paul Eggert's commit 'v1.11-598-g8493499' of 25-12-2011,
- "silent-rules: fallback for makes without nested vars" (motivated
- by automake bugs #9928 and #10237), Makefiles generated when the
- 'silent-rules' option is enabled can work also with those make
- implementations that don't support nested variables expansion (albeit
- the configure-time selected verbosity cannot be overridden at make
- runtime in such case).
- In light of that, and since silent rules are disabled by default even
- when the 'silent-rules' option is given (unless the developer explicitly
- makes them enabled by default be calling "AM_SILENT_RULES([yes])" in
- configure.ac), we can now have the support for silent rules always
- enabled.
- The 'silent-rules' option will thus become a no-op, but will reaming a
- valid option for the time being, for better backward-compatibility.
- A collateral effect of this change is that the use of the 'silent-rules'
- option will not anymore automatically disable the warnings in the
- 'portability-recursive' category.
- The present change is basically a backport of the Automake-NG commit
- 'v1.11d-75-g61ca923' of 19-04-2012, "[ng] silent rules: support for
- them is always active now". Stemmed by this thread on the Automake-NG
- list:
- <http://lists.gnu.org/archive/html/automake-ng/2012-04/msg00027.html>
- * automake.in: Enable silent-rules machinery unconditionally. Reword
- some comments. Do not switch off warnings in the category
- 'portability-recursive' anymore if the 'silent-rules' option is
- given.
- * m4/init.m4: Call 'AC_REQUIRE' on 'AM_SILENT_RULES' unconditionally.
- * lib/Automake/Options.pm: Recognize 'silent-rules' as a dummy option.
- Do not bother anymore checking that it is set in 'configure.ac'.
- * t/silent.sh: Remove now-redundant calls to AM_SILENT_RULES.
- * t/silent2.sh: Likewise.
- * t/silent3.sh: Likewise.
- * t/silent4.sh: Likewise.
- * t/silent8.sh: Likewise.
- * t/silent9.sh: Likewise.
- * t/silent-lex.sh: Likewise.
- * t/silent-many-gcc.sh: Likewise.
- * t/silent-many-generic.sh: Likewise.
- * t/silent-yacc-headers.sh: Likewise.
- * t/silent-yacc.sh: Likewise.
- * t/silentcxx-gcc.sh: Likewise.
- * t/silentcxx.sh: Likewise.
- * t/silentf77.sh: Likewise.
- * t/silentf90.sh: Likewise.
- * t/help-silent.sh: Likewise.
- * t/silent-configsite.sh: Likewise, and other minor adjustments.
- * t/silent7.sh: Likewise. Also, extend to check that silent rules
- are disabled by default, and remove obsoleted checks about the
- 'silent-rules' option being rejected in 'AUTOMAKE_OPTIONS'.
- * t/silent6.sh: Remove now-redundant calls to 'AM_SILENT_RULES'.
- Call automake with '-Wno-portability-recursive'. Remove other
- obsoleted checks.
- * t/dollarvar.sh: Don't expect the use of 'AM_SILENT_RULES' in
- 'configure.ac' to disable warning in the 'portability-recursive'
- category anymore.
- * t/compile_f_c_cxx.sh: Adjust to avoid a spurious failure.
- * t/silent-amopts.sh: Remove as obsolete.
- * t/silent-nowarn.sh: Likewise.
- * t/list-of-tests.mk: Adjust.
- * NEWS: Update.
- * doc/automake.texi: Update and simplify accordingly.
- * configure.ac (AM_INIT_AUTOMAKE): Remove 'silent-rules' option.
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: botched edit in bootstrap.sh
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: botched edit in bootstrap.sh
- * bootstrap.sh (dosubst): Fix botched option ("G" instead of "g")
- in a sed "s///" expression. Issue introduced in today's commit
- 'v1.12-17-g5f810d0'.
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: fix confusing wording
- news: fixed weaknesses in build system and testsuite
- bootstrap: consistently use correct copyright year
- fixup: remove leftover "TERM=ansi" definition in 't/color.sh'
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix confusing wording
- Reported by Dave Hart.
- * NEWS (Future backward-incompatibilities): Fix possibly confusing
- wording about the upcoming requirement of Autoconf >= 2.65.
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fixed weaknesses in build system and testsuite
- * NEWS (Bugs fixed in 1.12.1): Report that several weaknesses in the
- Automake's own build system and test suite have been fixed. See for
- example recent commits:
- - commit v1.12-5-geb7e8f3, for bug#11345
- - commit v1.12-5-g63e07a9, for bug#11346
- - commit v1.12-5-gf31fe4f
- - commit v1.12-10-gab14841
- - commit v1.12-19-g807f3cf, for bug#11369
- - commit v1.12-20-gd330368, for bug#11369
- - bug#11387, pre-emptively solved by commit v1.12-4-g444618b
- 2012-05-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- bootstrap: consistently use correct copyright year
- Suggested by Peter Johansson in the discussion about automake bug#11356:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11356#41>
- * boostrap.sh (dosubst): Don't initialize the substituted value for the
- release year from the current year (using `date +%Y`); instead, do it
- through ...
- ($RELEASE_YEAR): ... this new statically-defined variable. To ensure it
- won't get out-of-sync, it will be automatically updated ...
- * Makefile.am (update-copyright): ... by this target's recipe.
- Since are at it, fix a botched output redirection for an error message,
- i.e., use ">&2" instead of ">&1".
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: remove leftover "TERM=ansi" definition in 't/color.sh'
- It should have actually be removed in commit 'v1.12-23-gb105d40'.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: save few forks when possible
- * lib/am/check.am (am__check_pre): Save some forks, by analyzing more
- carefully the value of '$@' to decide how to extract its dirname part,
- and whether that should be created as a directory.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: Automake 1.13 will require Autoconf >= 2.65
- news: put planned future backward-incompatibilities on top
- readme: update INSTALL to latest version from Autoconf
- sync: some auxiliary files synced from upstream
- hacking: copyright notices must be updated before releasing
- color-tests: coloring can be forced on non-ANSI terminals as well
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: Automake 1.13 will require Autoconf >= 2.65
- Autoconf 2.65 is almost three years old now, so requiring it is
- acceptable. Also, the soon-to-appear support for Objective C++
- in Automake will be simplified if we can assume that Autoconf
- version (which is the one that introduced support for Objective
- C++).
- * NEWS (Planned future backward-incompatibilities): Automake 1.13
- will require Autoconf 2.65 or later.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: put planned future backward-incompatibilities on top
- * NEWS (New in 1.12): List of planned future backward-incompatibilities
- moved from here ...
- (New in 1.12.1): ... to here.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: update INSTALL to latest version from Autoconf
- * INSTALL: Updated to the version coming with Autoconf 2.69. This
- is warranted now that we use and require that same Autoconf version
- in our build system.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: some auxiliary files synced from upstream
- * lib/config.sub: Synced from upstream, by "make fetch".
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: copyright notices must be updated before releasing
- * HACKING (Release procedure): Suggest to use "make update-copyright".
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- color-tests: coloring can be forced on non-ANSI terminals as well
- Before this change, colorization of testsuite output was suppressed
- whenever the terminal was recognized to be a "dumb" one, incapable
- of handling ANSI coloring (i.e., when the environment variable TERM
- had a value of "dumb"). This happened even when the AM_COLOR_TESTS
- variable was set to a value of "always".
- Such a behaviour was suboptimal and slightly confusing; in fact, if
- a user wants to force coloring of testsuite output that is being
- redirected to a regular file, he should be able to do so even if his
- terminal is not capable of handling ANSI colors -- in fact, such
- terminal wouldn't be involved with the testsuite output in any way,
- so why should it be allowed to influence it?
- Thus, we now enable coloring of test output whenever AM_COLOR_TESTS
- is set to "always", irrespective of the value of the TERM environment
- variable.
- * NEWS: Update.
- * lib/am/check.am [%?COLOR%] (am__tty_colors): Activate colorization
- of testsuite output whenever AM_COLOR_TESTS has the value of "always".
- * t/ax/tap-summary-aux.sh: Export the TERM environment variable to
- "dumb" when forcing colorization of the testsuite output; this should
- *not* prevent such colorization from taking place, and we want to
- check that this expectation really holds.
- * t/ax/testsuite-summary-checks.sh: Likewise.
- * t/color.sh: Likewise, and adjust some grepping checks.
- * t/tap-color.sh: Likewise. Also, remove redundant "make check"
- invocation since we are at it.
- * t/color2.sh: Likewise, and check that exporting TERM=dumb actually
- prevents testsuite output colorization when AM_COLOR_TESTS is unset.
- * t/parallel-tests-reset-term.sh: Relax, to prevent it from failing
- spuriously due to the new semantic.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- cygnus: remove support for Cygnus-style trees
- Support for "Cygnus-style" tree as enabled by the 'cygnus' option
- has been deprecated in the documentation and with runtime warning
- since Automake 1.12.1. It's now time to remove it.
- Closes automake bug#11034.
- * lib/Automake/Options.pm (_process_option_list): Issue a proper
- error when the 'cygnus' option is seen.
- * automake.in: Don't handle the 'cygnus' option anymore.
- * docs/automake.texi: Remove references to cygnus option and
- Cygnus-style trees.
- * lib/am/dejagnu.am, lib/am/texinfos.am: Drop special setups for
- cygnus mode.
- * NEWS: Update.
- * t/cygnus-no-more.sh: New test.
- * t/flavor.sh: Adjust.
- * t/cygnus-deprecation.sh: Remove.
- * t/cygnus-check-without-all.sh: Likewise.
- * t/cygnus-requires-maintainer-mode.sh: Likewise.
- * t/cygnus-dependency-tracking.sh: Likewise.
- * t/cygnus-imply-foreign.sh: Likewise.
- * t/cygnus-no-installinfo.sh: Likewise.
- * t/cygnus-no-dist.sh: Likewise.
- * t/clean2.sh: Likewise.
- * t/txinfo5.sh: Likewise.
- * t/txinfo5b.sh: Likewise.
- * t/list-of-tests.mk: Update.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- cygnus: warn when it's used (flagged as 'obsolete' now)
- Support for "Cygnus-style" tree as enabled by the 'cygnus'
- option is now reported as obsolete when the warnings in the
- 'obsolete' category are enabled.
- See automake bug#11034.
- * automake.in (check_cygnus): Report the use of 'cygnus' mode as
- obsolete.
- * NEWS: Update.
- * docs/automake.texi: Minor adjustments.
- * t/cygnus-deprecation.sh: New test.
- * t/list-of-tests.mk: Add it.
- * tests/cygnus-check-without-all.sh: Adjust by calling automake
- with the warnings in the 'obsolete' category disabled.
- * t/cygnus-requires-maintainer-mode.sh: Likewise.
- * t/cygnus-dependency-tracking.sh: Likewise.
- * t/cygnus-imply-foreign.sh: Likewise.
- * t/cygnus-no-installinfo.sh: Likewise.
- * t/cygnus-no-dist.sh: Likewise.
- * t/clean2.sh: Likewise.
- * t/flavor.sh: Likewise.
- * t/txinfo5.sh: Likewise.
- * t/txinfo5b.sh: Likewise.
- * t/library.sh: Remove use of 'cygnus' and 'dejagnu' options,
- and of AM_MAINTAINER_MODE macro.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: optimize global log creation
- With this change, the time required to execute the test case
- 'testsuite-summary-speed.sh' has dropped as follows:
- + Slow Debian i686 system, 1 core x 1.5 GHz, 768 MB of RAM,
- GNU make 3.81:
- - 1 run: 4 minutes => 30/40 seconds
- + Fast Solaris 10 i686 system, 4 cores x 3 GHz, 20 GB of RAM,
- Solaris CCS make:
- - 2 runs: 6 minutes => 30 seconds
- + Very fast Fedora ppc64 system, 64 cores x 3.5 GHz, 64 GB of RAM,
- GNU make 3.82:
- - 5 runs: 7 minutes => 1 minute and 10 seconds
- * lib/am/check.am ($(TEST_SUITE_LOG)): Optimize for speed, by avoiding
- lots of forks with the help of ...
- (am__create_global_log): ... this new internal variable, basically
- defining a smart awk program, and ...
- (am__global_test_result_rx, am__copy_in_global_log_rx): ... these new
- internal variables, used by the one above.
- (am__rst_section): Remove as obsolete
- * t/rst-formatting.trs: Remove.
- * t/list-of-tests.mk: Update.
- * t/testsuite-summary-count-many.sh: Improve its stress testing by
- using 1 million tests rather than just 5 thousands: we can afford
- this with our new optimization, and still have the test completed
- in a reasonable time.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: optimize 'recheck' target for speed
- With this change, the time required to execute the test case
- 'testsuite-recheck-speed.sh' has dropped as follows:
- + Slow Debian i686 system, 1 core x 1.5 GHz, 768 MB of RAM,
- GNU make 3.81:
- - 1 run: 6 minutes => 40 seconds
- + Fast Solaris 10 i686 system, 4 cores x 3 GHz, 20 GB of RAM,
- Solaris CCS make:
- - 4 runs: 3 minutes => 1 minute
- + Very fast Fedora ppc64 system, 64 cores x 3.5 GHz, 64 GB of RAM,
- GNU make 3.82:
- - 5 runs: 4 minutes => 1 minute 30 seconds
- * lib/am/check.am (recheck): Optimize for speed, by avoiding lots of
- forks with the help of ...
- (am__list_recheck_tests): ... this new internal variable, basically
- defining a proper awk program, and ...
- (am__recheck_rx): ... this other new internal variable, used by the
- one above.
- * t/test-trs-recover2.sh: Relax by not checking for a very corner
- case ('.log' and '.trs' files both unreadable) that we don't handle
- anymore.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: announce initial support for Objective C++
- 2012-04-30 Peter Breitenlohner <peb@mppmu.mpg.de>
- Stefano Lattarini <stefano.lattarini@gmail.com>
- objc++: test support for '.mm' suffix in _SOURCES entries
- * t/ext.sh: Enhance by adding a file with the '.mm' suffix in
- the 'foo_SOURCES' definition.
- * t/nodep2.sh: Likewise.
- 2012-04-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: add performance tests on some parallel-tests aspects
- * t/testsuite-recheck-speed.sh: New test.
- * t/testsuite-summary-speed.sh: Likewise.
- * t/list-of-tests.mk: Update.
- The new tests are not meant to PASS/FAIL, but rather to help us to
- obtain quantitative measurements of the performance improvements
- offered by soon-to-appear optimization patches.
- Timing before the optimizations implemented by following patches:
- + Slow Debian i686 system, 1 core x 1.5 GHz, 768 MB of RAM,
- GNU make 3.81:
- - testsuite-recheck-speed.sh: 1 run, ~ 6 minutes
- - testsuite-summary-speed.sh: 1 run, ~ 4 minutes
- + Fast Solaris 10 i686 system, 4 cores x 3 GHz, 20 GB of RAM,
- Solaris CCS make:
- - testsuite-recheck-speed.sh: 4 runs, ~ 3 minutes
- - testsuite-summary-speed.sh: 2 runs, ~ 6 minutes
- + Very fast Fedora ppc64 system, 64 cores x 3.5 GHz, 64 GB of RAM,
- GNU make 3.82:
- - testsuite-recheck-speed.sh: 5 runs, ~ 4 minutes
- - testsuite-summary-speed.sh: 5 runs, ~ 7 minutes
- 2012-04-30 Peter Breitenlohner <peb@mppmu.mpg.de>
- objc++: add documentation
- * doc/automake.texi (Objective C++ Support): New node.
- (How the Linker is Chosen, Support for Other Languages): Adjust.
- 2012-04-30 Peter Breitenlohner <peb@mppmu.mpg.de>
- objc++: initial support for Objective C++
- Original thread (dating back to almost three years ago):
- <http://lists.gnu.org/archive/html/automake-patches/2009-07/msg00016.html>
- * automake.in: Register new language 'objcxx'.
- (lang_objcxx_rewrite): New subroutine.
- (resolve_linker): Add OBJCXXLINK.
- (%_am_macro_for_cond): Add am__fastdepOBJCXX and AC_PROG_OBJCXX.
- (%_ac_macro_for_var): Add OBJCXX and OBJCXXFLAGS.
- * m4/depend.m4 (_AM_DEPENDENCIES): Add OBJCXX.
- * m4/init.m4 (AM_INIT_AUTOMAKE): Add AC_PROG_OBJCXX hook.
- 2012-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'mkdirp-remove' into master
- * mkdirp-remove:
- AM_PROG_MKDIR_P: remove as obsolete
- 2012-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- AM_PROG_MKDIR_P: deprecate, to be removed in Automake 1.13
- 2012-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'mkdirp-deprecate' into maint
- * mkdirp-deprecate:
- AM_PROG_MKDIR_P: deprecate, to be removed in Automake 1.13
- 2012-04-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: root can write on files without write perms; cater for this
- tests: require lex, not yacc, in a lex test case
- maint: fix a comment typo
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: root can write on files without write perms; cater for this
- Fixes last part of automake bug#11369.
- * t/dist-readonly.sh ($required): Add 'non-root'.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: require lex, not yacc, in a lex test case
- See automake bug#11369.
- * t/lex-clean.sh ($required): Require 'lex', not 'yacc'.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- AM_PROG_MKDIR_P: remove as obsolete
- Support for the obsolescent 'AM_PROG_MKDIR_P' m4 macro (and its
- output variable '$(mkdir_p)') has in the documentation and with
- runtime warning since Automake 1.12.1. It's now time to remove it.
- * automake.in (scan_autoconf_traces): Remove special handling of
- 'AM_PROG_MKDIR_P'.
- * m4/mkdirp.m4: Delete.
- * Makefile.am (dist_automake_ac_DATA): Remove it.
- * t/mkdirp-deprecation.sh: Delete.
- * t/list-of-tests.mk: Remove it.
- * doc/automake.texi: Remove references to the 'AM_MKDIR_P' m4 macro
- and the '$(mkdir_p)' output variable.
- * t/gettext-macros.sh: Ensure the gettext-requiring tests will
- still see the now-removed 'AM_PROG_MKDIR_P' macro as an alias for
- the 'AC_PROG_MKDIR_P' macro, since even recent versions of gettext
- uses 'AM_PROG_MKDIR_P' in their '.m4' files.
- * NEWS: Update.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- AM_PROG_MKDIR_P: deprecate, to be removed in Automake 1.13
- Support for the obsolescent 'AM_PROG_MKDIR_P' macro (and its
- output variable '$(mkdir_p)') has already been deprecated in
- the documentation. It's now time to make its use actively
- emit warnings in the 'obsolete' category as well.
- * automake.in (scan_autoconf_traces): Warn about 'AM_PROG_MKDIR_P'
- obsolescent if that macro is seen.
- * m4/mkdirp.m4 (AM_PROG_MKDIR_P): Warn about its own obsolescence.
- * m4/init.m4: Require 'AC_PROG_MKDIR_P', not 'AM_PROG_MKDIR_P'.
- * t/mkdirp-deprecation.sh: New test.
- * t/list-of-tests.mk: Add it.
- * syntax-check.mk (sc_mkdir_p): Delete this check as obsolete.
- (syntax_check_rules): Remove it.
- * t/gettext-macros.sh: Ensure the gettext-requiring tests will
- call aclocal and automake with the 'obsolete' warnings disabled,
- since even recent versions of gettext used the now-deprecated
- 'AM_PROG_MKDIR_P' m4 macro.
- * NEWS: Update.
- 2012-04-28 Jim Meyering <meyering@redhat.com>
- maint: fix a comment typo
- * configure.ac: Fix typo in comment: s/out/our/
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'remove-acdir-option' and 'remove-obsolete-m4'
- * remove-acdir-option:
- aclocal: remove the --acdir option
- * remove-obsolete-m4:
- m4: delete several obsolete macros
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: avoid unconditional re-bootstrapping on "make dist"
- build: ensure release year in copyright notice is up-to-date
- cosmetics: fix spacing in THANKS
- readme: explicitly state we use ranges in copyright years
- bootstrap: add convenience make target
- automake, aclocal: update copyright year in output
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: avoid unconditional re-bootstrapping on "make dist"
- Since our 'bootstrap' script is distributed, the 'distdir' target depends
- on it. But in our GNUmakefile, we also have a 'bootstrap' target declared
- .PHONY, which when called re-bootstrap the Automake distribution. Thus,
- whenever we run "make dist", GNU make sees it must remake the 'bootstrap'
- target (as it is a dependency of the 'distdir' target), and thus ends up
- re-bootstrapping all the package (because of the .PHONY 'bootstrap' target
- in GNUmakefile).
- We fix this issue by renaming our bootstrap script to 'bootstrap.sh'.
- * bootstrap: Renamed ...
- * bootstrap.sh: ... to this.
- * GNUmakefile (bootstrap): Adjust.
- * Makefile.am (EXTRA_DIST): Likewise.
- (autodiffs): Likewise.
- * HACKING: Likewise.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: ensure release year in copyright notice is up-to-date
- From a suggestion by Eric Blake. See automake bug#11356.
- This is a follow-up to previous patch 'v1.12-12-gb99b5be'.
- * configure.ac (RELEASE_YEAR): New AC_SUBST'd variable, should hold
- the value of the current year.
- * Makefile.am (update-copyright): Be sure to also update the
- definition of 'RELEASE_YEAR' in configure.ac.
- * lib/Automake/Config.in ($RELEASE_YEAR): New exported variable,
- initialized from the value substituted for '@RELEASE_YEAR@'.
- (@EXPORT): Add it.
- * automake.in, aclocal.in: Use '$RELEASE_YEAR' (which will be
- substituted at make time) instead of hard-coding the release
- year. This should ensure the copyright range in the version
- message and in the generated files (Makefile.in and aclocal.m4)
- are automatically kept up-to-date.
- * bootstrap (dosubst): Update, also substitute '@RELEASE_YEAR@'.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix spacing in THANKS
- * THANKS: Use spaces, not tabs, to separate a reporter's name from
- his e-mail address. Also, increase such spacing, to allow a more
- consistent formatting with longer names.
- 2012-04-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: explicitly state we use ranges in copyright years
- Reported by Jack Kelly in automake bug#11356.
- * README: Explicitly state we use ranges in copyright years; this is
- mandated by the GNU Coding Standards for each package that wants to
- actually use ranges in copyright years.
- 2012-04-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: remove the --acdir option
- It not documented in the manual anymore, its use has already been
- causing a deprecation warning, and its oncoming removal has already
- been announced in the NEWS file. So let's finally remove it.
- * aclocal.in (parse_arguments): Don't recognize the '--acdir' option
- anymore.
- (handle_acdir_option): Remove subroutine.
- * configure.ac ($ACLOCAL): Adjust.
- ($AUTOMAKE): Cosmetic changes, for consistency.
- * tests/aclocal-acdir.test: Remove usages of the '--acdir' option.
- * tests/aclocal-print-acdir.test: Likewise.
- * NEWS: Update.
- 2012-04-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- bootstrap: add convenience make target
- Dependencies in the Automake build system are not completely specified
- (see for example the commit log of recent commit 'v1.12-10-gab14841',
- "build: avoid too greedy rebuilds in the testsuite"). In fact, some of
- them cannot even be; for example, Makefile is generated at configure
- time from Makefile.in, which should be regenerated by our bleeding-edge
- automake script, which is generated by out Makefile -- specifying the
- complete chain of dependencies here would bring to a circular dependency
- issue.
- For this reason, before testing or deploying a change, we are often
- forced to perform a full re-bootstrap of the Automake package, to ensure
- all our files are actually up-to-date. Until now, this has to be done
- manually, thus causing wasted keystrokes and more possibilities of error.
- With this change, we introduce a new 'bootstrap' make target to
- automatize all the (easy) steps of this re-bootstrapping (plus some
- minor bells & whistles since we are at it).
- * GNUmakefile: Rewrite to allow an easy bootstrapping and clean rebuild
- of the whole package, in particular with the help of ...
- (bootstrap): ... this new target.
- 2012-04-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: delete several obsolete macros
- Support for several obsolescent macros has already been deprecated,
- and their removal already announced in the documentation and in the
- NEWS file. It's now time to finally remove them.
- * m4/dmalloc.m4 (fp_WITH_DMALLOC): Don't define anymore.
- * m4/maintainer.m4 (jm_MAINTAINER_MODE): Likewise.
- * m4/lispdir.m4 (ud_PATH_LISPDIR): Likewise.
- * m4/protos.m4 (fp_C_PROTOTYPES): Likewise.
- * m4/ccstdc.m4: Delete file.
- * m4/header.m4: Likewise.
- * m4/obsol-gt.m4: Likewise.
- * m4/obsol-lt.m4: Likewise.
- * m4/obsolete.m4: Likewise.
- * Makefile.am (dist_automake_ac_DATA): Don't list the deleted '.m4'
- files anymore.
- * t/confh.sh: Use 'AC_CONFIG_HEADERS' instead of the now-removed
- AM_CONFIG_HEADER.
- * t/confh.sh: Likewise.
- * t/confh4.sh: Likewise.
- * t/confh6.sh: Likewise.
- * t/confh7.sh: Likewise.
- * t/confh8.sh: Likewise.
- * t/confsub.sh: Likewise.
- * t/stamph2.sh: Likewise.
- * t/subdir6.sh: Likewise.
- * t/autohdr2.sh: Remove as obsolete.
- * t/obsolete.sh: Likewise.
- * t/list-of-tests.mk. Don't list the deleted test cases anymore.
- * NEWS: Update.
- * doc/automake.texi: Likewise. In particular ...
- (Obsolete Macros): Remove this node altogether.
- 2012-04-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake, aclocal: update copyright year in output
- Fixes automake bug#11356.
- * aclocal.in, automake.in: Add copyright year '2012' in the version
- message. Ditto for the copyright notice in the generated Makefile.in
- or aclocal.m4 files; and for those, since we are at it, prefer using
- a range for copyright years, rather than listing each copyright year
- individually.
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maint: don't use "union" merge driver for NEWS anymore
- build: avoid too greedy rebuilds in the testsuite
- tests: avoid yet another spurious environment influence
- tests: fix a failure in Lex/C++ tests on Mac OS X
- tests: fix a spurious failure due to truncated timestamps
- build: require autoconf 2.69
- build: don't require minimal automake version in AM_INIT_AUTOMAKE
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: don't use "union" merge driver for NEWS anymore
- The use of the "union" merge driver to avoid conflicts in NEWS has
- proven to be problematic, as it often silently produced mis-merges
- (instead of spurious conflicts, but a spurious conflict is better
- than a mis-merge). Also, our new branching policy (see automake
- bug#11153 for a description) should greatly mitigate the problem of
- merge conflicts in NEWS. For further discussion, see:
- <http://lists.gnu.org/archive/html/automake-patches/2012-04/msg00148.html>
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: avoid too greedy rebuilds in the testsuite
- The autogenerated makefile fragment 't/testsuite-part.am' used to depend
- on the list of *all* the hand-written files. This was technically correct,
- since that makefile fragment was (and still is) generated by the script
- 'gen-testsuite-part', which scans all the hand-written files to detect
- implicit dependencies and to decide for which tests a further wrapper test
- should be generated.
- However, the presence of such a dependency implied that, whenever *any*
- test case was modified (no matter how slightly), the 't/testsuite-part.am'
- file was rebuilt, and since that is included by our 'Makefile.am', the
- 'Makefile.in' file was rebuilt as well by automake. In order to do so,
- automake scanned our 'configure.ac' file, which requires the latest
- Autoconf version (2.69 at the time of writing), and the casual user can
- easily lack that on his machine (and that should be allowed, as automake
- currently supports any autoconf version >= 2.62).
- The described situation could hinder in-field testing or debugging by
- users (even experienced ones) that are not automake developers; see for
- example automake bug#11347.
- So we drop the explicit dependency of 't/testsuite-part.am' on the
- hand-written test cases. (As an aside, note that this has already
- been done in Automake-NG, albeit for other reasons; see the commit
- 'v1.11b-129-g1690aca' of 2012-04-23, "[ng] build: define $(TESTS)
- through a wildcard").
- This is not a serious regression in the faithfulness of the Automake
- build systems, since it unfortunately already had several undeclared
- dependencies; e.g., 'Makefile.in' should depend on the automake script,
- and 'aclocal.m4' should depend on the aclocal script (but this isn't
- possible, as it would mean that distributed files depend on ones generated
- at make time). Similarly, 'Makefile.in' should depend on some of the
- 'lib/am/*.am' files, but does not.
- Currently, the workaround to get a faithful and correct rebuild is to run
- ./bootstrap && ./config.status --recheck && make clean all
- and the present commit does not change that.
- * Makefile.am ($(srcdir)/t/testsuite-part.am): Don't depend on
- 't/list-of-tests.mk' nor on '$(handwritten_TESTS)' anymore.
- ($(generated_TESTS)): Likewise, and don't depend on 'Makefile.am'
- either.
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11345-lex' into maint
- * fix-pr11345-lex:
- tests: fix a failure in Lex/C++ tests on Mac OS X
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11346-timestamp' into maint
- * fix-pr11346-timestamp:
- tests: fix a spurious failure due to truncated timestamps
- 2012-04-26 Thien-Thi Nguyen <ttn@gnuvola.org> (tiny change)
- tests: avoid yet another spurious environment influence
- * t/remake11.sh: Unset 'd' before first use.
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a failure in Lex/C++ tests on Mac OS X
- The <cstdio> header from Xcode-4.3.2 on Mac OS X 10.7.3 declares a 'isatty'
- function with C++ linkage, that conflicts with our dummy definition of the
- same function, which in turn is required to work around the absence of the
- unistd.h header on MinGW (see commit 'v1.11-2138-gfeea090' of 11-04-2012).
- So we tweak the affected tests to work around this new problem as well.
- This fixes automake bug#11345.
- * t/lex-clean-cxx.sh ($required): Since we are at it, add an explicit
- 'c++' requirement.
- * t/lex-depend-cxx.sh ($required): Likewise.
- (my-hdr.hxx): Don't include <cstdio>. The "using namespace" directive
- should still be enough to ensure the content of this header is not valid
- C, albeit being of course valid C++.
- Fix unrelated typos in comments.
- (joe.ll): Adjust, by removing the call to 'printf'.
- * THANKS: Add entry for reporter "Adam Mercer".
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- Peter Breitenlohner <peb@mppmu.mpg.de>
- tests: fix a spurious failure due to truncated timestamps
- Fixes automake bug#11346.
- * t/self-check-is_newest.tap: Apparently, on some systems (or file
- systems), "touch -r" can truncate timestamps :-( Work around that.
- 2012-04-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: require autoconf 2.69
- It is only from version 2.69 that the 'AC_PROG_FC' macro has started to
- set the '$GFC' variable to "yes" if the selected Fortran compiler is a
- GNU compiler. Since we use this variable in our configure.ac, we better
- require autoconf 2.69 explicitly.
- * configure.ac (AC_PRERQ): Require autoconf >= 2.69.
- Remove a now-obsolete "FIXME" comment.
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: don't require minimal automake version in AM_INIT_AUTOMAKE
- * configure.ac (AM_INIT_AUTOMAKE): Don't explicitly require a minimal
- automake version number. Since the Automake build system is only meant
- to work with the bleeding-edge automake, that requirement was redundant
- and misleading.
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: major version bump
- This is for the master branch.
- * configure.ac, m4/amversion.m4: Bump version to 1.12a.
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- post-release: minor version bump
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- post-release: minor version bump
- This is for the maint branch.
- * configure.ac, m4/amversion.m4: Bump version to 1.12.0a.
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch master into maint after 1.12 release
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: stable major release 1.12
- * configure.ac (AC_INIT): Bump version number to 1.12.
- * NEWS: Likewise.
- * m4/amversion.m4 (AM_AUTOMAKE_VERSION): Likewise (autoupdated
- by ./bootstrap).
- 2012-04-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'fix-pr11302-opensuse' and 'fix-pr11306-macosx'
- * fix-pr11302-opensuse:
- tests: cater to systems installing libs in /lib64
- * fix-pr11306-macosx:
- tests: fix spurious failure on Mac OS X
- 2012-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: test the internal $(am__relativize) variable
- This new coverage might turn out be useful for the planned changes
- in Automake-NG. Even if it eventually doesn't, we gen an improved
- testsuite exposure of some non-trivial internals, so it's always a
- win for us.
- * t/relativize.tap: New test.
- * t/list-of-tests.mk: Add it.
- 2012-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: cater to systems installing libs in /lib64
- See automake bug#11302.
- On at least OpenSUSE 12.1, "make install" will install libraries in
- the '${prefix}/lib64' directory by default. This is due to the
- $CONFIG_SITE set by /etc/profile.d/site.sh, which sets a libdir
- that ends in '/lib64' rather than '/lib' if it finds that the compiler
- is generating 64-bit code. This behaviour was causing some spurious
- failures in our testsuite. Fix them.
- * t/posixsubst-libraries.sh: Assume the libraries are installed in
- '$(libdir)' rather than in '$(prefix)/lib'.
- * t/posixsubst-ltlibraries.sh: Likewise.
- * t/posixsubst-scripts.sh: Similarly, don't assume that '$(bindir)',
- '$(sbindir)' and '$(libexedir)' always defaults to respectively
- '$(prefix)/bin', '$(prefix)/sbin' and '$(prefix)/libexec'.
- * t/transform3.test: Likewise.
- 2012-04-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Bruno Haible <bruno@clisp.org>
- tests: fix spurious failure on Mac OS X
- See automake bug#11306.
- * t/lex-libobj.sh: We used to pass LEXLIB='-L /lib' to the ./configure
- invocation, to prevent it from explicitly searching for a "lex library".
- But the linker on MacOS X 10.5 apparently chokes on that:
- cc -g -O2 -o foo foo.o -L /lib yywrap.o
- ld: file not found: /lib
- collect2: ld returned 1 exit status
- So, we now instead pass LEXLIB=' ', which being non-empty is enough
- to prevent the search of a "lex library". And since we are at it,
- enhance comments on this non-obvious usage.
- 2012-04-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: parallel make with vala
- * t/vala-parallel.sh: New test.
- * t/list-of-tests.mk: Add it.
- 2012-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: configure exit with status 77, not 1, if valac version is too old
- From a report by Bruno Haible in automake bug#1193. This change should
- also automatically avoid spurious testsuite failures with older vala
- versions.
- * m4/vala.m4 (AM_PROG_VALAC): Exit with status 77, rather than 1, if
- the Vala compiler found older than the minimal required version (if
- any). This is more consistent with what is done by other macros like
- AM_PROG_UPC or AC_PROG_CC.
- * NEWS: Update.
- * t/vala-headers.sh: Adjust, so that the test is only skipped of the
- vala compiler is too old or the required PKG_CHECK_MODULES third-party
- macro is not found by aclocal, and not if a generic error happens in
- the configure script.
- * t/vala-libs.sh: Likewise.
- * t/vala2.sh: Likewise.
- * t/vala3.sh: Likewise.
- * t/vala5.sh: Likewise.
- * t/vala-vpath.sh: Likewise (but don't check for the potential error
- with PKG_CHECK_MODULES, as that macro is not used in any way here).
- * t/vala4.sh: Adjust, to avoid the new semantic causing this test to
- skip instead of failing.
- 2012-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: processing of input makefile rules
- This is a pure refactoring, with no intended functional or semantic
- changes. It breaks up an overly-long function in three smaller
- sub-functions. This change will very especially useful for the work
- on Automake-NG.
- * lib/Automake/Rule.pm (define): Move quite a lot of code out, into ...
- (_rule_defn_with_exeext_awareness, _maybe_warn_about_duplicated_target,
- _conditionals_for_rule): ... these new subroutines.
- 2012-04-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: refactor pre-processing of makefile fragments
- This change will provide the automake script with a new function that
- reads in a Makefile fragment *without* performing Automake ad-hoc parsing,
- but only the pre-processing step, i.e., removal of '##' comments and
- substitution of tokens like '%SUBDIRS%', '%?LIBTOOL%' or '?GENENRIC?'.
- This will very likely be useful for the work on Automake-NG.
- This is a pure refactoring, with no intended functional or semantic
- changes.
- * automake.in (preprocess_file): New function, extracted ...
- (make_paragraphs): ... from here.
- 2012-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: remove obsolete references to Autoconf 2.13
- Autoconf 2.13 is definitely obsolete today, so giving hints or caveats
- about it in the Automake documentation is not only obsolescent, but
- also counter-productive, as it suggests that autoconf 2.13 is still
- relevant.
- * doc/automake.texi: Adjust. Related rewordings. Since we are at it,
- prefer using a more modern autoconf version number (2.68 instead of 2.57)
- in an example showing how to correctly use 'AC_PREREQ' in third-party
- .m4 files.
- 2012-04-20 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure with non-ANSI terminals
- * t/ax/tap-summary-aux.sh: When checking colored testsuite output,
- be sure to export the TERM variable to the value "ansi"; otherwise
- the automake testsuite driver will not display colored output, not
- even if AM_COLOR_TESTS is exported to "always". Failure revealed
- by NixOS Hydra.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: fix typo
- * HACKING (Test suite): Refer to file 't/README', not to the
- non-existent 'tests/README'.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release
- * configure.ac (AC_INIT): Bump version number to 1.11e, as per
- HACKING suggestion.
- * NEWS: Likewise.
- * m4/amversion.m4: Likewise (autoupdated by ./bootstrap).
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Beta release 1.11d (will become 1.12)
- * configure.ac (AC_INIT): Bump version number to 1.11d.
- * NEWS: Likewise.
- * m4/amversion.m4: Likewise (autoupdated by ./bootstrap).
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove redundant 'set -e' calls
- * t/aclocal-install-fail.sh: Do not set the 'errexit' shell flag,
- as it is already set by './defs'.
- * t/aclocal-install-mkdir.sh: Likewise.
- * t/aclocal-no-install-no-mkdir.sh: Likewise.
- * t/aclocal-verbose-install.sh: Likewise.
- * t/instdir-no-empty.sh: Likewise.
- * t/link_cond.sh: Likewise.
- * t/python-pr10995.sh: Likewise.
- * t/vala-vapi.sh: Likewise.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures when cross-compiling
- * t/parallel-tests-recheck-depends-on-all.sh: Skip the test
- when cross-compiling.
- * t/vala-vapi.sh: Skip tests that do not make sense when
- cross-compiling.
- * t/yacc-basic.sh: Likewise.
- * t/yacc-cxx.sh: Likewise.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintainer-check: fix definition of $(ams) again
- * syntax-checks.mk (ams): The previous change 'v1.11b-36-g127adfb' solved
- one problem in the definition of this variable, but also caused it contain
- the names of all the left-behind 't/*.dir' temporary test directories.
- Fix that.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintainer-check: do not hang
- * syntax-checks.mk (ams): The definition of this variable was invoking
- the 'find' utility in an incorrect way, which resulted into the variable
- being empty, thus reducing coverage in some maintainer check and making
- other hang. Fix this.
- 2012-04-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: 'recheck' must depend on 'all'
- Fixes automake bug#11252.
- When a developer experience one or more failures in the testsuite, a good
- workflow is for him to modify its program's sources to fix the bug thus
- revealed, run "make recheck" to verify that the change has indeed solved
- the testsuite failures previously experienced, and then run "make check"
- to verify that the change has not introduced any new failure or regression.
- Unfortunately, this apparently natural workflow couldn't have worked until
- now, since the Automake-provided 'recheck' target (which didn't depend on
- 'all') wouldn't have causes the program to be recompiled, and the failed
- tests would have thus been run with the older, buggy version of the
- program, failing the same way as before.
- * lib/am/check.am (recheck): Depend on 'all'.
- * t/parallel-tests-recheck-depends-on-all.sh: New test.
- * t/list-of-tests.mk: Add it.
- * NEWS: Update.
- 2012-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: building libraries, and more on '.vapi' files
- * t/vala1.sh: Remove, turned into ...
- * t/vala-libs.sh: ... this functional test instead.
- * t/list-of-tests.mk: Adjust.
- 2012-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: fix botched call to 'check_user_variables'
- * automake.in (lang_vala_finish_target): The 'check_user_variables' function
- takes an array, not an array ref, as argument; adjust its call accordingly.
- 2012-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: cleanup rules are better and more complete now
- * automake.in (lang_vala_finish_target): Ensure Vala-generated C sources
- and header files and our custom stamp files are correctly cleaned.
- * t/vala-headers.sh, t/vala-vpath.sh: Enhance.
- * NEWS: Update.
- 2012-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: check headers generation
- * t/vala-headers.sh: New test, checking use of 'valac' options for
- header generation (e.g., '-H', '--vapi', ...) in '$(..._VALAFLAGS)'.
- * t/list-of-tests.mk: Add it.
- 2012-04-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: remove redundant libtool requirements and usages
- * t/vala2.sh: Don't require libtool m4 macros, don't run libtoolize,
- don't invoke AC_PROG_LIBTOOL: none of there is really needed.
- * t/vala3.test: Likewise.
- 2012-04-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: some enhancements
- * t/vala-vpath.sh, t/vala2.sh, t/vala3.sh, t/vala5.sh: Enhance a little.
- 2012-04-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: few adjustments and improvements
- * t/vala4.sh: Don't run 'libtoolize', it's not truly required.
- ($required): Don't require 'libtoolize'.
- (configure.ac): Don't invoke 'AC_PROG_LIBTOOL'.
- * t/vala-mix.sh ($required): Require 'cc'.
- Avoid some calls to 'framework_failure_', they were only useful when
- this test was xfailing (to ensure it wasn't failing for the wrong
- reasons).
- Ensure the stamp file is created in the source directory.
- 2012-04-16 Jim Meyering <meyering@redhat.com>
- build: use latest help2man, but without locale support
- * doc/help2man: Update to latest (1.40.8), but built with
- --disable-nls, which elides the less-portable locale-related
- code, and with the "use 5.008" manually changed to "use 5.006".
- Thanks to Brendan O'Dea for the tips.
- * THANKS: Update Brendan's address.
- 2012-04-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: print error messages on stderr, not stdout
- * lib/am/check.am ($(TEST_SUITE_LOG)): Be sure to print error messages
- on stderr, not on stdout.
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist tests: fix reduced coverage due to typo
- * t/dist-formats.tap: Append to 'Makefile.am', not to 'Makefil.am'.
- 2012-04-13 Jim Meyering <meyering@redhat.com>
- build: use slightly older help2man, for improved portability
- Fixes automake bug#11235
- * doc/help2man: Downgrade to help2man-1.36.4, so that it does
- not require Locale/gettext.pm, which is not available on a
- default Fedora 16 installation. Reported by Stefano Lattarini.
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure when 'install-info' program is unavailable
- From a report by Dmitry V. Levin:
- <http://lists.gnu.org/archive/html/automake-patches/2012-04/msg00085.html>
- * t/install-info-dir.sh : When 'install-info' is unavailable, create a
- dummy '${infodir}/dir' file by hand when that file is required by later
- checks.
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- install: shell parameter expansions can be used in directory names
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr11232' into maint
- * fix-pr11232:
- install: shell parameter expansions can be used in directory names
- 2012-04-13 Dmitry V. Levin <ldv@altlinux.org>
- install: shell parameter expansions can be used in directory names
- Fixes automake bug#11232.
- GNU automake used to support shell parameter expansion and command
- substitutions in installation directories, but that was inadvertently
- broken by commit v1.11-759-g368f1c4 "install: don't create empty dirs
- when an empty 'foo_PRIMARY' is used" of 18-03-2012, where shell quoting
- of generated MKDIR_P command was changed from double to single quotes
- in 3 places, while some 21 other places still use double quotes for
- generated MKDIR_P commands.
- * lib/am/data.am: Use double quotes for generated "mkdir -p" commands.
- * lib/am/libs.am: Likewise.
- * lib/am/ltlib.am: Likewise.
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: more environment cleanups
- * defs (SH_LOG_COMPILER, SH_LOG_COMPILE, SH_LOG_FLAGS,
- AM_SH_LOG_FLAGS, SH_LOG_DRIVER, SH_LOG_DRIVER_FLAGS,
- AM_SH_LOG_DRIVER_FLAGS): Unset these variable to avoid
- potential interferences from the environment.
- 2012-04-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: unset 'AM_UPDATE_INFO_DIR' environment variable
- * defs (AM_UPDATE_INFO_DIR): Unset, to be sure to avoid unduly
- interferences from the environment. See also automake bug#11204.
- * THANKS: Add entry for David Fang.
- 2012-04-12 Jim Meyering <meyering@redhat.com>
- build: generate doc/*.1 files; include help2man
- This change is required to avoid making a distributed file depend
- on a generated (non-distributed) one. The preceding change
- introduced one such dependency, with the distributed doc/*.1
- depending on the generated aclocal and automake files. Here,
- we avoid the problem by generating the doc/*.1 files rather than
- distributing them.
- * doc/help2man: New file, version 1.37.1.
- * Makefile.am (EXTRA_DIST): Add doc/help2man.
- (man1_MANS): Rename from $(dist_man1_MANS). Remove $(srcdir) prefix.
- (CLEANFILES): Add these files here, rather than to
- $(MAINTAINERCLEANFILES), since we are no longer distributing them.
- (update_mans): Use doc/help2man, not $(HELP2MAN).
- * configure.ac: Don't test for help2man, now that we bundle it.
- 2012-04-12 Jim Meyering <meyering@redhat.com>
- build: avoid parallel build failures
- A parallel build would fail when two concurrent sub-make processes
- tried to build lib/Automake/Config.pm. The loser would complain that
- grep: lib/Automake/Config.pm-t: No such file or directory
- chmod: cannot access `lib/Automake/Config.pm-t': No such file or\
- directory
- make[1]: *** [lib/Automake/Config.pm] Error 1
- * Makefile.am (update_mans): Don't build lib/Automake/Config.pm here.
- Instead, depend on it from the two rules that use it:
- ($(srcdir)/doc/aclocal-$(APIVERSION).1): Depend on it.
- ($(srcdir)/doc/automake-$(APIVERSION).1): Likewise.
- [ Note that technically, the above is incorrect, since it makes those
- distributed doc/*.1 files depend on generated aclocal and automake.
- That problem is addressed by the following commit. ]
- However, that was not enough, since even then, a parallel build
- would still fail, now with this:
- help2man: can't get `--help' info from automake-1.11a
- Try `--no-discard-stderr' if option outputs to stderr
- make: *** [doc/automake-1.11a.1] Error 1
- a subsequent "make -j3" would create the missing file.
- That was because help2man would invoke t/wrap/aclocal.in and
- t/wrap/automake.in, each of which would require aclocal and
- automake, yet those two files weren't guaranteed to be created.
- Add explicit dependencies:
- ($(srcdir)/doc/aclocal-$(APIVERSION).1): Depend on aclocal.
- ($(srcdir)/doc/automake-$(APIVERSION).1): Depend on automake.
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: remove older entry for "future backward incompatibilities"
- * NEWS (New in 1.11.4): Remove subsection about "Future backward
- incompatibilities"; they are now either documented changes for the
- upcoming 1.12 release, or re-casted as planned future backward
- incompatibilities for the next 1.13 release.
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: document fixes for bug#11222 and bug#11229
- * NEWS (Bugs fixed in 1.11.5): New, documenting the fixes.
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- vala: fix distcheck with c/vala mixed projects
- vala: fix vapi files handling
- vala: test vapi files handling (still failing)
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branches 'vala-fix-pr11222' and 'vala-fix-pr11229' into maint
- * vala-fix-pr11222:
- vala: fix vapi files handling
- vala: test vapi files handling (still failing)
- * vala-fix-pr11229:
- vala: fix distcheck with c/vala mixed projects
- 2012-04-12 Marc-Antoine Perennou <Marc-Antoine@Perennou.com> (tiny change)
- vala: fix distcheck with c/vala mixed projects
- Fixes automake bug#11229.
- * automake.in (lang_vala_finish_target): Return early if the
- current '_SOURCES' variable does not contain any '.vala' nor
- '.vapi' source. Otherwise, the vala compiler will be called
- without arguments, causing an error.
- * tests/vala-mix.test: Enhance to catch the fixed bug.
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix typo
- * NEWS (Changes to Automake-generated testsuite harnesses): It's
- 'perl', not 'per'. Reported by Akim Demaille in a private mail.
- 2012-04-12 Marc-Antoine Perennou <Marc-Antoine@Perennou.com> (tiny change)
- vala: fix vapi files handling
- Fixes automake bug#11222.
- Issue introduced in commit 'v1.11-696-g51f61df' of 27-02-2012,
- "vala: fix 'valac' calls for projects with mixed Vala/C", which
- fixed automake bug#10894.
- * automake.in (lang_vala_finish_target): Also recognize '.vapi'
- as an extension for vala input files.
- * tests/list-of-tests.mk (XFAIL_TESTS): Remove 'vala-vapi.test'.
- 2012-04-12 Stefano Lattarini <stefano.lattarini@gmail.com> (tiny change)
- Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
- vala: test vapi files handling (still failing)
- Exposes automake bug#11222.
- * tests/vala-vapi.test: New test, still failing.
- * tests/list-of-tests.mk (handwritten_TESTS): Add it.
- (XFAIL_TESTS): Likewise.
- * THANKS: Update.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- self checks: avoid spurious failures when keep_testdirs=yes
- * t/self-check-cleanup.tap, t/self-check-dir.tap: Unset the
- 'keep_testdirs' environment variable, to avoid spurious errors
- when the testsuite is run with "keep_testdirs=yes make check".
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: some weaknesses in a self-check test case
- * t/self-check-cleanup.tap: This test contained several buglets
- introduced in the recent row of commits that converted the Automake
- build system to a non-recursive setup. Fix them. Since we are at
- it, enhance the test to cover also the use of the 'keep_testdirs'
- environment variable in order to keep the temporary test directories
- around.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid yet more spurious failures (2)
- Some maintainer checks were too greedy in processing 'Makefile.am'
- files, looking for them even in temporary directories left behind
- by the test cases, thus causing occasional spurious failures.
- * syntax-checks.mk (ams): Ignore 'Makefile.am' files in the
- temporary test directories.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid yet more spurious failures (1)
- The 'sc_tests_makefile_variable_order' maintainer check is too
- strict sometimes, blaming automake for outputting out-of-order
- variables when this is in fact due to the result of post-processing
- of third-party tools or custom test code.
- * t/tap-doc2.sh: Ensure the final Makefile.in (that we hack by
- hand) is removed, to avoid a spurious maintainer-check failure.
- * t/gettext-macros.sh: Ensure that any leftover Makefile.in (that
- is generated by gettext/autopoint) is removed, to avoid a spurious
- maintainer-check failure.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: fixlets w.r.t. the release procedure
- * HACKING (Release procedure): Do not state that the result of
- "make fetch" is woefully incomplete: this is not true anymore today.
- Suggest to re-run the testsuite after a "make fetch", in case any
- file has been updated.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix spurious failures
- * syntax-check.mk (sc_mkinstalldirs): Now the 'mkinstalldirs' is
- listed in the top-level 'Makefile.am', not in 'lib/Makefile.am';
- adjust the "whitelist" accordingly.
- (sc_ensure_testsuite_has_run): The 'test-suite.log' file created by
- "make check" is now placed in the top-level directory, not in the
- 't/' subdirectory. Adjust by using '$(TEST_SUITE_LOG)' instead of
- an hand-crafted path for the 'test-suite.log' file.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: version bump after beta release
- * configure.ac (AC_INIT): Bump version number to 1.11c, as per
- HACKING suggestion.
- * NEWS: Likewise.
- * m4/amversion.m4: Likewise (autoupdated by ./bootstrap).
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Beta release 1.11b (will become 1.12)
- * configure.ac (AC_INIT): Bump version number to 1.11b.
- * NEWS: Likewise.
- * m4/amversion.m4: Likewise (autoupdated by ./bootstrap).
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: some auxiliary files synced from upstream
- * lib/texinfo.tex: Synced from upstream, by "make fetch".
- * lib/INSTALL: Likewise.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: described new branching policy for 1.12 an later
- This change closes automake bug#11153.
- * HACKING (Working with git): Document the new policy for automake
- branching and merging, which will start being applied after 1.12 is
- released:
- - the maintenance branch will be 'maint', and we will cut the
- maintenance releases directly from there;
- - the development branch will be 'master', and we will cut the
- new releases directly from there;
- - 'maint' will be kept regularly merged into 'master'.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: avoid spurious failure with older GObject
- * t/vala2.sh: In the 'PKG_CHECK_MODULES' call in 'configure.ac',
- don't require gobject >= 2.10, but just >= 2.4: that is enough in
- order for the test to pass.
- * t/vala3.sh: Likewise.
- * t/vala5.sh: Likewise. Also, skip the test instead of failing
- if the ./configure invocation fails: that is likely due to the
- fact that the GObject library is too old or missing, and that is
- not automake's fault.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: force the use of automatic dependency tracking
- * t/vala-mix2.sh: Invoke ./configure with the option
- '--enable-dependency-tracking', so that slower dependency
- extractors are not rejected. This avoids a spurious failure
- at least on Solaris when the Sun C compiler is used.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures in tests on C++ and lex
- This is a follow-up to commit v1.11-2128-g7f2bc63 of 09-04-2012,
- "tests: avoid spurious failures with non-flex 'lex' programs and
- C++". It is required to avoid a couple of spurious failures on
- Solaris and NetBSD systems (at least). See also automake bug#11185.
- * t/lex-clean-cxx.sh (parsefoo.lxx): Do not declared the provided
- dummy 'isatty' function as 'static', since that might conflict with
- a declaration of it as 'extern' pulled in through other system
- * t/lex-depend-cxx.sh (joe.ll): Likewise.
- * t/README: Update advice, to avoid similar issues in the future.
- 2012-04-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'rmch'
- * rmch:
- maint: simplify generation of files with @substed@ stuff
- t/README: update w.r.t. recent overhaul (non-recursive build system)
- docs: fix names of relevant test cases in comments
- NEWS: automake build systems avoids make recursion
- maint: no more make recursion in Automake's build system
- tests: rename 'tests/' => 't/', '*.test' => '*.sh'
- tests: remove recipes that run tests with 'prove'
- tests: move most helper scripts and files into the 'ax' subdirectory
- 2012-04-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Peter Rosin <peda@lysator.liu.se>
- tests: avoid spurious failures with non-flex 'lex' programs and C++
- This change fixes automake bug#11185.
- The commit v1.11-2058-g6f4b08d of 06-03-2012, "tests: explicitly
- state that our lexers do not require unistd.h" has broken the tests
- 'lex-clean-cxx.test' and 'lex-depend-cxx.test' on Solaris, where lex
- is not flex and does not understand the "%option never-interactive"
- directive. Remove the use of this directive, resorting to defining
- a dummy 'isatty()' function instead to keep the flex-generated tests
- able to compile also on MinGW/MSYS.
- * tests/lex-clean-cxx.test (parsefoo.lxx): Define a dummy 'isatty()'
- function.
- * tests/lex-depend-cxx.test (joe.ll): Likewise.
- * tests/README: Adjust. Fix an unrelated typo since we are at it.
- 2012-04-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failures for shells with busted 'set -e'
- Some versions of the BSD Korn shell wrongly bail out when the
- 'errexit' shell flag is active and the left-hand command in a
- "&&" list fails and that list is the *last* command of the body
- of a "while" or "for" loop.
- * tests/install-info-dir.test: Work around that behaviour.
- 2012-04-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: simplify generation of files with @substed@ stuff
- Use a proper "config.status --file=-" idiom to do most substitutions
- in our generated files, to avoid too much duplications between the
- various $(do_subst) commands in Makefile.am and the (explicit or
- implicit AC_SUBST) invocation in configure.ac.
- From a suggestion by Eric Blake and Federico Simoncelli:
- <http://lists.gnu.org/archive/html/automake/2012-01/msg00011.html>
- * Makefile.am (do_subst): Rewrite to take advantage of the
- "config.status --file=-" idiom.
- (generated_file_finalize): New, to help checking that generated
- files don't contain unexpanded '@substitutions@', and are made
- read-only.
- (automake, aclocal): Take advantage of the improved $(do_subst).
- Improve comments.
- (lib/Automake/Config.pm): Likewise, and of the new variable
- $(generated_file_finalize) as well.
- ($(top_srcdir)/m4/amversion.m4): Likewise.
- (defs-static): Likewise, and depend explicitly on 'Makefile'.
- (do_subst_t): Remove as obsolete.
- * THANKS: Update.
- 2012-04-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove redundant requirement
- * tests/txinfo19.test ($required): Drop required "tex", it is not
- really needed.
- Add trailing ':' command since we are at it.
- 2012-04-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make two test scripts executable
- * tests/instdir-cond.test: Add executable bit.
- * tests/instdir-cond2.test: Likewise.
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- t/README: update w.r.t. recent overhaul (non-recursive build system)
- And other miscellaneous improvements since we are at it.
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix names of relevant test cases in comments
- * doc/automake.texi: In comments reporting which test(s) check a
- given feature/idiom, fix the names of the referenced tests, to
- reflect the recent 'tests/foo.test' => 't/foo.sh' "Great Rename".
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- NEWS: automake build systems avoids make recursion
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: no more make recursion in Automake's build system
- We finally merge testsuite-related part of the Automake build
- system with the top-level one. See also yesterday's commit
- 'v1.11-2124-ga4b0f4b', "maint: remove most recursion in automake's
- own build system".
- * t/gen-testsuite-part: Move ...
- * gen-testsuite-part: ... here, with required adjustments.
- * t/defs-static.in: Move ...
- * defs-static.in: ... here, with required adjustments. In
- particular ...
- ($testsrcdir, $testbuilddir): Removed.
- ($top_testsrcdir): Renamed ...
- ($am_top_srcdir): ... to this.
- ($top_testbuilddir): Renamed ...
- ($am_top_builddir): ... to this.
- * t/defs: Move ...
- * defs: ... here, and adjust as required.
- * t/Makefile.am: Merge ...
- * Makefile.am: ... in here, with related adjustments and
- simplifications.
- * bootstrap: Adjust as required.
- * syntax-checks.mk: Likewise.
- * .gitignore: Likewise.
- * t/ax/tap-setup.sh: Likewise.
- * t/get-sysconf.sh: Likewise.
- * t/help-multilib.sh: Likewise.
- * t/multlib.sh: Likewise.
- * t/parallel-tests2.sh: Likewise.
- * t/self-check-cleanup.tap: Likewise.
- * t/self-check-exit.tap: Likewise.
- * t/self-check-dir.tap: Likewise.
- * t/self-check-explicit-skips.sh: Likewise.
- * t/self-check-reexec.tap: Likewise.
- * t/self-check-sanity.sh: Likewise.
- * t/yacc-d-cxx.sh: Likewise.
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: rename 'tests/' => 't/', '*.test' => '*.sh'
- When we (soon) convert the Automake testsuite to a non-recursive
- make setup, we'll have to fix the entries of $(TESTS) to be
- prepended with the subdirectory they are in; this will increase
- the length of $(TESTS), and thus increase the possibility of
- exceeding the command-line length limits on some systems (most
- notably, MinGW/MSYS). See automake bug#7868 for more information.
- Thus we rename the 'tests/' subdirectory to 't/', and each 'x.test'
- script in there to 'x.sh'; this way, the $(TESTS) entry 'foo.test'
- will become 't/foo.sh', which have the same number of characters.
- * tests/: Rename ...
- * t/: ... to this.
- * t/*.test: Rename ...
- * t/*.sh: ... to this.
- * t/.gitignore: Removed as obsolete.
- * t/defs: Adjust.
- * t/gen-testsuite-part: Likewise.
- * t/list-of-tests.mk: Likewise.
- * t/ccnoco.sh: Likewise.
- * t/ccnoco3.sh: Likewise.
- * t/self-check-cleanup.tap: Likewise.
- * t/self-check-dir.tap: Likewise.
- * t/self-check-me.tap: Likewise.
- * t/self-check-reexec.tap: Likewise.
- * README: Likewise.
- * bootstrap: Likewise
- * configure.ac: Likewise.
- * Makefile.am: Likewise.
- * .gitignore: Likewise.
- * syntax-check.mk: Likewise.
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove recipes that run tests with 'prove'
- Those recipes has served its purpose by helping us during the
- development of TAP support in Automake, to ensure our TAP driver
- didn't have gratuitous incompatibilities with the 'prove' test
- runner. But they are now unused, out-of-date and bitrotting. So
- it's better to just remove them. We can resurrect them at a later
- time if the need arises.
- * tests/Makefile.am (PROVE, AM_PROVEFLAGS, AM_PROVECMD): Remove
- these variables.
- (prove, installprove): Remove these targets and their recipe.
- (EXTRA_DIST): Don't distribute 'ax/prove-runner' anymore.
- * ax/prove-runner: Delete.
- 2012-04-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move most helper scripts and files into the 'ax' subdirectory
- * tests/defs-static.in ($am_testauxdir): New variable.
- * tests/testsuite-summary-checks.sh: Moved ...
- * tests/ax/testsuite-summary-checks.sh: ... here.
- * tests/trivial-test-driver: Moved ...
- * tests/ax/trivial-test-driver: ... here.
- * tests/tap-summary-aux.sh: Moved ...
- * tests/ax/tap-summary-aux.sh: ... here.
- * tests/distcheck-hook-m4.am: Moved ...
- * tests/ax/distcheck-hook-m4.am: ... here.
- * tests/prove-runner: Moved ...
- * tests/ax/prove-runner: ... here.
- * tests/depcomp.sh: Moved ...
- * tests/ax/depcomp.sh: ... here.
- * tests/tap-setup.sh: Moved ...
- * tests/ax/tap-setup.sh: ... here.
- * tests/tap-functions.sh: Moved ...
- * tests/ax/tap-functions.sh: ... here.
- * tests/plain-functions.sh: Moved ...
- * tests/ax/plain-functions.sh: ... here.
- * tests/extract-testsuite-summary: Moved ...
- * tests/ax/extract-testsuite-summary.pl: .. . here.
- * tests/gen-testsuite-part: Adjusted accordingly.
- * tests/Makefile.am: Likewise.
- * tests/defs: Likewise.
- * syntax-check.mk: Likewise.
- * Several tests: Likewise.
- 2012-04-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: remove most recursion in automake's own build system
- Recursive make-based build systems tend to be slower, more fragile
- and less faithful than "flat" ones. See Peter Miller's article
- "Recursive Make Considered Harmful" for more a more in-depth
- discussion:
- <http://miller.emu.id.au/pmiller/books/rmch/>
- While in the case of automake this isn't a big problem (given the
- small size of its build systems), it still creates occasional
- glitches and annoyances.
- With this change, the use of recursion in Automake's own build
- system is eliminated *but for the testsuite*. Converting that
- is a little more tricky, and better left for a later change (or
- series of changes).
- See also commit v1.11-769-gfeeb7f6 of 28-03-2012.
- * contrib/Makefile.am, lib/Makefile.am, m4/Makefile.am,
- doc/Makefile.am: Removed, their content merged ...
- * Makefile.am: ... here, with required adjustments and few
- other "opportunistic" changes.
- (SUBDIRS): Update.
- * configure.ac (AC_CONFIG_FILES): Likewise.
- * .gitignore: Likewise.
- 2012-04-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a spurious failures with non-GNU make
- * tests/instdir-no-empty.test: Also pass proper AM_MAKEFLAGS to
- make invocations that might recurse, to ensure the macro definitions
- passed from the command line are properly propagated.
- 2012-04-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- texinfo: warn about future use of '--tidy'
- Starting from the next major release of Automake (likely 1.13) we
- want to start passing the '--tidy' option to texi2dvi and texi2pdf
- invocations, so that auxiliary TeX-generated files can be kept
- around (thus speeding up rebuilding of DVI and PDF output) without
- cluttering the build directory too much.
- Since the '--tidy' option was introduced in Texinfo 4.9 (as
- documented in the Texinfo distribution's NEWS file), this also
- means that Makefiles generated by future Automake versions will
- require at least that version of Texinfo (at the time of writing
- four years and nine months old).
- The users should be warned about the planned behavioral change
- and the new version requirement it will entail.
- See also automake bug#11146.
- * NEWS (Planned Backward Incompatibilities): Add entry about use
- of the '--tidy' option and requirement of Texinfo 4.9.
- 2012-04-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- texinfo: don't clutter the builddir when using modern texi2dvi
- In modern versions of texi2dvi (at least since version 1.135, which
- comes with Texinfo 4.13) the '-o' option does not imply anymore the
- '--clean' option. As a consequence, lots of TeX-generated auxiliary
- files are now left in the build directory by the 'pdf', 'ps' and
- 'dvi' rules.
- This is especially annoying with non-recursive setups having the
- '.texi' files in a subdirectory, as in:
- info_TEXINFOS = doc/foo.texi
- In this case, the stray auxiliary files are left in the top build
- directory (since TeX is run from there). See for example:
- <http://lists.gnu.org/archive/html/bug-bison/2012-04/msg00002.html>
- See also automake bug#11146.
- * lib/am/texibuild.am: Call 'texi2dvi' and 'texi2pdf' with the
- '--clean' option. Update comments accordingly.
- * tests/txinfo-noclutter.test: New test.
- * tests/txinfo18.test: Remove as obsolete, the still relevant parts
- of it moved into the new test.
- * tests/list-of-tests.mk: Adjust.
- * NEWS: Update.
- 2012-04-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: autotools-generated files are not committed anymore
- * HACKING (Working with git) Generated files like 'configure',
- 'Makefile.in' and 'aclocal.m4' are not committed anymore in our
- git repository since some months. Remove obsoleted advices that
- assumed they still were.
- 2012-04-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: simplify documentation of bootstrapping process
- * HACKING (Working with git): Do not suggest that, to ensure the
- bootstrapping process is performed with the latest autotools, the
- developer could explicitly pass $AUTOCONF and $AUTOM4TE in the
- environment to the ./bootstrap and ./configure invocations: that
- is a little tricky and quite fragile. Instead, suggest to just
- put modern-enough version of the autotools early in PATH.
- 2012-04-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove repeated line in comment, fix quoting
- * automake.in: Drop a repeated line in a comment. In the same
- comment, prefer quoting 'like this' rather than `like this'.
- Issue introduced in one of the commits that converted from quoting
- `like this' to quoting 'like this'.
- 2012-03-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove useless import in automake script
- * automake.in (Automake::Version): This import is not needed;
- remove it.
- 2012-03-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- docs: deprecate 'cygnus' mode, help the transition
- 2012-03-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: deprecate 'cygnus' mode, help the transition
- Support for "Cygnus-style" trees (so far enabled by the 'cygnus'
- option) will be deprecated in one release of the next major series
- (1.12.x) and removed in the next major release after that (1.13).
- Better to start warning about this in the manual.
- * docs/automake.texi: Warn about the oncoming deprecation of the
- 'cygnus' mode. Suggest some idioms that can be used to retain some
- effects of the 'cygnus' option.
- * THANKS: Update.
- From a suggestion by Joseph S. Myers in automake bug#11034.
- 2012-03-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- perl refactor: use modern semantics of 'open'
- * lib/Automake/XFile.pm: Update comments and POD documentation to
- suggest a more idiomatic/modern usage.
- (open): Be more robust in detecting whether the created file handle
- is being opened for writing.
- * lib/Automake/FileUtils.pm (update_file, contents): Call the
- 'Automake::XFile' and 'File::IO' constructors with two arguments
- rather than one; this change obsoletes ...
- (open_quote): ... this subroutine, which has thus been removed.
- (@EXPORT): Drop '&open_quote'.
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cosmetics: don't make the generated Config.pm executable
- maint: reduce use of recursion in automake build system
- + Extra non-trivial extra edits follows.
- * lib/Makefile.am (amdir): Deleted this definition, it is already
- provided by a proper AC_SUBST in configure.ac.
- (dist_am_DATA): Remove 'am/ansi2knr.am', 'am/check-html.am' and
- 'am/multilib.am'.
- (dist_perllib_DATA): Remove 'Automake/Struct.pm'.
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: don't make the generated Config.pm executable
- * lib/Makefile.am (Automake/Config.pm): Don't make this executable,
- there's not need for it to be (it's a perl module, not a script).
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: reduce use of recursion in automake build system
- Recursive make-based build systems tend to be slower, more fragile
- and less faithful than "flat" ones. See Peter Miller's article
- "Recursive Make Considered Harmful" for more a more in-depth
- discussion:
- <http://miller.emu.id.au/pmiller/books/rmch/>
- While in the case of automake this isn't a big problem (given the
- small size of its build systems), it still creates occasional
- glitches and annoyances. So, with this change, we start making
- less use of make recursion in the Automake's own build system
- (future changes will reduce it even more).
- * lib/am/Makefile.am, lib/Automake/Makefile.am: Removed, their
- content merged ...
- * lib/Makefile.am: ... here, with required adjustments.
- * configure.ac (AC_CONFIG_FILES): Update.
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: sync with branch-1.11, fix mis-merges
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- acinstall: remove, it has never been really used
- Accordingly to the git history (see for example the 'README-alpha'
- in commit 'Release-1-1e-39-g9beb4ec' of 06-10-1996), the 'acinstall'
- script should have been used to install m4 files for aclocal. The
- comments in this script report that "... A script is needed to do
- this because we want to do serial-number checking; newer versions
- of macro files should always be preferred".
- But the 'acinstall' script has never been really used: for example,
- the entry "actually use acinstall program" was removed (unfixed)
- from the TODO file in commit 'Release-1-1k-12-g1201405' of
- 08-12-1996, and the only citation of 'acinstall' in the manual was
- removed in commit 'Release-1-1l-37-g128c3d7' of 19-03-1997, and
- never added back. In addition, the last non-trivial edit to the
- script (that is, besides updates to the copyright notice) dates
- back to 1996.
- More importantly, now that aclocal supports the ACLOCAL_PATH
- environment variable, installing m4 files directly in the
- system-wide acdir is discouraged, and better left only to
- distros' package managers (which already have their own way to
- do so, with which third-party build systems should not directly
- meddle).
- So we just remove the 'acinstall' script.
- * lib/acinstall: Remove.
- * lib/Makefile.am (dist_script_DATA): Update.
- 2012-03-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: reorganize the source tree and make it less cluttered
- * TODO: Move ...
- * old/TODO: ... here. This is done because this file is quite
- outdated, and today TODO and wishlist items are better handled
- though the debbugs tracker.
- * ChangeLog.00: Move ...
- * old/ChangeLog.00: ... here.
- * ChangeLog.01: Move ...
- * old/ChangeLog.01: ... here.
- * ChangeLog.02: Move ...
- * old/ChangeLog.02: ... here.
- * ChangeLog.03: Move ...
- * old/ChangeLog.03: ... here.
- * ChangeLog.04: Move ...
- * old/ChangeLog.04: ... here.
- * ChangeLog.09: Move ...
- * old/ChangeLog.09: ... here.
- * ChangeLog.11: Move ...
- * old/ChangeLog.11: ... here.
- * ChangeLog.96: Move ...
- * old/ChangeLog.96: ... here.
- * ChangeLog.98: Move ...
- * old/ChangeLog.98: ... here.
- * tests/ChangeLog-old: Move ...
- * old/ChangeLog-tests: .. here.
- * tests/Makefile.am (EXTRA_DIST): Adjust.
- * Makefile.am (EXTRA_DIST): Likewise.
- * .autom4te.cfg: New file, instructing the autotools to place the
- autom4te cache directory in '.autom4te.cache' rather than in
- 'autom4te.cache'.
- * .gitignore: Adjust.
- * Makefile.am (maintainer-clean-local): Remove the '.autom4te.cache'
- directory.
- 2012-03-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: we are going to drop 'cygnus' soonish
- * NEWS (Future backward incompatibilities): Support for
- "Cygnus-style" trees (so far enabled by the 'cygnus' option)
- will be deprecated in the next minor release and removed in
- in the next major release.
- 2012-03-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- depcomp: support tcc (Tiny C Compiler)
- tests: workaround for automatic linker determination and conditionals
- info: allow user to inhibit pruning of '${infodir}/dir'
- vala tests: fix spurious failures with older valac (<= 0.7.2)
- tests: fix a timestamp issue, and other minor buglets
- tests: fix spurious failure with older autoconf
- build: remove duplicated entries in $(TESTS)
- + Extra non-trivia edits:
- * tests/link_cond.test: Use 'configure.ac', not 'configure.in'.
- 2012-03-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp: support tcc (Tiny C Compiler)
- This change fixes automake bug#11007.
- Since git commit 0c928da9 of 21-06-2010, "tcc: Draft suppoprt for
- -MD/-MF options" (sic, with typo in summary line), tcc has supported
- automatic dependency generation with a command-line interface
- similar to what old (pre-8.0) Intel compilers did. This caused
- Automake-generated code for automatic dependency tracking to
- recognize tcc dependency style as "icc". However, the format of
- the dependency files generated by tcc is apparently different enough
- from that of icc to cause spurious failures in the post-processing
- operated by our 'depcomp' script on such files.
- The failure was exposed with the development version of tcc 0.9.26
- (as installed with debian package "tcc 0.9.26~git20120104.83d") by
- test case 'depcomp-auto.tap' (available only in the master branch).
- * lib/depcomp (icc): Cater to tcc as well. Update comments
- accordingly.
- * NEWS: Update.
- 2012-03-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: workaround for automatic linker determination and conditionals
- See automake bug#11089.
- Automake is not very smart in automatically determining the command
- to be used to link a program whose source files' languages are
- conditionally defined. For example, an input like:
- if HAVE_CXX
- foo_SOURCES = more.c++
- else
- foo_SOURCES = less.c
- endif
- will cause the build rules for 'foo' to *unconditionally* use the
- C++ compiler for linking, even when the 'HAVE_CXX' conditional
- evaluates to false (which might mean that no C++ compiler is
- available).
- This behaviour is not really correct, but it's easy enough to work
- around, and it's only relevant for fringe use cases (at best). So
- let's just test that the workaround really works.
- * tests/link_cond.test: New test.
- * tests/list-of-tests.mk: Add it.
- * THANKS: Update.
- 2012-03-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- info: allow user to inhibit pruning of '${infodir}/dir'
- This should have ideally been part of commit 'v1.11-519-g1ec1668'
- of 23-11-2011 "info: allow user to inhibit creation/update of
- '${infodir}/dir'". Well, better late than never.
- * lib/am/texinfos.am (uninstall-info-am): Don't look anymore at the
- output of "install-info --version" to decide whether to use it to
- update the '${infodir}/dir' or not; instead, honour the environment
- variable 'AM_UPDATE_INFO_DIR'. To avoid code duplication with ...
- (install-info-am): ... the recipe of this target, move common code
- out to ...
- (am__can_run_installinfo): ... this new internal variable.
- * tests/install-info-dir.test: Enhance.
- * doc/automake.texi (Texinfo): Update.
- * NEWS: Likewise.
- 2012-03-26 Bruno Haible <bruno@clisp.org>
- Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: fix spurious failures with older valac (<= 0.7.2)
- See automake bug#11093.
- The Vala compiler before the 0.7.3 release does not support the
- '--profile' option. But some of our tests were relying on it, so
- skip those tests if the detected Vala compiler is too old.
- * tests/vala-vpath.test, tests/vala-mix.test, tests/vala-mix2.test
- (configure.in): Require vala version >= 0.7.3 in AM_PROG_VALAC call.
- 2012-03-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a timestamp issue, and other minor buglets
- Cherry picked from commit v1.11-1988-g82616f0 of 21-02-2012.
- Reported by Panther Martin in automake bug#10848. See also
- automake bug#11093.
- * tests/conffile-leading-dot.test: Add a proper '$sleep' invocation,
- to avoid spurious failures on fast systems without sub-second
- timestamp resolutions. Add other minor related and unrelated
- improvements and fixlets since we are at it.
- 2012-03-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure with older autoconf
- Cherry picked from commit v1.11-1950-gba5a89b of 16-02-2012.
- * tests/conffile-leading-dot.test: Relax grepping of 'config.status'
- stderr, to cater for older autoconf. Issue revealed by a failure
- with autoconf 2.63 on Cygwin 1.5.25. See also automake bug#11093.
- 2012-03-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: update THANKS
- * THANKS: Add entry for Tim Landscheidt.
- 2012-03-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: terminate unfinished sentence, fix reference to a test case
- * doc/automake.texi (Using the TAP test protocol): Here.
- 2012-03-24 Tim Landscheidt <tim@tim-landscheidt.de> (tiny change)
- docs: fix some small typos and grammaros
- * doc/automake.texi (Using the TAP test protocol): Here ...
- * tests/tap-doc2.test: ... and here.
- 2012-03-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: remove duplicated entries in $(TESTS)
- * tests/list-of-tests.mk (handwritten_TESTS): Remove duplicated
- entries for test cases 'extra-portability*.test'.
- 2012-03-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: update TODO file
- We don't have to make creation of $(foodir) conditional when
- foo_PRIMARY is conditionally defined; that has been solved in
- a more sweeping way by commit v1.11-759-g368f1c4 of March 18,
- which solved bug#11030 and bug#10997.
- The "check" target already depends on the "all" target.
- Remove comment "investigate problems with conditionally defined
- libraries"; it is aimed at automake 1.5 (!) and too terse and old
- to be useful now.
- Remove the 12 years old suggestion that "distcheck should make sure
- that each file that uses _() is listed in POTFILES.in"; this is
- handled by gnulib-provided syntax check 'sc_po_check' already today.
- Don't tell to "Run automake before libtool"; automake does not
- automatically run libtool anymore today.
- Remove hint about the possibility to "rewrite automake in guile" or
- "add a GUI": we are not going to do so.
- The automatic de-ANSI-fication feature has already been remove, so
- no need to suggest its potential removal in the future.
- Remove reference to a prospective "cvs" option that could add some
- cvs-specific rules. First of all, CVS is falling out of use today.
- Secondly, and most to the point, instead of guessing which VCS
- is going to be most popular and try to hack support for it into
- automake, we should leave it to developer-specific makefile
- fragments offered by projects like Gnulib to provide such rules
- (they are already doing so with succcess).
- About DOS support: it should actually be dropped, not extended.
- Add link about Karl Berry's proposal of preferring HTML over Info
- documentation installed in the local system:
- <http://lists.gnu.org/archive/html/texinfo-devel/2012-03/msg00018.html>
- Remove items about "beautification" of output Makefile.in; they
- are pretty obvious, and mostly noise (after all, everybody prefers
- clean output where possible). Leave it to any developer doing
- future refactorings to find out low-hanging and/or high-impact
- optimizations and beatifications of the generated Makefiles.
- Remove item about internationalization: we're not going to
- implement it.
- Remove an item explicitly marked as "not that it matters".
- The order of files in a distribution tarball does not really
- matter, nobody has ever complained about it, so do not worry
- about it.
- Remove the suggestions about allowing hierarchy of dirs to share
- one aclocal.m4 and about printing full file name of Makefile.am
- or configure.in when giving error, in order to help very large
- trees: nobody has ever complained about the current behaviours,
- so no real need to change them.
- 2012-03-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: bootstrapping issues with 'list-of-tests.mk'
- * tests/list-of-tests.mk: This file is expected to be executed
- directly with make from the bootstrap script, so we can't use
- Automake '##' comments after line continuations.
- 2012-03-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maint: move definition of XFAIL_TESTS near TESTS
- Actually, after the trivial merge conflicts have been solved, what
- this change actually does is moving the definition of XFAIL_TESTS
- near that of handwritten_TESTS. But the rationale is the same of
- that of commit 'v1.11-761-gabf40ce' (being merged here), and still
- works, so all is good.
- 2012-03-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: move definition of XFAIL_TESTS near TESTS
- The $(TESTS) variable is defined in file 'tests/list-of-tests.mk',
- while the $(XFAIL_TESTS) variable is defined in 'tests/Makefile.am'.
- This means that when a new xfailing test is to be added, two files
- must be touched; this is suboptimal and slightly confusing.
- * tests/Makefile.am (XFAIL_TESTS): Definition moved ...
- * tests/list-of-tests.mk: ... here.
- 2012-03-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures caused by uses of 'configure.in'
- Issue introduced by the recent merges of maint into master, and
- revealed by "make maintainer-check".
- * tests/aclocal-install-fail.test: Likewise.
- * tests/aclocal-install-mkdir.test: Likewise.
- * tests/aclocal-verbose-install.test: Likewise.
- * tests/installdir.test: Likewise.
- * tests/instdir-cond2.test: Likewise.
- * tests/instdir-no-empty.test: Likewise.
- * tests/python-pr10995.test: Likewise.
- * tests/aclocal-no-install-no-mkdir.test: Likewise.
- 2012-03-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- install-mans: avoid spurious failure with NetBSD make
- install: don't create empty dirs when an empty 'foo_PRIMARY' is used
- aclocal: remove a couple of useless imports
- aclocal: create local directory where to install m4 files
- 2012-03-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- install-mans: avoid spurious failure with NetBSD make
- * lib/am/mans.am: After the changes introduced by previous commit
- v1.11-759-g368f1c4, some manpage installation recipes started to
- fail spuriously on NetBSD 5.1 make. Apparently, the system make
- there eats backslashes used to escape whitespace characters in the
- relevant recipes. Revert to slightly slower but safer idioms that
- avoid the need of such escaping.
- 2012-03-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- install: don't create empty dirs when an empty 'foo_PRIMARY' is used
- Fixes automake bug#11030 and bug#10997.
- An empty declaration of "foo_PRIMARY" in a Makefile.am used to
- cause the generated install rules to create the directory $(foodir)
- anyway, even if nothing was to be installed there.
- While this could be seen as a convenient way to create a $(foodir)
- directory upon "make install" (respecting $(DESTDIR) settings and
- such), it also caused problems with conditionals; for example, an
- input of:
- if FALSE
- pgkdata_DATA = something
- endif
- caused the generated install rules to unconditionally create the
- $(pkgdatadir) directory (see automake bug#10997).
- Also, a user wanting to create an empty directory upon installation
- can easily do so with a custom install hook, as in:
- installdirs-local:
- $(MKDIR_P) $(DESTDIR)$(foodir)
- install-data-hook: installdirs-local
- On the other hand, the old behavior of "always create $(foodir),
- even if 'foo_PRIMARY' is empty" was harder and more tricky to
- override.
- Thus, from now on, an empty declaration of "foo_PRIMARY" will not
- cause the directory $(foodir) to be created upon "make install"
- anymore.
- * lib/am/data.am, lib/am/java.am, lib/am/libs.am, lib/am/lisp.am,
- lib/am/ltlib.am, lib/am/mans.am, lib/am/progs.am, lib/am/python.am,
- lib/am/scripts.am, lib/am/texinfos.am: Adjust install rules to avoid
- creating an installation directory if no files are actually to be
- installed there.
- * tests/instdir-empty.test: Remove, it was testing a semantic
- opposite to the one we now want and implement.
- * tests/instdir-no-empty.test: New test, check the new semantic.
- * tests/instdir-cond.test: Enhance. Move the still-failing part
- of the test ...
- * tests/instdir-cond2.test: ... here.
- * tests/list-of-tests.mk, tests/Makefile.am (XFAIL_TESTS): Update.
- * tests/java3.test: Adjust to avoid spurious failures.
- * HACKING, NEWS, THANKS: Update.
- 2012-03-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: remove a couple of useless imports
- * aclocal.in (File::stat, Cwd): Remove these imports, they are not
- really required.
- 2012-03-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: create local directory where to install m4 files
- Fixes automake bug#8168 and bug#10816.
- A call like "aclocal -I m4 --install" used to fail if the 'm4'
- directory wasn't pre-existing. This could be particularly
- annoying when running in a checked-out version from a VCS like
- git, which doesn't allow empty directories to be tracked.
- * aclocal.in (File::Path): New import.
- (scan_m4_dirs): Don't die if the first directory of type FT_USER
- doesn't exist and the '--install' option was given; that directory
- will be created later ...
- (install_file): ... here. Change signature of this function: now
- it takes as second argument the destination directory rather than
- the destination file. Crate the destination directory if it
- doesn't already exist. In verbose mode, tell what is being copied
- where.
- (write_aclocal): Update to the changes in 'install_file'.
- * NEWS, THANKS: Update.
- * tests/aclocal-install-fail.test: New test.
- * tests/aclocal-install-mkdir.test: Likewise.
- * tests/aclocal-no-install-no-mkdir.test: Likewise.
- * tests/aclocal-verbose-install.test: Likewise.
- * tests/list-of-tests.mk: Add them.
- 2012-03-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- python: avoid failures due to $(am__py_compile) being undefined
- python: expose automake bug#10995
- 2012-03-15 Steven Drake <sbd@NetBSD.org> (tiny change)
- python: avoid failures due to $(am__py_compile) being undefined
- Fixes automake bug#10995, introduced in commit v1.11-372-gb46debf.
- * lib/am/python.am: Move the definition of 'am__py_compile' to
- ensure it is always emitted in the output Makefile.in. Previously,
- this wouldn't have happened if the input Makefile.am contained a
- 'noinst_PYTHON' declaration before a 'python_PYTHON' one.
- * tests/Makefile.am (XFAIL_TESTS): Remove 'python-pr10995.test' and
- 'python.test'.
- * NEWS: Update.
- 2012-03-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- python: expose automake bug#10995
- * tests/python.test: Expose the bug in grepping tests.
- * tests/python-noinst.test: New functional test to expose the
- bug.
- * tests/list-of-tests.mk: Add it.
- * tests/Makefile.am (XFAIL_TESTS): Add the new test and the
- extended one.
- * THANKS: Update.
- 2012-03-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: one more use of 'unindent' function
- * tests/yacc-d-cxx.test (write_parse, write_main): Use 'unindent'
- instead of ad-hoc sed invocation to strip extra leading whitespace.
- 2012-03-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove redundant 'set -e' calls
- * tests/dist-pr109765.test: Do not set the 'errexit' shell flag,
- as it is already set by 'tests/defs'.
- * tests/instdir-cond.test: Likewise.
- * tests/instdir-empty.test: Likewise.
- * tests/lex-clean-cxx.test: Likewise.
- * tests/lex-clean.test: Likewise.
- * tests/lex-depend-cxx.test: Likewise.
- * tests/lex-depend.test: Likewise.
- * tests/lex-line.test: Likewise.
- * tests/lex-nodist.test: Likewise.
- * tests/lex-pr204.test: Likewise.
- * tests/silent-lex.test: Likewise.
- * tests/silent-yacc-headers.test: Likewise.
- * tests/silent-yacc.test: Likewise.
- * tests/vala-mix2.test: Likewise.
- * tests/yacc-auxdir.test: Likewise.
- * tests/yacc-bison-skeleton-cxx.test: Likewise.
- * tests/yacc-bison-skeleton.test: Likewise.
- * tests/yacc-clean-cxx.test: Likewise.
- * tests/yacc-cxx.test: Likewise.
- * tests/yacc-d-cxx.test: Likewise.
- * tests/yacc-deleted-headers.test: Likewise.
- * tests/yacc-depend.test: Likewise.
- * tests/yacc-depend2.test: Likewise.
- * tests/yacc-line.test: Likewise.
- * tests/yacc-mix-c-cxx.test: Likewise.
- * tests/yacc-weirdnames.test: Likewise.
- 2012-03-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: avoid spurious failures in get-sysconf.test
- scripts: bump the depcomp scriptversion
- sync: some auxiliary files synced from upstream
- coverage: an empty foo_PRIMARY should create directory $(foodir)
- coverage: make sure am__py_compile is defined when needed
- coverage: expose automake bug#10997
- coverage: expose automake bug#10975
- getopt: relax version requirement for perl
- + Extra non-trivial edits:
- * tests/dist-pr109765.test: Use 'configure.ac', not 'configure.in'.
- * tests/instdir-cond.test: Likewise.
- * tests/instdir-empty.test: Likewise.
- 2012-03-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure with older m4
- Reported by Panther Martin in automake bug#10866, diagnosed by
- Panther Martin and Eric Blake.
- Older GNU m4 versions (e.g., 1.4.6) did error reporting at the end
- of an error construct rather than the beginning. This was causing
- a spurious testsuite failure due to an off-by-one error in the line
- number reported in an aclocal diagnostic.
- * tests/cond41.test: Keep all the body of the 'AM_COND_IF'
- invocation on a single line, to avoid the off-by-one error.
- 2012-03-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures in get-sysconf.test
- This change fixes the last bit of automake bug#10866.
- * tests/get-sysconf.test: When Homebrew spawns a build, even if
- from a project's VCS, it stages the files in a new temporary
- directory, instead of building directly from a VCS checkout.
- This behaviour was causing a spurious failure in this test, which
- expected to find either a ChangeLog file or a .git directory in
- the source directory (the former happening when the test was run
- from a distribution tarball, the latter when it was run from a
- git checkout). The Homebrew issue shows that these expectations
- are not truly warranted, so relax the test to just give a warning,
- not a failure, in case they do not hold. Since we are at it, fix
- an unrelated weakness in the displaying of the git log, which
- could have failed when the builddir was not a subdirectory of the
- srcdir.
- 2012-03-12 Peter Rosin <peda@lysator.liu.se>
- scripts: bump the depcomp scriptversion
- * lib/depcomp (scriptversion): Bump, to account for recent changes.
- 2012-03-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: some auxiliary files synced from upstream
- * lib/texinfo.tex: Synced from upstream, by "make fetch".
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- * lib/gnupload: Likewise.
- 2012-03-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: an empty foo_PRIMARY should create directory $(foodir)
- For example, a Makefile.am containing the definition:
- pkgdata_DATA =
- should cause the 'install' rule of the generated Makefile.in to
- create the '$(pkgdatadir)' directory (respecting any DESTDIR
- setting as well).
- Suggestion by Peter Breitenlohner in automake bug#10997.
- 2012-03-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: make sure am__py_compile is defined when needed
- See automake bug#10995.
- * tests/python.test: Also make sure 'am__py_compile' is defined
- correctly in the generated Makefile.in.
- 2012-03-12 Daiki Ueno <ueno@unixuser.org> (tiny change)
- coverage: expose automake bug#10997
- * tests/instdir-cond.test: New test.
- * tests/list-of-tests.mk: Add it.
- * tests/Makefile.am (XFAIL_TESTS): Likewise.
- 2012-03-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#10975
- * tests/dist-pr10975.test: New test.
- * tests/list-of-tests.mk: Add it.
- * tests/Makefile.am (XFAIL_TESTS): Likewise.
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- getopt: relax version requirement for perl
- * lib/Automake/Getopt.pm: Require perl 5.6.0, not 5.6.2: the former
- is enough. See also commit 'v1.11-2054-g7df05a0' on master (dated
- 04-03-2012).
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cosmetics: fix repeated changelog entry heading
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix repeated changelog entry heading
- 2012-03-07 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'maint'
- 2012-03-07 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'msvc' into maint
- This merge remedies the confusing situation that some changes
- destined for both the master branch and the release branch (a.k.a.
- branch-1.11) currently needs to be made on the non-obvious msvc
- branch and not on the more natural maint branch. This has caused
- a seemingly endless string of less than optimal commits.
- The reason for the confusion stems from the fact that the changes made
- on the msvc branch became too radical and was considered only suitable
- for the master branch, and was thus written in a form suitable for
- master and then merged there. Later, the msvc branch was merged
- directly into branch-1.11, in order to rush the new features to the
- market and to keep the released scripts (lib/ar-lib, lib/compile and
- lib/depcomp) consistent with those on the master branch. However,
- some changes had to be made to the features added by the msvc branch
- in order for them to fit the requirements of branch-1.11, notably that
- the warnings issued in the extra-portability class cannot be enabled
- by -Wall in the 1.11.x maintenance releases.
- In retrospect, it would have been better to not merge msvc directly
- into branch-1.11, but instead do it via the maint branch (followed up
- with a dummy merge from maint into master) the moment it was decided
- that the msvc changes should make it into branch-1.11.
- All in all, this merge is going to affect neither the master branch
- nor branch-1.11, since it is followed up with dummy merges masking all
- changes. The merge is made to maintain the sanity of the poor
- developers, who wishes to once again have a working maint branch.
- Discussion about merging the msvc branch into branch-1.11:
- http://lists.gnu.org/archive/html/automake/2011-10/msg00030.html
- Discussion about why this merge hasn't happened before:
- http://lists.gnu.org/archive/html/automake/2011-12/msg00051.html
- Extra edits below.
- * lib/Automake/ChannelDefs.pm: Use the version from branch-1.11.
- * tests/ar-lib3.test: Likewise.
- * tests/ar-lib4.test: Likewise.
- * tests/extra-portability.test: Likewise.
- * tests/extra-portability2.test: Likewise.
- * tests/extradep.test: Likewise.
- * tests/extradep2.test: Likewise.
- * tests/list-of-tests.mk: Likewise.
- * HACKING: Backport the version from branch-1.11 while at it (as the
- change on branch-1.11 is also present on master via an unrelated
- commit), even though this change has nothing to do with the changes
- on the msvc branch.
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove useless sleep from tests on remake rules
- The sleeps were there to make generated autotools files strictly
- newer than their sources; however, this is not necessary, since
- POSIX mandates that make considers files with the same timestamp
- of their dependencies to be up-to-date.
- * tests/remake9a.test: Remove useless $sleep.
- * tests/remake9b.test: Likewise.
- * tests/remake9c.test: Likewise.
- * tests/remake9d.test: Likewise.
- * tests/remake10a.test: Likewise.
- * tests/remake10b.test: Likewise.
- * tests/remake10c.test: Likewise.
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'msvc' into master (dummy merge)
- 2012-03-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into msvc
- * maint:
- news: describe recently-fixed bug in vala support
- depcomp: add support for IBM xlc/xlC compilers
- 2012-03-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge remote-tracking branch 'origin/master'
- 2012-03-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- news: describe recently-fixed bug in vala support
- depcomp: add support for IBM xlc/xlC compilers
- 2012-03-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: describe recently-fixed bug in vala support
- * NEWS (Long-standing bugs): Document fix for bug#10894, fixed
- by commit 'v1.11-696-g51f61df' of 27-02-2012.
- 2012-03-06 Michael Hofmannm <hofma@googlemail.com> (tiny change)
- depcomp: add support for IBM xlc/xlC compilers
- * lib/depcomp (xlc): New depmode.
- * NEWS, THANKS: Update.
- 2012-03-06 Peter Rosin <peda@lysator.liu.se>
- tests: do not clobber the $CC set by AM_PROG_CC_C_O
- If $CC is originally a losing compiler, AM_PROG_CC_C_O will
- modify $CC. "$MAKE -e" will then clobber this modified $CC
- and reintroduce the raw losing compiler causing the test
- to fail, as subdir-objects is in effect.
- * tests/yacc-dist-nobuild-subdir.test: Drop -e from the $MAKE
- invocations. This is safe since DISTCHECK_CONFIGURE_FLAGS is not
- specified in the Makefile and since the YACC override is carried
- over from the configure invocation into the Makefile making it
- redundant to specifiy it again in the environment for $MAKE.
- 2012-03-06 Peter Rosin <peda@lysator.liu.se>
- tests: explicitly state that our lexers do not require unistd.h
- By default, GNU flex generates code that is dependent on unistd.h,
- which is not portable to non-ANSI systems causing spurious test
- failures.
- * tests/cond35.test (tscan.l): Define YY_NO_UNISTD_H.
- * tests/lex-clean.test (lexer.l): Likewise.
- * tests/lex-depend.test (joe.l): Likewise.
- * tests/lex-lib-external.test (foo.l): Likewise.
- * tests/lex-lib.test (foo.l): Likewise.
- * tests/lex-libobj.test (foo.l): Likewise.
- * tests/lex-line.test (zardoz.l): Likewise.
- * tests/lex-nodist.test (lexer.l): Likewise.
- * tests/lex-noyywrap.test (foo.l): Likewise.
- * tests/lex-pr204.test (lexer.l): Likewise.
- * tests/lex-subobj-nodep.test (subl/sl.l): Likewise.
- * tests/lex3.test (foo.l): Likewise.
- * tests/lex5.test (foo/foo.l): Likewise.
- * tests/lexvpath.test (lexer.l): Likewise.
- * tests/silent-lex.test (foo.l): Likewise.
- * tests/silent-many-gcc.test (foo5.l): Likewise.
- * tests/silent-many-generic.test (foo5.l): Likewise.
- * tests/lex-clean-cxx.test (parsefoo.lxx): Likewise. Also specify
- the never-interactive option to prevent usage of the non-ANSI
- function isatty(3) (from unistd.h).
- * tests/lex-depend-cxx.test (joe.ll): Likewise.
- * tests/README: Describe these quirks.
- 2012-03-06 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'msvc'
- * msvc:
- scripts: support -I <dir> -L <dir> and -l <lib> for cl in compile
- 2012-03-06 Peter Rosin <peda@lysator.liu.se>
- scripts: support -I <dir> -L <dir> and -l <lib> for cl in compile
- POSIX mandates that the compiler accepts a space between the -I,
- -l and -L options and their respective arguments. See
- http://pubs.opengroup.org/onlinepubs/000095399/utilities/c99.html
- * lib/compile (func_cl_dashl): New function with factored out code
- for implementing the -l option for the cl wrapper.
- (func_cl_dashL): New function with factored out code implementing
- the -L option for the cl wrapper.
- (func_cl_wrapper): Use func_cl_dashl to implement both -l <lib>
- and -l<lib>, and func_cl_dashL to implement both -L <dir> and
- -L<dir>. Also add support for -I <dir>.
- (scriptversion): Update.
- * tests/compile3.test: Test both with and without a space between
- -I, -l and -L and their respective arguments.
- * tests/compile5.test: Likewise.
- * tests/compile6.test: Likewise.
- * tests/compile3.test: Likewise.
- * NEWS: Update.
- 2012-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: drop 'Automake::Struct' module
- Now that we require Perl 5.6, we can drop the 'Automake::Struct'
- module, which was basically just a backport of Perl 5.6's
- 'Class::Struct' to Perl 5.5.
- * automake.in: Use 'Class::Struct', not 'Automake::Struct'.
- * lib/Automake/Struct.pm: Delete.
- * lib/Automake/Makefile.am (dist_perllib_DATA): Remove it.
- 2012-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: require perl 5.6 throughout
- That version of perl is quite old already, so it should be OK to
- require it. More importantly, it is the older perl versions the
- developers can currently use for testing, thus it's safer and more
- honest to just require it throughout. And anyway, we were already
- requiring it in Automake::Getopt, which implied that both automake
- and aclocal wouldn't have worked in practice with an older perl
- version.
- See also the discussion related to automake bug#10925.
- * lib/Automake/ChannelDefs.pm: Adjusted to require perl 5.6.
- * lib/Automake/Channels.pm: Likewise.
- * lib/Automake/Condition.pm: Likewise.
- * lib/Automake/Configure_ac.pm: Likewise.
- * lib/Automake/DisjConditions.pm: Likewise.
- * lib/Automake/FileUtils.pm: Likewise.
- * lib/Automake/General.pm: Likewise.
- * lib/Automake/Item.pm: Likewise.
- * lib/Automake/ItemDef.pm: Likewise.
- * lib/Automake/Location.pm: Likewise.
- * lib/Automake/Options.pm: Likewise.
- * lib/Automake/Rule.pm: Likewise.
- * lib/Automake/RuleDef.pm: Likewise.
- * lib/Automake/Struct.pm: Likewise.
- * lib/Automake/VarDef.pm: Likewise.
- * lib/Automake/Variable.pm: Likewise.
- * lib/Automake/Version.pm: Likewise.
- * lib/Automake/Wrap.pm: Likewise.
- * lib/Automake/XFile.pm: Likewise.
- 2012-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove useless escaping for "'" character
- 2012-03-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: remove redundant and unused requirements
- * tests/defs (xsi-bin-sh, xsi-shell): Remove these requirements,
- they have never been used.
- (cygpath, cscope): Recognizing these explicitly is mostly redundant;
- just merge them with the default "catch all" rule, and adjust that
- accordingly.
- (bzip2): Adjust some outdated comments.
- 2012-03-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure on case-insensitive file systems
- See automake bug#10866.
- * tests/java-uninstall.test: Relax the test a little to cater to
- case-insensitive file systems, like HFS+ on MacOS X.
- 2012-03-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: more about planned backward incompatibilities
- * NEWS (Future backward-incompatibilities): Starting from the next
- major Automake versions, the parallel testsuite driver will be used
- by default, instead of the serial testsuite driver as in the past.
- 2012-03-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix few spurious failures
- * syntax-checks.mk: Fix some spurious failures by tightening and/or
- tweaking few checks so that some false positives end up whitelisted.
- 2012-03-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to exported MAKEINFO
- * tests/txinfo30.test: Unset variable MAKEINFO, as its content could
- take precedence over our faked makeinfo script and cause a spurious
- failure. Reported as part of automake bug#10866. Add trailing ':'
- command since we are at it.
- 2012-03-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure in a vala test
- * tests/vala-mix2.test: Append to 'configure.ac' rather than to
- 'configure.in'. Reported as part of automake bug#10866, and also
- revealed by "make maintainer-check".
- 2012-03-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- self checks: relax tests on cleanup
- Some find(1) implementations have problems operating recursively on
- directories having subdirectories with null permissions, even when
- the permissions of such subdirectory should be fixed by find before
- it descends into them; for example, with this setup:
- % mkdir a a/b
- % chmod 000 a/b
- a command like this:
- % find a -type d ! -perm -700 -exec chmod u+rwx '{}' ';'
- fails with this diagnostic on MacOS X 10.7:
- find: a/b: Permission denied
- and with this diagnostic on Solaris 10:
- find: cannot read dir a/b: Permission denied
- The problem is that our self checks were simply demanding too much
- from our cleanup trap: our tests never use subdirectories with null
- permissions, so it doesn't matter if the cleanup trap fails to
- handle those. Just relax the self checks to avoid such useless
- testsuite noise.
- * tests/self-check-cleanup.tap: Only try directories missing
- write permissions, not with null permission. That should be
- enough for our usages.
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'msvc'
- * msvc:
- news: add entry about recent 'ar-lib' changes
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- news: add entry about recent 'ar-lib' changes
- * NEWS: Add information about recent 'ar-lib' changes.
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- scripts: recognize the "q", "s" and "S" actions/modifiers in ar-lib
- * lib/ar-lib: Implement the "q" (quick) action as a synonym
- for "r" (replace). Ignore "s" (symbol index) and "S" (no symbol
- index) when used as modifiers and "s" when used as a command,
- there is simply no way for Microsoft lib to not update the
- symbol table index in the archive.
- (scriptversion): Update.
- * tests/ar-lib.test: Check the added behavior. Also add checks
- for the recently added "u" (update) and "v" (verbose) modifiers.
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'fix-vala-test'
- * fix-vala-test:
- tests: fix (harmless) botched merge
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- tests: fix (harmless) botched merge
- Commit v1.11-1750-g9928ea5 of 2012-01-16 (Merge branch 'maint')
- reordered the macro calls so that AM_PROG_AR ended up after
- AC_PROG_LIBTOOL, which is not allowed. This error went by
- undetected since AC_PROG_LIBTOOL was redefined, but that also
- removed the ordering requirement making the error benign.
- * tests/vala.test: Put AM_PROG_AR before AC_PROG_LIBTOOL.
- 2012-03-02 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'maint' into msvc
- 2012-03-01 Peter Rosin <peda@lysator.liu.se>
- scripts: recognize the "q", "s" and "S" actions/modifiers in ar-lib
- * lib/ar-lib: Implement the "q" (quick) action as a synonym
- for "r" (replace). Ignore "s" (symbol index) and "S" (no symbol
- index) when used as modifiers and "s" when used as a command,
- there is simply no way for Microsoft lib to not update the
- symbol table index in the archive.
- (scriptversion): Update.
- * tests/ar-lib.test: Check the added behavior. Also add checks
- for the recently added "u" (update) and "v" (verbose) modifiers.
- 2012-02-29 Peter Rosin <peda@lysator.liu.se>
- tests: do not try to use ar(1) when $AR points to something else
- * tests/libobj10.test: Move the archive listing commands to the
- Makefile, so that $AR - as determined by configure - can be
- used.
- * tests/libobj17.test: Likewise.
- 2012-02-29 Peter Rosin <peda@lysator.liu.se>
- tests: make tests behave for the AR=lib case
- These below tests were left mostly as-is when AM_PROG_AR was
- introduced (with libobj16b being the exception, that test was
- forgotten or has regressed since), in a misguided attempt to
- not make them diverge from the original problem reports.
- Modernize them so that they do not FAIL when $AR is Microsoft
- 'lib'.
- * tests/libobj16b.test: Add AM_PROG_AR to configure.ac and remove
- the no-longer-needed -Wno-extra-portability option when invoking
- automake.
- * tests/pr300-lib.test: Likewise.
- * tests/pr300-ltlib.test: Likewise.
- * tests/pr307.test: Likewise.
- * tests/pr401.test: Likewise. Also fetch the 'ar-lib' script.
- * tests/pr401b.test: Likewise.
- * tests/pr401c.test: Likewise.
- 2012-02-29 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- vala: fix 'valac' calls for projects with mixed Vala/C
- vala: expose automake bug#10894
- 2012-02-29 Dave Goodell <goodell@mcs.anl.gov> (tiny change)
- Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure with Portland Compilers
- * tests/silent-many-generic.test (configure.ac): Be more careful
- in the workaround to avoid spurious failures with C++ compilers
- containing the string "CC" in their names; this avoids spurious
- failures with at least the Sun Studio C++ compiler (when named
- "sunCC") and the Portland Group C++ Compiler ("pgCC").
- Also handle arguments with whitespace correctly in the 'am--cxx'
- temporary wrapper.
- * THANKS: Update.
- 2012-02-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure when dependency tracking is unavailable
- Report by Dave Goodell. See automake bug#8880.
- * tests/yacc-dist-nobuild.test: Run the sanity check that aims at
- ensuring we really cover the expected code paths in a new build
- directory, to avoid spurious failures when automatic dependency
- tracking is disabled.
- 2012-02-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: fix 'valac' calls for projects with mixed Vala/C
- Fixes automake bug#10894.
- * automake.in (lang_vala_finish_target): Strip non-vala files
- from the dependencies of vala stamps, and from the invocation
- of valac compiler. Related refactorings.
- * tests/Makefile.am (XFAIL_TESTS): Remove 'vala-mix2.test'.
- 2012-02-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: expose automake bug#10894
- * tests/vala-mix2.test: New test.
- * tests/list-of-tests.mk: Add it.
- * tests/Makefile.am (XFAIL_TESTS): Likewise.
- * THANKS: Update.
- 2012-02-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove a duplicated copyright line
- * tests/list-of-tests.mk: Remove a duplicated copyright line.
- 2012-02-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: --program-transform shouldn't transform too much
- Stemmed from a report by Vladimir 'φ-coder/phcoder' Serbinenko:
- <http://lists.gnu.org/archive/html/automake/2012-02/msg00025.html>
- * tests/transform3.test: New test, checking that --program-transform
- does not transform too much stuff (in particular, pkglibexecdir,
- pgklibdir and pkgdatadir).
- * tests/list-of-tests.mk: Add it.
- * THANKS: Update.
- 2012-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure (line too long in awk)
- * tests/parallel-tests-many.test: Use perl, not awk, to write the
- Makefile.am with (deliberately) overly long TESTS content, as some
- inferior awk implementations (e.g., Solaris 10 /usr/bin/awk) are
- unable to handle the long lines used there and die with errors like:
- "awk: string too long near line 5".
- 2012-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures when awk is "traditional awk"
- * tests/Makefile.am (do_subst): Also substitute '@AWK@'.
- * tests/defs-static.in ($AWK): New, user-overridable and defaulting
- to the substituted '@AWK@'.
- * tests/defs (fetch_tap_driver): When the shell+awk implementation
- of the TAP driver is required, export AM_TAP_AWK to point to a
- properly capable awk, since the default awk might be a "traditional"
- implementation, which won't be enough for our driver. This is the
- right fix, since a proper setting of AM_TAP_AWK in the driver's
- environment is expected (and documented to be required) in real
- world uses of 'tap-driver.sh'.
- 2012-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid many spurious failures for shells with busted 'set -e'
- Some versions of the BSD Korn shell wrongly bail out when the
- 'errexit' shell flag is active and the left-hand command in a
- "&&" list fails and that list is the *last* command of an entry
- in a "case" statement.
- * tests/defs (gcc, g++, gcj): Work around that.
- 2012-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: don't create /usr/share/aclocal as empty
- Related to automake bug#10791.
- Since automake 1.11.2, aclocal no longer succeeds if the system
- acdir '${datadir}/aclocal' (i.e., "/usr/share/aclocal" when
- ${prefix} is "/usr") does not exist. So we now have a directory
- *installed empty by default*, but whose existence is required by
- aclocal in order for it to function at all. This might be
- confusing, and sounds like asking for trouble in the long term.
- So we now also install a simple README file in that directory,
- which briefly explains its purpose and warn that its existence
- is required by the normal aclocal functioning.
- * m4/acdir/README: New file.
- * m4/Makefile.am (dist_system_ac_DATA): Add it.
- * m4/acdir/.placeholder: Delete, no more needed.
- * m4/Makefile.am (EXTRA_DIST): Remove it.
- * THANKS: Update.
- 2012-02-26 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: document format for git commit messages
- * HACKING (Writing a good commit message): New section.
- (Working with git): A related minor adjustment.
- 2012-02-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: improve 'dist-hook' documentation
- * doc/automake.texi (The dist Hook): Explicitly document the fact
- that the dist-hook should account for the case where the source
- tree is read-only, mostly for the benefit of distcheck. Since
- we are at it, do some minor unrelated rewordings, and remove
- obsolescent advice. Motivated by the discussion on automake
- bug#10878.
- * tests/disthook.test: New test.
- * tests/disthook-perms.test: Delete as obsolete.
- * tests/list-of-tests.mk: Adjust.
- 2012-02-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: improve "make distcheck" documentation
- * doc/automake.texi (Checking the Distribution): The fact that
- "make distcheck" uses a read-only srcdir wasn't documented clearly
- enough here. Fix that. Since we are at it, be more explicit
- about the steps undertaken by "make distcheck", and re-organize
- this section a bit. Motivated by the discussion on automake
- bug#10878.
- (distcleancheck): Rename this node (in the "FAQ" section) ...
- (Errors with distclean): ... to this.
- Add a proper "FIXME" comment.
- 2012-02-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: proper capitalization and full stops in 'm4/depend.m4'
- 2012-02-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: dist-hook and distcheck-hook can modify file permission
- See automake bug#10878.
- * tests/dist-hook-perms.test: New test, checking that the user can
- use the 'dist-hook' target to modify permissions of distributed
- files before putting them in the distribution tarball.
- * tests/distcheck-writable-srcdir.test: New test, checking that the
- user can use 'distcheck-hook' to ensure his packages is built by
- "make distcheck" with a writable srcdir. This goes against the GNU
- Coding Standards, but some package authors might not care about
- them too much, and it's nice to support their use case too.
- * tests/list-of-tests.mk: Add them.
- 2012-02-25 Jim Meyering <meyering@redhat.com>
- tests: avoid spurious failure when gcj is not installed
- Since yesterday's commit, v1.11-2019-g4d2bf42,
- the gcj4 test would fail when gcj is not installed.
- * tests/defs-static.in (GNU_GCJ, GNU_GCJFLAGS): Define.
- * tests/Makefile.am (do_subust): Add those to the list of
- substituted symbols.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: look for GNU Java compiler at configure time
- Do this for consistency with what is done with other compilers.
- * configure.ac: Look for GNU java compiler at configure time.
- * tests/defs (gcj): Adjust and simplify.
- ($am__tool_prefix): Remove definition, it's not used anymore.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: in Automake::Options (no semantic change)
- * lib/Automake/Options.pm: Prefer leading spaces to leading tabs
- throughout. Minor whitespace and comment changes.
- (_process_option_list): Simple refactoring to make the code more
- pleasant to read and easier to modify in the future. This
- refactoring also reduces code duplication, with the help of ...
- (_option_must_be_from_configure, _is_valid_easy_option): ... these
- new internal subroutines.
- * tests/tar3.test: Enhance.
- * tests/silent-amopts.test: New, checks that automake complains if
- the 'silent-rules' option is used in AUTOMAKE_OPTIONS.
- * tests/list-of-tests.mk: Add it.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: typofixes and whitespace changes
- * configure.ac: Fix a typo in comments.
- * aclocal.in: Get rid of latest form-feed (^L) usages.
- * automake.in: Likewise.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: looks for GNU compilers at configure time
- This way, if the generic C compiler determined configure time is
- recognized to be the GNU C compiler, we can reuse it instead of
- looking for a compiler named "gcc" (over and over again) in the
- test scripts requiring the GNU C compiler. Ditto for the C++,
- Fortran, and Fortran 77 compilers.
- This change will improve coverage by allowing us to more easily
- use non-default GNU compilers throughout the testsuite.
- And as a bonus, this change also removes a weakness from our
- testsuite that could cause spurious failures when flags passed
- to the generic compilers were erroneously reused for the GNU
- compilers; see automake bug#10859.
- * configure.ac: Look for the GNU compilers explicitly. Improve
- some configure output and diagnostic since we are at it.
- * tests/defs-static.in ($GNU_CC, $GNU_CXX, $GNU_FC, $GNU_F77):
- Initialize with the values determined at configure time (while
- allowing user overrides).
- * tests/Makefile.am (do_edit): Also substitute the configure-time
- values of GNU_CC, GNU_CXX, GNU_FC and GNU_F77.
- * tests/defs (gcc, g++, gfortran, g77): Use the values for the GNU
- compilers determined at configure time (i.e., $GNU_CC for the GNU
- C compiler, and so on).
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs, news: document planned removal of obsolete macros and features
- * NEWS (Future backward-incompatibilities): Document planned removal
- of several superseded and/or obsoleted macros, of the $(mkdir_p)
- variable and @mkdir_p@ substitution, and of the support for the
- two- or three-arguments invocation forms of AM_INIT_AUTOMAKE.
- * doc/automake.texi: Likewise.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: remove reference to lzma support, it has been removed
- Support for lzma compression in distribution tarball has been
- removed in commit 'v1.11-1674-g02e9072' of 01-01-2012, "dist:
- remove support for lzma (superseded by xz and lzip)", but was
- still documented in the manual.
- * doc/automake.texi: Remove references to the 'dist-lzma' option
- and to the lzma compression support.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fixlet in comment in automake
- * automake.in ($configure_dist_common): In the associated comment,
- refer to scanning of 'configure.ac', not 'configure.in'.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: assume 'test -x' is portable
- * lib/Makefile.am (installcheck-local): To verify that the installed
- scripts are actually executable, simply use 'test -x', instead of
- resorting to perl and its '-x' file operator. Today, 'test -x'
- should today be portable to any non-museum system. Since we are at
- it, improve diagnostic in case of failure.
- 2012-02-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- deptrack: avoid few forks in configure (minor optimization)
- * m4/depend.m4 (_AM_DEPENDENCIES): Use 'echo > file' instead of
- 'touch file' to ensure the creation of a dummy file. Adjust the
- comment that explains why we can't simply use ': > file': the
- problem this latter idiom tickles is present also with Solaris 10
- /bin/sh, not merely with Solaris 8 /bin/sh.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: remove an obsolete check
- * syntax-checks.mk (sc_perl_local_no_parens): Remove, we don't even
- allow the use of local but for the '$_' and '$~' special variables.
- (syntax_check_rules): Adjust.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: update w.r.t. change in quoting format
- * NEWS (New in 1.11.1a): State that we prefer to quote 'like this'
- or "like this" rather than `like this', as according to the new GCS
- recommendations.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: do not quote `like this', as per GCS recommendation
- * automake.in: Convert comments, diagnostic and help screen to the
- use of new quoting format 'like this' or "like this" rather than
- `like this'.
- * tests/stdlib2.test: Adjust.
- * tests/ltinstloc.test: Likewise.
- * tests/location.test: Likewise.
- * tests/libtool8.test: Likewise.
- * tests/ldadd.test: Likewise, and prefer trailing ':' over trailing
- 'Exit 0'.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- aclocal: do not quote `like this', as per GCS recommendation
- * aclocal.in: Convert comments, diagnostic and help screen
- to the use of new quoting format 'like this' or "like this"
- rather than `like this'.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- pm: do not quote `like this', as per GCS recommendation
- This patch converts the internal perl modules used by automake and
- aclocal to the use of new quoting format 'like this' or "like this"
- rather than `like this'.
- * lib/Automake/ChannelDefs.pm, lib/Automake/Channels.pm,
- lib/Automake/Condition.pm, lib/Automake/Configure_ac.pm,
- lib/Automake/DisjConditions.pm, lib/Automake/FileUtils.pm,
- lib/Automake/General.pm, lib/Automake/Item.pm,
- lib/Automake/Rule.pm, lib/Automake/Getopt.pm,
- lib/Automake/Options.pm, lib/Automake/Struct.pm,
- lib/Automake/VarDef.pm, lib/Automake/Variable.pm,
- lib/Automake/Version.pm, lib/Automake/XFile.pm: Update and
- adjust quoting format throughout, in comments and diagnostic.
- Some minor related rewordings and reformatting since we are
- at it.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- m4: do not quote `like this', as per GCS recommendation
- This patch converts the files comprising the automake's own build
- system to the use of new quoting format 'like this' or "like this"
- rather than `like this'.
- * m4/auxdir.m4, m4/ccstdc.m4, m4/depend.m4, m4/depout.m4, m4/tar.m4,
- m4/init.m4, m4/maintainer.m4, m4/make.m4, m4/missing.m4, m4/vala.m4,
- m4/mkdirp.m4, m4/sanity.m4, m4/silent.m4, m4/strip.m4: Update and
- adjust quoting format throughout, in comments and diagnostic. Some
- minor related rewordings and reformatting since we are at it. Bump
- serial numbers.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: do not quote `like this', as per GCS recommendation
- This patch converts the files implementing the automake's own build
- system to the use of new quoting format 'like this' or "like this"
- rather than `like this'.
- * bootstrap, configure.ac, syntax-checks.mk, Makefile.am,
- lib/Makefile.am, m4/Makefile.am, syntax-checks.mk: Update quoting
- format throughout, in comments and diagnostic. Some minor related
- rewordings and reformatting since we are at it.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: update advice w.r.t. release process
- * HACKING: Don't describe the obsolete 'git-release' target anymore.
- Instead, document the new and improved targets 'git-tag-release' and
- 'git-upload-release' (introduced in commit v1.11-674-gaf5f939 of
- 25-01-2012, "release: revamp rules to tag and upload the releases").
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: do not quote `like this', as per GCS recommendation
- * HACKING: Quote 'like this' or "like this", not `like this'. This
- is done for consistency with the new recommendations in the GNU
- Coding Standards, and because I've come to actually prefer the '...'
- and "..." quoting format over the `...' one.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- am: do not quote `like this', as per GCS recommendation
- This patch converts the automake-provided '*.am' fragments, and
- related files, to the use of new quoting format 'like this' or
- "like this" rather than `like this'.
- * lib/am/check.am: Update quoting format throughout, in comments
- and diagnostic. Some related rewordings, reformatting, and removal
- of redundant commands since we are at it.
- * lib/am/configure.am: Likewise.
- * lib/am/dejagnu.am: Likewise.
- * lib/am/depend2.am: Likewise.
- * lib/am/distdir.am: Likewise.
- * lib/am/inst-vars.am: Likewise.
- * lib/am/install.am: Likewise.
- * lib/am/lang-compile.am: Likewise.
- * lib/am/lisp.am: Likewise.
- * lib/am/ltlib.am: Likewise.
- * lib/am/mans.am: Likewise.
- * lib/am/progs.am: Likewise.
- * lib/am/remake-hdr.am: Likewise.
- * lib/am/subdirs.am: Likewise.
- * lib/am/tags.am: Likewise.
- * lib/am/texi-vers.am: Likewise.
- * lib/am/texibuild.am: Likewise.
- * lib/am/texinfos.am: Likewise.
- * lib/am/yacc.am: Likewise.
- 2012-02-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: quote 'like this', not `like this', as per GCS recommendation
- This patch converts the automake testsuite and related files, to
- the use of new quoting format 'like this' or "like this" rather
- than `like this'.
- This is done for consistency with the new recommendations in the GNU
- Coding Standards, and, well, because I've come to actually prefer
- the '...' and "..." quoting formats over the `...' one.
- * tests/README: Update quoting format throughout. Remove some
- "excessive" use of quoting, and throw in minor rewording where
- appropriate.
- * tests/Makefile.am: Likewise, for comments.
- * tests/CheckListOfTests.am: Likewise.
- * tests/defs-static.in: Likewise.
- * tests/defs: Likewise.
- * tests/trivial-test-driver: Likewise.
- * Many tests/*.tap, tests/*.test and tests/*.sh files: Likewise,
- and for the diagnostic and informational messages as well.
- * tests/gen-testsuite-part: Likewise, and for the generated tests
- as well.
- 2012-02-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- spy: "rm -f" and "rm -rf" without args are portable
- According to recent testing by Eric Blake, it seems that all
- non-museum rm(1) implementations don't complain if called without
- file operands, *if* the '-f' option is used. This behaviour will
- likely be mandated by future versions of the POSIX standard as
- well.
- We'd like to start assuming this rm(1) behaviour in future Automake
- releases, in order to simplify some automake-provided cleanup rules.
- So, for the moment, we add a new "spy" test in our test suite, to
- try ensuring that all the rm(1) implementation we encounter "in the
- wild" truly behaves as expected in this regard.
- For more references, see this discussion on the bug-autoconf list:
- <http://lists.gnu.org/archive/html/bug-autoconf/2012-02/msg00002.html>
- which sprang from coreutils bug#10819:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10819>
- and brought to the POSIX issue#542:
- <http://austingroupbugs.net/view.php?id=542>
- which has been accepted and will ensure that future version of the
- POSIX standards will mandate that 'rm' shouldn't complain if called
- without file operands, when the '-f' option is in use.
- * tests/spy-rm.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-02-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures under "make distcheck"
- * tests/tap-setup.sh: Pass also '-f' option to 'cp' invocations,
- so that files that have already been copied in without write
- permissions will still be overwritten where needed, instead of
- causing a spurious testsuite failure. Issue seen when the
- testsuite is run under "distcheck".
- * tests/defs (get_shell_script): Remove target file before
- overwriting it, for the same reason. Rework code flow a bit
- since we are at it.
- 2012-02-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: avoid spurious failure for 'parallel-tests-many.test'
- * tests/parallel-tests-many.test: Adjust grepping of "make check"
- and "make recheck" output to match the new format of the testsuite
- summary. Remove redundant 'set -e' call since we are at it.
- 2012-02-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: prefer 'configure.ac' over 'configure.in'
- With this change, our testsuite now uses 'configure.ac' as the
- name for the typical autoconf input, instead of the obsolescent
- 'configure.in' (which has been deprecated for several years, at
- least since autoconf 2.50).
- Most of the test cases changed by this commit have been
- automatically modified with this sed command (using GNU
- sed):
- sed -i 's/\<configure\(\\\?\)\.in\>/configure\1.ac/g'
- * syntax-checks.mk (sc_tests_no_configure_in): New syntax check.
- (syntax_check_rules): Add it.
- * tests/defs: Create stub for autoconf input in 'configure.ac',
- not in 'configure.in'. Adjust comments.
- ($AUTOCONF, $AUTOHEADER, $AUTORECONF): Remove workaround for the
- infamous debian autoconf wrapper: we don't need such workaround
- anymore now that we name our autoconf input as 'configure.ac'.
- For more information, see commit v1.11-564-g63da492 "test defs:
- hack to support autoconf-wrapper programs" of 16-12-2011.
- * tests/README: Use 'configure.ac', not 'configure.in'.
- * Many many tests: Likewise.
- * tests/backcompat3.test: Adjust to avoid spurious failures.
- * tests/backcompat5.test: Likewise.
- * tests/missing6.test: Likewise.
- * tests/backcompat6.test: Likewise, and extend a bit since we
- are at it.
- 2012-02-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#7868
- Expose the command-line length limit issue that can affect the
- Automake-generated parallel-tests harness, especially on systems
- where this limit is smaller (e.g., MinGW/MSYS).
- Suggestion by Bob Friesenhahn.
- * tests/parallel-tests-many.test: New test. We have verified that
- it actually exposes the bug#7868, as it passes when we opportunely
- reduce the number of test cases in $(TESTS). Checked on NetBSD 5.1
- 64bit, Debian unstable 32bit, Solaris 10 64bit and Cygwin 1.5 32bit.
- * tests/list-of-tests.mk (handwritten_TESTS): Add it.
- * tests/Makefile.am (XFAIL_TESTS): Likewise.
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove obsoleted "icc" requirement
- * tests/defs (icc): This requirement is not used anymore by any
- test case, so remove it.
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: fix typo in tests/README
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: "make installcheck" shouldn't run the testsuite twice
- * Makefile.am (installcheck-local): Remove. The "installcheck"
- target provided by automake is already a recursive target, so
- there's no need to have an 'installcheck-local' recipe that
- manually recurse into 'tests/'. In fact, such a manual recursion
- was causing the testsuite to be run twice by "make installcheck".
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: minor fixlets and reorganization
- * NEWS: Get rid of form-feed characters (^L) throughout the file.
- Use separator lines instead (composed by 76 '~' characters), or
- just an extra blank lines for older less verbose entries (those
- predating the 1.8 release).
- (New in 1.11.3): Move description of planned future backward
- incompatibilities that won't make it to 1.12 ...
- (New in 1.11a): ... in here. Quote 'like this', not `like this'.
- Other minor miscellaneous rewordings and fixlets.
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: few typofixes
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: new option 'serial-tests'
- Currently, automake offers a 'parallel-tests' option to enable the
- use of the parallel testsuite harness in the generated Makefiles,
- but no option to explicitly state the intention of using the older
- serial testsuite driver (which is currently the default).
- This makes the parallel test harness seems like a second-class
- citizen (while actually it should be the other way around); more
- importantly, it will prevent us from making the parallel harness
- be the default one in future automake versions, since the users
- of the serial harness would then have no way to instruct automake
- to continue using it.
- We solve all of this by introducing a new 'serial-tests' option.
- * lib/Automake/Options.pm (_process_option_list): Recognize the
- new option, and related minor refactoring.
- * tests/serial-tests.test: New test.
- * tests/list-of-tests.mk: Add it.
- * doc/automake.texi: Update.
- * NEWS: Likewise.
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a timestamp issue, and other minor buglets
- Reported by Panther Martin in automake bug#10848.
- * tests/conffile-leading-dot.test: Add a proper '$sleep' invocation,
- to avoid spurious failures on fast systems without sub-second
- timestamp resolutions. Add other minor related and unrelated
- improvements and fixlets since we are at it.
- 2012-02-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- automake: new option to print location of scripts and data files
- With this change, we add a new automake option '--print-libdir'
- that prints (on stdout) the path of the directory containing the
- Automake-provided scripts (e.g., 'missing' and 'install-sh') and
- data files (e.g., INSTALL or texinfo.tex).
- Suggestion by Nick Bowler. See also automake bug#10473.
- * automake.in (parse_arguments): Handle the new option.
- (usage): Mention it.
- * doc/automake.texi (automake Invocation): Document it.
- * NEWS: Update.
- * tests/print-dir.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-02-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: prefer the awk+sh TAP driver over the perl one
- We had completed our shell+awk implementation of the TAP driver
- months ago, but never documented it in the manual, continuing to
- document only the "prototype" written in perl instead. Time to
- fix this, before the 1.12 release.
- * doc/automake.texi (Use TAP with the Automake test harness): Now
- we document the use of the awk+shell implementation of our TAP
- driver, rather than of the perl one.
- * tests/tap-doc2.test: Adjust to use the shell+awk implementation
- of the TAP driver.
- 2012-02-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: be stricter in determining whether "make -jN" works
- * tests/parallel-tests3.test: With at least Solaris 10 CCS make,
- "make -jN" does not fail, but merely prints a warning about
- "DistributedMake -j option" being ignored. This was causing this
- test case to fail spuriously. So we now use a stricter check in
- determining whether make works in parallel mode. Since we are at
- it, we try to cater also to Sun Distributed make, which understands
- "-j N" but *not* "-jN".
- 2012-02-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't trust exit status of "make -k"
- * tests/parallel-tests-extra-programs.test: Unless $MAKE is GNU
- make, don't trust the exit status of "$MAKE -k". Fixes a spurious
- failure with OpenBSD 5.0 make and NetBSD 5.1 make.
- 2012-02-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix race condition in 'self-check-dir.tap'
- * tests/self-check-dir.tap (do_check): Don't fail if "ls -l" fails.
- 2012-02-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: fix another BSD parallel make issue
- When BSD make is run in parallel mode, it apparently strips any
- leading directory component from the automatic variable '$*' (of
- course, against what POSIX mandates). This was causing FreeBSD 9.0
- make and NetBSD 5.1 make to spuriously fail with automake-generated
- test harnesses if subdir tests were present *and* make was being
- run in parallel mode. This issue affected also the Automake own
- testsuite.
- * lib/am/check2.am (am__set_b): New internal variable.
- (%OBJ%, %EXT%.log, %EXT%$(EXEEXT).log): Use it to work around
- the described BSD make issue.
- * tests/parallel-tests3.test: Enhanced to expose the bug.
- * tests/parallel-tests-subdir.test: Enhance a little, since we
- are at it.
- * NEWS: Update.
- 2012-02-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid FreeBSD make VPATH issues in more tests (see bug#7884)
- See also similar change 'v1.11-755-g818bc40' of 07-02-2012,
- "tests: work around bug#7884 in many yacc/lex tests". The
- rationale for this change is basically the same.
- * tests/lex-lib-external.test: Use "yl_distcheck" instead of
- bare "$MAKE distcheck" to avoid extra failures caused by
- automake bug#7884.
- * tests/lex-noyywrap.test: Likewise.
- * tests/lex-libobj.test: Likewise.
- * tests/man6.test: This test suffers from the same FreeBSD make
- incompatibility in VPATH handling that is the source of automake
- bug#7884. Since this is caused by rules that are defined in the
- Makefile.am by the test itself, rather that being generated by
- automake, the best thing to do is to skip this test if we detect
- the presence of said make incompatibility (through the function
- 'useless_vpath_rebuild').
- * tests/man8.test: Likewise.
- 2012-02-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: remove extra trailing whitespace in configure.ac
- 2012-02-18 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'yacc-quote-fix'
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure with FreeBSD make
- * tests/parallel-tests-extra-programs.test: FreeBSD make seems to
- write (some) diagnostic messages on stdout instead than on stderr,
- so now we also grep the stdout for the expected make diagnostic.
- 2012-02-17 Peter Rosin <peda@lysator.liu.se>
- tests: fix broken quoting in the generated yacc grammar
- Fixes problem introduced by v1.11-1912-ge0906b7 "tests: avoid
- spurious failure with non-bison yacc" from 12-02-2012.
- * tests/suffix10.tap (Makefile.am): Avoid outer single quotes
- when we need to produce single quotes.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: always use correct path for automake/aclocal wrappers
- Otherwise, bootstrapping from a git checkout won't work anymore.
- Issue introduced in today's commit 'v1.11-1974-ga98e58f'.
- * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Export PATH in a
- way that makes the automake and aclocal wrappers truly accessible
- (the location of this wrappers has been modified in a recent commit,
- but this makefile hadn't been updated accordingly).
- (update_mans): Likewise.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure in VPATH build
- * tests/self-check-dir.tap: Adjust to handle running in a VPATH
- build correctly.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix many spurious failures in VPATH builds
- The 'is' helper script, used by some test cases since commit
- 'v1.11-1830-g96401cb' of 08-02-2012, "tests: better way to compare
- lists in Makefile rules", is not available in VPATH builds, since
- it resides in $(srcdir), nor in $(builddir), and only $(builddir)
- is added to $PATH in the test script. This was causing spurious
- failures.
- Solve this issue by re-organizing a bit the layout and placing of
- wrapper and help scripts used by the testsuite. This reorganization
- is by no mean complete, but should be enough to solve the VPATH
- issues.
- * tests/is: Moved ...
- * tests/ax/is: ... here
- * tests/automake.in: Moved ...
- * tests/wrap/automake.in: ... here.
- * tests/aclocal.in: Moved ...
- * tests/wrap/aclocal.in: ... here.
- * tests/defs-static.in ($am_bindir, $PATH): Adjust.
- * configure.ac (AC_CONFIG_FILES): Likewise.
- * tests/Makefile.am (EXTRA_DIST, check_SCRIPTS): Likewise.
- * tests/get-sysconf.test: Likewise.
- * .gitignore: Likewise.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: relax a test to cater to NetBSD make
- * tests/parallel-tests-empty-testlogs.test: When $(TESTS) is empty,
- NetBSD 5.1 make ends up defining $(TESTS_LOGS) to ".log" rather than
- to the empty string (as would be expected). This behaviour was
- causing a check in this test case to fail. But that check was in
- fact overly strict, since our recipes are smart enough to work
- around the botched-up substitution. Also, the failure wasn't a
- regression from Automake 1.11, since that version too would have
- triggered the same error with NetBSD 5.1 make. So we just relax
- the test a little to avoid extra noise in the testsuite.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- dryrun: $(am__dry_run) not confused by metachars in $(MAKEFLAGS)
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- dryrun: $(am__dry_run) not confused by metachars in $(MAKEFLAGS)
- * lib/am/header-vars.am (am__make_dryrun): Be smarter and more
- correct in handling shell metacharacters in $(MAKEFLAGS).
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: TAP-based tests should error if no plan was specified
- After this change, it will still be OK for TAP-based tests not to
- report any explicit TAP plan -- but they should state *explicitly*
- that they want to do so, by calling the 'plan_' function with a
- proper argument (currently, either "later" or "unknonwn").
- Motivated by a recent issue introduced by yesterday's commit
- 'v1.11-1959-g0699a84' (pointed out by Peter Rosin, and fixed
- by follow-up commit 'v1.11-1961-gea44190').
- * tests/tap-functions.sh (plan_): Get rid of '$have_tap_plan_',
- and refactor use and initialization of '$planned_' in a way that
- will allow client script to get more information on which kind
- of plan (if any) has been declared by the former 'plan_' invocation.
- (skip_all_): Adjust.
- * tests/defs (exit trap): Only print the "lazy" TAP plan if 'plan_'
- has requested that *explicitly*.
- * syntax-check.mk (sc_tests_tap_plan): Remove: it's obsolete now,
- since a TAP-based test that doesn't call 'plan_' explicitly won't
- print any TAP plan, and the TAP driver will catch that and report
- an error.
- (syntax_check_rules): Adjust.
- 2012-02-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: expose $(am__dry_run) limitations
- Currently, the internal $(am__dry_run) macro can fail in weird ways
- when $(MAKEFLAGS) contains shell metacharacters. Let's expose this
- limitation in the testsuite (and fix a couple of related weaknesses
- since we are at it).
- * tests/make-dryrun.test: Moved ...
- * tests/make-dryrun.tap: ... here, converted to TAP, and extended to
- expose the described limitations. Also ...
- (am_parallel_tests): Define this so that the 'gen-testsuite-part'
- script won't generate a useless wrapper script.
- * test/list-of-tests.mk: Update.
- 2012-02-17 Peter Rosin <peda@lysator.liu.se>
- cosmetics: fix commit message typo in previous
- * .git-log-fix: The file is called .git-log-fix, nothing else.
- 2012-02-17 Peter Rosin <peda@lysator.liu.se>
- fixup: .git-log-fix should not be executable
- * .git-log-fix: Set mode 644.
- 2012-02-17 Peter Rosin <peda@lysator.liu.se>
- maint: support amending the generated ChangeLog, and fix a typo
- * Makefile.am (gitlog_to_changelog_options): Add support for
- amending the generated ChangeLog.
- (EXTRA_DIST): Update.
- * .git-log-fix: New file with things to amend to the generated
- ChangeLog, starting with a fix for a typo in v1.11-1963-g3b369e6
- "maint: use AC_PACKAGE_BUGREPORT to avoid duplication" from
- yesterday.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: normalize copyright notice in some tests
- * tests/lisp3.test: Normalize copyright notice to read the
- same of that of other tests.
- * tests/lisp4.test: Likewise.
- * tests/lisp5.test: Likewise.
- * tests/lisp6.test: Likewise.
- * tests/lisp7.test: Likewise.
- * tests/lisp8.test: Likewise.
- * tests/lispdry.test: Likewise.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: fix grammaro
- Reported by Eric Blake.
- * README: Use "also has" instead of "has also"; the former sounds
- better to a native speaker.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: use AC_PACKAGE_BUGREPORT to avoid duplication
- * configure.ac: In the message reporting whether the user is about
- to build an alpha or beta version, use the autoconf-provided
- AC_PACKAGE_BUGREPORT macro instead of duplicating the bug reporting
- address.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- readme: update and renew
- * README: Remove stale or now-obvious description and advices.
- Add reference to the INSTALL file. Some minor rewordings.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp tests: fix up today's botched commit
- Today's commit 'v1.11-1959-g0699a84' has caused the generated
- 'depcomp*.tap' tests to call the 'plan_' function *before* it is
- defined, and has also caused the extra checks required for better
- libtool coverage to be run only when libtool is *not* in use,
- rather than the other way around. Fix this mess.
- Report by Peter Rosin.
- * tests/gen-testsuite-part: Include './defs' in the generated
- tests, rather than doing so from 'depcomp.sh'. Adjust the count
- of TAP tests for 'depcomp-lt-auto.test' (it's 84, not 72).
- * tests/depcomp.sh: Adjust accordingly, and fix inverted logic
- about the decision of when to run extra checks for libtool.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: clearer diagnostic if "make" is invoked before "./configure"
- Since a GNUmakefile wrapper has been introduced in our build
- system, a "make" invocation issued before a "./configure" one
- has caused GNU make to die with the cryptic message:
- GNUmakefile:18: Makefile: No such file or directory
- GNUmakefile:19: /syntax-checks.mk: No such file or directory
- make: *** No rule to make target `/syntax-checks.mk'. Stop.
- * GNUmakefile: Detect when we are being run from an unconfigured
- tree, and give helpful diagnostic.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp tests: put TAP plan in generated tests
- This avoids a spurious maintcheck failure, and also simplifies
- the 'depcomp.sh' helper script a little.
- * tests/gen-testsuite-part: Create and place also a proper 'plan_'
- call (to emit the TAP plan) in each generated 'depmod*.tap' test.
- * tests/depcomp.sh: Remove 'plan_' invocations, and simplify a
- little since we are at it.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- update-copyright: don't touch COPYING and INSTALL
- Reported by Peter Rosin.
- * update-copyright: Also exclude the COPYING and INSTALL files
- found in the top-level directory.
- * COPYING, INSTALL: Revert update of copyright years done in
- today's commit 'v1.11-1948-g641a5a4'.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: whitelist some false positives
- Instead of tweaking or dumbing down some of our sources or tests
- in order not to make them spuriously trigger few maintainer checks,
- we tweak such checks instead.
- * syntax-checks.mk (sc_tests_overriding_macros_on_cmdline): Also
- allow the variable 'exp' to be overridden on the make command line.
- Whitelist the test 'make-dryrun.test' where appropriate.
- (sc_mkinstalldirs): When whitelisting the 'mkinstalldirs' occurrence
- in 'lib/Makefile.am', do not look for the exact line number: it is
- obviously too fragile.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure with parallel make
- * tests/parallel-tests-extra-programs.test: Run make with the '-k'
- option where appropriate, to ensure it doesn't stop at the first
- error, which would prevent the building of the extra programs we
- expect it to build.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure on older Cygwin
- * tests/tap-signal.tap: Sending a SIGQUIT on Cygwin 1.5 can cause a
- segmentation fault instead (sometimes at least). Don't let this
- older bug pollute the results of our testsuite.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: display captured make stdout in 'tap-signal.tap'
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure in 'suffix3.tap'
- * tests/suffix3.tap (foo.zoo): This C++ file fails to compile with
- older g++ (3.4.4) on Cygwin 1.5.25 if we #include <iostream>. Don't
- do that, since it's not strictly required, and the "using namespace"
- directive is already enough to ensure the file contents is valid C++
- but invalid C.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix typo in description of AM_YFLAGS
- Report by Akim Demaille.
- * doc/automake.texi (Program variables): Don't list "-d -t" twice
- in the examples of valid ways to specify the '-d' flag to Yacc;
- instead, use "-d -t" and "-t -d". Add missing period.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: another spurious failure with older autoconf fixed
- * tests/aclocal8.test (configure.in): Also call 'AC_INIT', it's
- required by some older autoconf versions (e.g., 2.63).
- * tests/acloca15.test: Likewise. Add trailing ':' command since
- we are at it.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure with older autoconf
- * tests/conffile-leading-dot.test: Relax grepping of 'config.status'
- stderr, to cater for older autoconf. Issue revealed by a failure
- with autoconf 2.63 on Cygwin 1.5.25.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: sync auxiliary files from upstream
- * lib/texinfo.tex: Synced from upstream, by "make fetch".
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: run "make update-copyright"
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: add some missing copyright notices
- * tests/ChangeLog-old: Add copyright notice.
- * tests/aclocal.in: Likewise.
- * tests/automake.in: Likewise.
- * tests/extract-testsuite-summary: Likewise.
- * tests/prove-runner: Likewise.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- update-copyright: don't touch files synced from external packages
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- update-copyright: don't touch files synced from external packages
- * Makefile.am (update-copyright): Do not update copyright years of
- files synced from external packages, as given by the '$(FETCHFILES)'
- variable. Silence the recipe since we are at it.
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'extra-dist-tests-ksh-bug'
- * extra-dist-tests-ksh-bug:
- tests: fix spurious failure when testing wildcards in EXTRA_DIST
- 2012-02-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure when testing wildcards in EXTRA_DIST
- * tests/extra10.test: Remove the "make distcheck" call, since, at
- least with GNU make 3.82, it trips on the fact that $(srcdir) is
- not explicitly used in the wildcard in EXTRA_DIST.
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: distribute 'lib/update-copyright'
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: distribute 'lib/update-copyright'
- While the 'update-copyright' script shouldn't be needed by final
- users, that's not a good reason to keep it out by the distribution,
- as doing so might be unhelpful toward occasional but curious users
- interested in peeking into the automake build system.
- * lib/Makefile.am (EXTRA_DIST): Distribute 'update-copyright'.
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: prefer $(GIT) over hard-coded "git" in maintainer recipes
- * Makefile.am (update-copyright, autodiffs): Use '$(GIT)' instead
- of hard-coding 'git'.
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maint: add a rule to use gnulib's update-copyright
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'extra-dist-tests-ksh-bug'
- * extra-dist-tests-ksh-bug:
- tests: avoid ksh bug for wildcards in EXTRA_DIST
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'yl-work-for-master'
- * yl-work-for-master: (44 commits)
- tests: truly use Lex and Yacc selected by configure
- news: fix grammaros related to Yacc
- yacc/lex tests: avoid spurious skips with non-GNU make
- fixup: remove double news entry
- tests: workaround for shells with broken 'set -e'
- tests: avoid spurious failure with non-bison yacc
- tests: fix spurious failures due to missing 'yywrap()' function
- fixup: list of yacc/lex tests was botched
- tests: work around bug#7884 in many yacc/lex tests
- yacc/lex tests: remove an unneeded workaround for bug#8485
- yacc/lex tests: avoid too much failures with FreeBSD make
- yacc-dist-nobuild.test: add reference to bug#7884
- yacc tests: fix bug in 'yacc-cxx.test'
- lex tests: fix spurious link errors on Solaris
- lex: "make clean" removes .c files from non-distributed .l
- lex tests: make test on Lex dependency tracking more "semantic"
- lex tests: remove erroneous check about ylwrap distribution
- yacc tests: "make clean" removes C++ files from non-distributed .y
- tests: add a workaround for automake bug#8485
- tests: add a couple of inter-tests reference
- ...
- 2012-02-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- cscope: is only expected to work with GNU make in VPATH setup
- The 'cscope' functionality does not properly handle VPATH rewrites;
- so we explicitly document that, for now, it is only ensured to work
- with GNU make when doing a VPATH build, and we adjust testsuite
- requirements accordingly.
- Issue revealed by a failure of 'cscope.test' with Solaris 10 CCS
- make.
- * doc/automake.texi (Tags): Document the limitations of the cscope
- support. Couple of fixlets to formatting since we are at it.
- * tests/cscope.test: Converted to TAP, and thus moved ...
- * tests/cscope.tap: ... here. Only run tests with VPATH builds when
- using GNU make. Adjust so that no C, C++, Fortran or Java compiler,
- nor any Emacs program, will be required to run this test.
- * tests/list-of-tests.mk: Adjust.
- 2012-02-14 Jim Meyering <meyering@redhat.com>
- maint: add a rule to use gnulib's update-copyright
- * lib/update-copyright: New file, from gnulib.
- * Makefile.am (FETCHFILES): Add update-copyright to the list.
- (fetch): Fetch it.
- (update-copyright): New rule.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'doc-no-history'
- * doc-no-history:
- docs: move chapter on automake history out of main manual
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- check: fix test-suite.log formatting with NetBSD sed
- * lib/am/check.am (am__rst_section): Tweak to ensure en extra final
- newline is printed also with NetBSD sed. Issue revealed by a
- failure of 'test-metadata-global-result.test'.
- * tests/rst-formatting.test: New test, checking the internal
- variables '$(am__rst_title)' and '$(am__rst_section)'.
- * tests/list-of-tests.mk: Add it.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid ksh bug for wildcards in EXTRA_DIST
- Some shells, like NetBSD 5.1 /bin/ksh, have a bug that causes
- wildcards resulting from an unquoted parameter expansion not to
- be expanded as expected in some cases:
- $ touch a b c d
- $ /bin/sh -c 'var="[ab]" && echo $var' # As expected.
- a b
- $ /bin/ksh -c 'var="[ab]" && echo $var' # Oops.
- [ab]
- $ /bin/ksh -c 'var="?" && echo $var' # But this as expected.
- a b c d
- This was causing a failure in our testsuite. Work around that.
- See also:
- <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00149.html>
- * tests/extra11.test: Work around the described issue by using the
- $(wildcard) builtin in the EXTRA_DIST definition. This is not a
- problem, since this test was assuming GNU make anyway. Since we are
- at it, enhance coverage a little by also running "make distcheck".
- * tests/extra10.test: Similarly, enhance coverage by also running
- "make distcheck", and fix a minor bug in the process. But continue
- using a "bare" wildcard expression in EXTRA_DIST, without involving
- the $(wildcard) builtin, to ensure coverage of similar usages "in
- the wild".
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-tap-signal-test'
- * fix-tap-signal-test:
- fixup: fix test tap-signal.tap to avoid false negatives
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: fix test tap-signal.tap to avoid false negatives
- Problem introduced by yesterday commit v1.11-1851-g79b2c6a,
- "tests: avoid yet other spurious failures on NetBSD"
- * tests/tap-signal.tap: Truly ensure the exit status of the make
- call under test is correctly reflected in the TAP result displayed
- by the corresponding 'command_ok_' invocation.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: do not tickle makefile-deps.test with the make_dryrun code
- gitattributes: custom merge driver for ChangeLog not needed anymore
- gitattributes: use "union" merge driver for NEWS
- 2012-02-14 Peter Rosin <peda@lysator.liu.se>
- fixup: do not tickle makefile-deps.test with the make_dryrun code
- * lib/am/header-vars.am (am__make_dryrun): Avoid code matching
- '^ *:' in the Makefile, as that tickles makefile-deps.test.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- gitattributes: custom merge driver for ChangeLog not needed anymore
- * .gitattributes: We don't maintain a version-controlled ChangeLog
- file anymore, so we have no need to specify a custom merge driver
- for it anymore. Update accordingly.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- gitattributes: use "union" merge driver for NEWS
- This should help in reducing the spurious merge conflicts for the
- NEWS file, which have already caused a great deal of confusion and
- wasted time.
- Suggestion by Eric Blake:
- http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00119.html
- * .gitattributes (NEWS): Use the "union" merge driver.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: truly use Lex and Yacc selected by configure
- When 'yacc-work' was merged into 'yl-work-for-master' in commit
- v1.11-1910-ge6c40d4 (12-02-2012), the values for $YACC and $LEX
- stopped being substituted directly by config.status, and started
- being substituted by a Makefile rule using the contents of the
- $(YACC) and $(LEX) makefile variables.
- Unfortunately, our configure.ac was calling AM_SUBST_NOTMAKE on
- 'YACC' and 'LEX' (see commit v1.11-284-g34ca92b of 29-01-2011,
- "tests: don't define YACC and LEX in the Makefiles", for a
- rationale), so that the $(YACC) and $(LEX) in the Makefile simply
- hold the default make-provided values (that is, "yacc" and "lex"
- respectively), independently of what yacc and lex programs were
- defined at configure time.
- Apart from reducing coverage and creating confusion, this behaviour
- also caused spurious failures on systems lacking a yacc and/or lex
- programs.
- Problem reported by Peter Rosin. References:
- <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00131.html>
- <http://lists.gnu.org/archive/html/automake-patches/2012-02/msg00132.html>
- * configure.ac (AM_SUBST_NOTMAKE): Don't call anymore on 'YACC' nor
- on 'LEX'.
- 2012-02-14 Peter Rosin <peda@lysator.liu.se>
- depcomp tests: do not specify LDFLAGS for static libraries
- Commit v1.11-1848-gb3f34ca accidentally specified LDFLAGS
- for libbaz even when built as a static library, which is
- not allowed.
- * tests/depcomp.sh (src/Makefile.am): Don't add any LDFLAGS
- when libbaz is built as a static library.
- 2012-02-14 Peter Rosin <peda@lysator.liu.se>
- depcomp tests: avoid redundant runs for non-libtool test
- When running the dependency tests without libtool, it's
- not meaningful to run the tests three-fold, the libtool
- configure options are simply ignored anyway.
- * tests/depcomp.sh: Only run the tests three-fold when
- libtool is in use.
- 2012-02-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid yet other spurious failures on NetBSD
- * tests/tap-signal.tap: Add a "strategically placed" extra 'echo'
- command and a temporary silencing of xtraces; they are required
- to avoid possible garbled output with NetBSD make, which would
- miss some final newlines in the expected places and thus mess up
- our TAP output.
- 2012-02-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid a spurious failure on NetBSD
- * tests/test-driver-is-distributed.test: Rewrite to avoid having to
- edit configure.in; such editing was subtly botched on NetBSD (the
- 'AC_CONFIG_AUX_DIR' call got misplaced, ending up *before* the
- 'AC_INIT' call), and that caused an hard-to-track bug. Since we
- are at it, extend coverage a little.
- 2012-02-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure with NetBSD /bin/ksh
- * tests/parallel-tests-fd-redirect-exeext.test (configure.in): Tweak
- so that we don't end up with the generated configure script having
- two nested subshells that start with '((':
- ((./conftest$EXEEXT 9>&1) | grep "^foobar") >&5 2>&5
- which is unportable and could confuse some shells (e.g., NetBSD 5.1
- /bin/ksh) into thinking we are trying to perform an arithmetic
- operation.
- 2012-02-13 Peter Rosin <peda@lysator.liu.se>
- tests: increase coverage for depcomp tests
- On platforms requiring that no undefined symbols exist in order
- to build shared libraries (e.g. Windows DLLs), you have to
- explicitly declare that the libtool library you are building
- does not actually have any undefined symbols, for libtool to
- even try to build it as a shared library. Without that
- explicit declaration, libtool falls back to a static library
- only, regardless of any --enable-shared flags etc.
- tests/depcomp.sh (Makefile.am): Add -no-undefined if a libtool
- library (.la) is built.
- (src/Makefile.am): Likewise.
- 2012-02-13 Peter Rosin <peda@lysator.liu.se>
- news: fix grammaros related to Yacc
- * NEWS: Fix some grammaros and typos.
- 2012-02-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- yacc/lex tests: avoid spurious skips with non-GNU make
- * tests/defs (useless_vpath_rebuild): Fix botched logic that
- was causing this function to always diagnose non-GNU make
- implementations as being affected by the "useless rebuilds
- in VPATH setup" bug (that affects FreeBSD make and causes
- automake bug#7884).
- 2012-02-13 Peter Rosin <peda@lysator.liu.se>
- fixup: remove double news entry
- * NEWS: Remove double (stale) news entry introduced by a botched
- merge.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: workaround for shells with broken 'set -e'
- * tests/dist-formats.tap: Some versions of the BSD shell wrongly
- bail out when the 'errexit' shell flag is active and the left-hand
- command in a "&&" list fails and that list is the *last* command
- of a "case" statement. This was causing an incorrect initialization
- of the '$missing_compressors' variable, and thus potential spurious
- failures when non-existing programs were assumed to be available.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: workaround for shells with broken 'set -e'
- * tests/yacc-cxx.test: Some versions of the BSD shell wrongly bail
- out when the 'errexit' shell flag is active if the left-hand
- command in a "&&" list fails and such list is the *last* command
- of a "for" or "while" loop or of an "if" construct. Work around
- this issue.
- * tests/check12.test: Likewise.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure with non-bison yacc
- Issue revealed by a failure on NetBSD 5.1.
- * tests/suffix10.tap (Makefile.am): Adjust the rule generating
- the '.y' files so that such files won't use bison-only features.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures due to missing 'yywrap()' function
- The AC_PROG_LEX Autoconf macro does not diagnose a failure to find
- the "lex library" expected to provide a 'yywrap' function (function
- which is required to link most lex-generated programs). On the
- contrary, when all the link attempts (i.e., with '-ll' and '-lfl')
- fail, configure declares that no lex library is needed, and simply
- proceeds with the configuration process -- only for the build to
- possibly fail later, at make time.
- This behaviour is intended; the Autoconf manual reads:
- You are encouraged to use Flex in your sources, since it is
- both more pleasant to use than plain Lex and the C source it
- produces is portable. In order to ensure portability, however,
- you must either provide a function 'yywrap' or, if you don't use
- it (e.g., your scanner has no '#include'-like feature), simply
- include a '%noyywrap' statement in the scanner's source.
- This AC_PROG_LEX behaviour is causing some spurious failures of
- the Automake testsuite in environments which lack a proper library
- providing 'yywrap' (this happens for example on Fedora-based
- systems). The proper workaround is to simply provide a fall-back
- implementation of 'yywrap' in our lexers.
- See also similar commits 'v1.11-546-gca0ba5d' (24-10-2011),
- 'v1.11-1085-gb5c3968' (24-10-2011) and 'v1.11-871-geb147a1'
- (25-05-2011).
- * tests/lex-clean.test: Provide a dummy 'yywrap' function.
- * tests/lex-line.test: Likewise.
- * tests/lex-nodist.test: Likewise.
- * tests/lex-depend.test: Likewise.
- * tests/lex-clean-cxx.test: Move the dummy 'yywrap' function
- from the main '.cc' file into the '.lxx' file, so that it won't
- be subject to the namespace declaration in the '.cc' file (which
- was causing a spurious link error in systems without a default
- "lex library").
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'yacc-work' into yl-work-for-master
- * yacc-work: (37 commits)
- fixup: list of yacc/lex tests was botched
- tests: work around bug#7884 in many yacc/lex tests
- yacc/lex tests: remove an unneeded workaround for bug#8485
- yacc/lex tests: avoid too much failures with FreeBSD make
- yacc-dist-nobuild.test: add reference to bug#7884
- yacc tests: fix bug in 'yacc-cxx.test'
- lex tests: fix spurious link errors on Solaris
- lex: "make clean" removes .c files from non-distributed .l
- lex tests: make test on Lex dependency tracking more "semantic"
- lex tests: remove erroneous check about ylwrap distribution
- yacc tests: "make clean" removes C++ files from non-distributed .y
- tests: add a workaround for automake bug#8485
- tests: add a couple of inter-tests reference
- lex tests: require just `lex' instead of `flex'
- fix typo in ChangeLog (2011-05-04)
- tests defs: use `skip_' for skipping yacc/lex related tests
- lex/yacc tests: remove redundant $distdir definition
- coverage: test lex-generated "#line" directives postprocessing
- tests: minor improvements to a couple of yacc tests
- tests: fix spurious failure in test 'yacc-d-cxx.test'
- ...
- + Extra non-trivial edits:
- * tests/defs.in: Delete; the differences from maint has been
- merged into 'tests/defs' and 'tests/defs-static.in'.
- * tests/defs (yacc, lex): Use 'skip_all_', not 'skip_', to
- skip the whole test case if yacc (resp. lex) is missing.
- (bison): New, set up the environment so that 'bison -y' will
- be used as the yacc program.
- (useless_vpath_rebuild, yl_distcheck): Moved in from
- 'tests/defs.in'.
- * tests/defs-static.in ($YACC, $LEX): Default to the values
- determined at configure time, and allow them to be overridden
- by the more namespace-safe variables '$AM_TESTSUITE_YACC' and
- '$AM_TESTSUITE_LEX' respectively.
- * tests/Makefile.am (do_subst): Also substitute '@YACC@' and
- '@LEX@'.
- * Several tests: Fix requirements declarations, by preferring
- 'lex' and 'yacc' over 'flex' and 'bison' whenever possible.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: list of yacc/lex tests was botched
- * tests/list-of-tests.mk: Update to take into account the addition,
- renaming, removing or split-ups of Yacc/Lex tests that have taken
- place in the 'yacc-work' branch. Problem likely introduced by a
- botched merge of 'maint' into 'yacc-work'.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: move chapter on automake history out of main manual
- The chapter on Automake history, while certainly interesting and
- even fascinating, does not truly pertain to a reference manual,
- so move it out from there and into its own dedicated file. This
- change is made more advisable and pressing by the fact that such
- and "Automake history" chapter hasn't been updated since the 1.9.6
- release, so it has been becoming less faithful and useful since
- then.
- * doc/history.texi: New, manual on the history of the automake
- package; extracted from ...
- * doc/automake.texi: ... this file, with related adjustments.
- * doc/Makefile.am (info_TEXINFOS): Add 'history.texi'.
- (history_TEXINFOS): New, list included file 'fdl.texi'.
- * Makefile.am (release-stats): Remove as obsolete.
- * HACKING (Release Procedure): Don't advise anymore to run the
- "release-stats" target and to update the manual with its output.
- * NEWS: Update.
- * .gitignore: Likewise.
- 2012-02-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp tests: avoid redundant runs for libtool tests
- When running libtool-oriented tests, our 'depcomp.sh' script used
- to run the same checks thrice: once after having run configure
- with the '--disable-shared' option, once after having run it with
- the '--enable-shared' option, and once by allowing configure to
- automatically select which kind of library (or libraries) to build.
- This was done to offer extra coverage for the less-common depmodes
- (like "aix" of "hp2") where the name of the compiler-generated
- depfiles can depend on whether libtool is in use *and* on which
- kind of libraries libtool is building (static, shared, or both).
- About this, see commit 'Release-1-10-24-ge89ec38' of 28-03-2007,
- "* lib/depcomp (aix): Rewrite depmode in the spirit of the tru64
- one".
- But that extra coverage came at the price of *considerably* slowing
- down the depcomp libtool-oriented tests, since for each of them the
- tested source tree was configured and built *twelve* times (rather
- than "just" four as it is for the non-libtool case).
- So, to strike a balance between coverage and speed, we now run the
- libtool-oriented tests with the three different configuration modes
- *only* when it is possible that the depmode that will get selected
- is one of those which can actually benefit from the extra coverage.
- * tests/depcomp.sh: Adjust to only run the threefold libtool tests
- when that can truly be potentially useful. Add related explanatory
- comments.
- 2012-02-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid wrong skips in dist-formats.tap
- * tests/dist-formats.tap: The test checking whether the 'compress'
- program is actually capable of compressing files relied on the
- assumption that 'compress' exits with status zero if no problem
- occurs; alas, this reasonable assumption doesn't hold in practice,
- since 'compress' does (and is documented to) exit with status 2 if
- the output is larger than the input after (attempted) compression!
- Fix this by using and input that 'compress' can actually reduce in
- size when compressing.
- Do some related reformatting of surrounding code since we are at it.
- 2012-02-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: few tweakings and cosmetic changes
- * tests/dist-formats.tap: Fix botched spacing.
- * tests/subobjname.test: Prefer spaces to tabs in indentation.
- * tests/cond43.test: Likewise.
- * tests/comment7.test: Likewise.
- * tests/compile_f90_c_cxx.test: Use "$tab" instead of literal
- tab characters in the grep regexp.
- * tests/compile_f_c_cxx.test: Likewise.
- * tests/pluseq3.test: Likewise.
- * tests/cond-basic.test: Likewise.
- * tests/acloca16.test: Add empty line before trailing ':' command.
- * tests/bsource.test: Likewise.
- * tests/depend5.test: Likewise.
- * tests/depend6.test: Likewise.
- * tests/destdir.test: Likewise.
- * tests/fort2.test: Likewise.
- * tests/instdir-java.test: Likewise.
- * tests/instdir-lisp.test: Likewise.
- * tests/instdir-python.test: Likewise.
- * tests/instdir.test: Likewise.
- * tests/instdir2.test: Likewise.
- * tests/ltinstloc.test: Likewise.
- * tests/missing.test: Likewise.
- * tests/missing2.test: Likewise.
- * tests/nodef.test: Likewise.
- * tests/nodef2.test: Likewise.
- * tests/subst4.test: Likewise.
- * tests/werror3.test: Likewise.
- * tests/commen11.test: Likewise. Also, make grepping of automake
- stderr slightly stricter, and properly quote strings with shell
- metacharacters.
- * tests/nodep2.test: Add empty line before trailing ':' command.
- Do not create unneeded dummy source files.
- 2012-02-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove a couple of redundant 'set -e' calls
- * tests/conffile-leading-dot.test: Do not set the 'errexit'
- shell flag, as it is already set by 'tests/defs'.
- * tests/make-dryrun.test: Likewise.
- 2012-02-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix a timestamp-related spurious failures
- dryrun: fix regression with '$(am__make_dryrun)'
- test defs: function 'is_newest' now works also with directories
- 2012-02-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'dryrun-fix' into maint
- * dryrun-fix:
- dryrun: fix regression with '$(am__make_dryrun)'
- 2012-02-09 Peter Rosin <peda@lysator.liu.se>
- tests: check if 'compress' is real or fake
- On Cygwin, 'compress' is provided by sharutils and is just a
- dummy script that is not able to actually compress (it can
- only decompress). This fake 'compress' is not usable for
- our purpose - to create compressed tarballs.
- * tests/dist-formats.tap (missing_compressors): Count 'compress'
- as missing if it does not support the -c option.
- 2012-02-08 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'msvc'
- * msvc:
- depcomp: try to prevent whitespace regressions
- depcomp: recognize tabs as whitespace in the dashmstdout mode
- depcomp: quote 'like this', not `like this'
- 2012-02-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- depcomp tests: avoid spurious failures with 'dashXmstdout' depmode
- * tests/gen-testsuite-part: The 'dashXmstdout' depmode cannot be
- truly forced on gcc (like we were trying to do, causing spurious
- failures in the process); so don't do that. This change shouldn't
- actually reduce coverage anyway, since, as the comments in
- 'lib/depcomp' say, the 'dashXmstdout' depmode is just like
- the 'dashmstdout' one, only with a different argument for the
- compiler.
- 2012-02-08 Peter Rosin <peda@lysator.liu.se>
- depcomp: try to prevent whitespace regressions
- Suggested by Stefano Lattarini.
- * lib/depcomp: Add $tab and $nl variables and use them
- throughout.
- 2012-02-08 Peter Rosin <peda@lysator.liu.se>
- depcomp: recognize tabs as whitespace in the dashmstdout mode
- Commit Release-1-7-2b-2-gf03ceab "Cope with DOS filenames in
- dependencies." inadvertedly converted tabs into spaces.
- * lib/depcomp (dashmstdout): Add a tab character to all sets
- matching whitespace.
- 2012-02-08 Peter Rosin <peda@lysator.liu.se>
- depcomp: quote 'like this', not `like this'
- Cherry-picked from recent changes from master.
- * lib/depcomp: Quote 'like this', not `like this'.
- 2012-02-08 Peter Rosin <peda@lysator.liu.se>
- tests: check the depmodes 'msvisualcpp' and 'msvcmsys'
- * tests/defs (cygpath): New requirement, checking that cygpath
- is working.
- (mingw): New requirement, checking that the build system is
- MSYS (in its normal MinGW mode).
- * tests/gen-testsuite-part (depmodes): Add entries for depmodes
- 'msvisualcpp' and 'msvcmsys'.
- 2012-02-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better way to compare lists in Makefile rules
- With this commit, we introduce a new helper shell script for use
- in the testsuite, which is meant to allow the test cases to easily
- check whether two whitespace-separated lists are equal; this ability
- is particularly useful to check for equality of the contents of make
- variables that are expected to contain multiple whitespace-separated
- words, and are defined through line continuations (or are rewritten
- by automake in this way), or that contain expansion of potentially
- empty variables.
- Before this change, a test checking that an usage like this one:
- VAR = valA
- if COND1
- VAR += val1 # com1
- endif COND1
- VAR += valC
- worked as expected, couldn't use rules like:
- ## Doesn't work because $(VAR) expands to multiple words
- verify:
- test $(VAR) = "valA val1 valC"
- nor like:
- ## Doesn't work because the final expansion of $(VAR) contains
- ## repeated contiguous whitespace characters (it actually
- ## equals "valA val1 valC", not "valA val1 valC"), and this
- ## is an internal detail which might change and which we don't
- ## want to explicitly rely on.
- verify:
- test "$(VAR)" = "valA val1 valC"
- Instead, we had to rely on cumbersome workaround such as:
- ## This works, but is ugly.
- verify:
- test "`echo $(VAR)`" = "valA val1 valC"
- or:
- ## This works, but is even uglier.
- verify:
- echo BEG: $(VAR) :END | grep "BEG: valA val1 valC :END"
- Now, with the help of the new 'is' script, we can perform such a
- check in a clearer and more straightforward way, as in:
- ## Works, and reads clearly.
- verify:
- is $(VAR) == valA val1 valC
- * tests/is: New helper shell script, telling whether two whitespace
- separated lists are equal.
- * Makefile.am (EXTRA_DIST): Add it.
- * tests/colneq2.test: Use the new helper script, and accordingly
- get rid of older, more cumbersome idioms.
- * tests/cond11.test: Likewise.
- * tests/cond16.test: Likewise.
- * tests/cond18.test: Likewise.
- * tests/cond22.test: Likewise.
- * tests/cond31.test: Likewise.
- * tests/cond38.test: Likewise.
- * tests/test-logs-repeated.test: Likewise.
- * tests/objext-pr10128.test: Likewise.
- * tests/programs-primary-rewritten.test: Likewise.
- * tests/substre2.test: Likewise. Also ...
- (configure.in, Makefile.am): Add a couple of hack to avoid having
- to require (and run) a C compiler; accordingly ...
- ($required): ... remove this.
- * tests/exeext4.test: Likewise.
- * tests/substref.test: Likewise. Also ...
- (hello.c): Use ": >" rather than "cat <<EOF" to generate it,
- since it's meant to be empty anyway.
- * tests/cond4.test: Use the new helper script, and accordingly
- get rid of older, more cumbersome idioms. Avoid some unnecessary
- uses of "make -e" since we are at it.
- * tests/cond19.test: Likewise.
- * tests/cond32.test: Likewise.
- * tests/cond6.test: Use the new helper script, and accordingly
- move some checks in the Makefile.am.
- Avoid unnecessary execution of automake remake rules by manually
- "touching" aclocal.m4
- 2012-02-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: improve and rework tests on dependency tracking
- Fixes automake bug#10434. Suggestion by Peter Rosin.
- The 'depcomp.tap' test case worked by trying to unconditionally
- force the compiler in use by the testsuite to use, one by one, *all*
- the dependency modes known by the 'depcomp' script, and, for each
- such forced mode that was compatible enough with said compiler not
- to cause breakage in the basic compilation rules, checking that it
- was *also* good enough not to break remake rules in VPATH builds.
- This seemed a good approach when this test was first introduced, as
- it apparently increased coverage for the less used and less tested
- dependency-tracking modes. But in the log run it turned out the
- approach was actually in part too brittle, causing some annoying
- spurious failures (as with the Tru64 depmode forced on GCC, see
- automake bug#10434), and partly too forgiving, since, for some of
- the more corner-case dependency modes, the 'depcomp' script simply
- reverts to silently disabling dependency tracking when an error is
- encountered (this happened e.g., with the Tru64 depmode forced on
- the Sun C compiler 5.9), so that a passing test means nothing, and
- only gives a false sense of security.
- As Peter Rosin put it, "it's just dead wrong to assume that feeding
- -M or -xM to the compiler (or whatever other random stuff 'depcomp'
- might do) and not get an error is the same as dependencies magically
- appearing".
- So we get rid of this wrong approach, and in the process proceed to
- a complete overhaul of many of the tests on automatic dependency
- tracking, extending the offered coverage and rationalizing their
- organization.
- * tests/depcomp.sh: New helper script, used by several new
- autogenerated tests.
- * tests/gen-testsuite-part: Generate several tests based on the
- new 'depcomp.sh' script. Emit makefile code that declares their
- dependency on that script, and that extends EXTRA_DIST in order
- to distribute it.
- * tests/depmod.tap: Remove.
- * tests/depend2.test: Remove, it has been subsumed by the new
- autogenerated test 'depcomp-disabled.tap'.
- * tests/depcomp3.test: Remove, it has been subsumed by the new
- autogenerated test 'depmod-dashmstdout.tap'.
- * tests/depcomp3.test: Remove, it has been subsumed by the new
- autogenerated test 'depmod-lt-makedepend.tap'.
- * tests/depcomp6.test: Remove, it has been subsumed by the new
- autogenerated test 'depmod-auto.tap'.
- * tests/depcomp7.test: Remove, it has been subsumed by the new
- autogenerated test 'depmod-lt-auto.tap'.
- * tests/depcomp5.test: Remove as obsolescent.
- * test/list-of-tests.mk: Adjust.
- * .gitignore: List the new autogenerated tests.
- 2012-02-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix a timestamp-related spurious failures
- Fixes automake bug#10737. Report from Larry Daniel.
- See also automake bug#8365 and commit 'v1.11-329-gd4df619' of
- 30-03-2011, "tests: fix timestamp-related failures".
- * tests/aclocal5.test: Sleep before modifying m4 files that should
- trigger remake rules. This fixes an hard-to-hit timestamp-related
- race condition.
- * THANKS: Update.
- 2012-02-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- dryrun: fix regression with '$(am__make_dryrun)'
- In commit v1.11-683-gda0964e of 05-02-2012, we introduced a new
- variable '$(am__make_dryrun)' that could be used in recipes to
- determine whether make is running in dry mode (e.g., as with
- "make -n"). Unfortunately, the idiom we used fails to take into
- account the case in which $(MAKEFLAGS) contains one or more variable
- definitions whose value is a whitespace-separated list; for example,
- if we invoke make as:
- make check TESTS="n1.test n2.test"
- then the better make implementations out there (at least modern
- GNU make and BSD make) will export MAKEFLAGS to the following
- value:
- TESTS=n1.test\ n2.test
- So a shell loop like the one we used in $(am__make_dryrun):
- for flag in $$MAKEFLAGS; do ...
- won't behave as expected: the shell word-splitting rules will break
- up the entry for TESTS into the two distinct entries "TESTS=n1.test\"
- and "n2.test", and this second entry will goad our $(am__make_dryrun)
- code into thinking that make is performing a dry run!
- So now we simply loop over the expanded value of $(MAKEFLAGS).
- This solves the regression, but alas, is more brittle in case the
- users passes on the command line a macro value containing unbalanced
- " or ' quotes, or shell metacharacters like, say, '`' or '('. This
- should almost never happen though, so we don't worry about it now;
- we will revisit the issue only when and if we receive bug reports in
- this area.
- * lib/am/header-vars.am (am__make_dryrun): Fix.
- * tests/make-dryrun.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-02-07 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: work around bug#7884 in many yacc/lex tests
- Due to automake bug#7884, many test cases on Yacc/Lex support are
- failing when run with FreeBSD make. Since these failures are all
- due to the same bug, and that bug is well understood and already
- explicitly exposed in the dedicated 'yacc-dist-nobuild.test' test,
- the reported failures are mostly noise, that not only is annoying,
- but which might end up covering different real bugs or regressions.
- Thus we minimize such spurious failures, by ensuring the commands
- triggering them (most of them being "make distcheck" invocations)
- will be skipped when $MAKE suffers of the bug/limitation that
- triggers automake bug#7884.
- * tests/defs.in (useless_vpath_rebuild): New function.
- (yl_distcheck): Likewise.
- * tests/lex3.test, tests/subpkg-yacc.test, tests/yacc-basic.test,
- tests/yacc-cxx.test, tests/yacc-d-basic.test, tests/yacc-d-cxx.test,
- tests/yacc-dist-nobuild-subdir.test : Use them to avoid extra
- failures caused by automake bug#7884. Where possible, throw in
- some related simplifications.
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into yacc-work
- * maint: (75 commits)
- test defs: function 'is_newest' now works also with directories
- refactor: new variable telling whether make is running in "dry mode"
- ...
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: avoid spurious XPASS results with NetBSD make
- * tests/defs (make_can_chain_suffix_rules): Ensure to properly
- declare the '.SUFFIXES:' in the temporary Makefile used to check
- whether $MAKE is able to automatically chain suffix rules. This
- avoids spurious XPASS results with (at least) NetBSD make in some
- 'suffix*.tap' tests; in a sense also, this also makes the probing
- of $MAKE capabilities more faithful, since the Automake-generated
- Makefiles are expected to properly declare the '.SUFFIXES:' as
- well.
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: few whitespace fixlets
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: various typofixes
- Several typofixes in documentation and comments, as
- suggested by the "codespell.py" script. Reference:
- <http://git.profusion.mobi/cgit.cgi/lucas/codespell/>
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: convert encoding from ISO-8859 to UTF-8 in some tests
- The changed files have been converted using iconv; specifically,
- the command "iconv --from-code=ISO-8859-1 --to-code=UTF-8".
- * tests/block.test, tests/tagsub.test: Converted to UTF-8 encoding.
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: remove obsolete requirement 'rst2html'
- * tests/defs (rst2html): Remove, it's not needed anymore now that
- the old code supporting the ".log -> .html" conversion for the
- parallel-tests harness has been moved in contrib. This removal
- should have actually be done in commit v1.11-1757-g0a9d201 of
- 17-01-2012, 'check: move ".log -> .html" conversion in contrib'.
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: workaround for shells with broken 'set -e'
- * tests/defs (gmake, native, rst2html): Some versions of the BSD
- shell wrongly bail out when the 'errexit' shell flag is active and
- the left-hand command in a "&&" list fails, if that list is the
- *last* command of a "for" or "while" loop. Work around this issue.
- * tests/lex3.test: Likewise.
- * tests/check12.test: Likewise.
- * tests/yacc-basic.test: Likewise.
- * tests/lex-noyywrap.test: Likewise.
- * tests/parallel-tests2.test: Likewise.
- * tests/lex-lib-external.test: Likewise.
- * tests/check-no-test-driver.test: Likewise.
- * tests/test-metadata-recheck.test: Likewise.
- * tests/parallel-tests-dry-run-1.test: Likewise.
- * tests/parallel-tests-dry-run-2.test: Likewise.
- * tests/parallel-tests-unreadable.test: Likewise.
- * tests/test-driver-custom-no-extra-driver.test: Likewise.
- Problem revealed by spurious testsuite failures on a NetBSD 5.1
- system and an OpenBSD 5.0 system.
- 2012-02-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix a typo in comments
- * tests/extra-programs-empty.test: Fix typo in heading comments.
- 2012-02-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: function 'is_newest' now works also with directories
- Reported by Jim Meyering against automake master (see bug#9147) and
- by Adam Sampson against automake 1.11.3 (see bug#10730).
- * tests/defs (is_newest): Call 'find' with the '-prune' option,
- so that it won't descend in the directories (which could cause
- spurious results).
- * THANKS: Update.
- Backported from commit v1.11-914-gb6a40fa (originally on master).
- 2012-02-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: more uses for '$(am__make_dryrun)'
- With this change we refactor some recipes of the parallel-tests
- harness to make them use, where appropriate, the new internal
- variable '$(am__make_dryrun)' (introduced in the 'maint' branch)
- when they need to determine whether make is running in "dry mode",
- i.e., with "make -n". This allows for some simplifications and
- for improved uniformity.
- * lib/am/check.am (check-TESTS recheck): Use $(am__make_dryrun) and
- simplify accordingly.
- (am--redo-logs): Delete this internal helper recipe, merged into ...
- ($(TEST_SUITE_LOG)): ... this, with the help of $(am__make_dryrun).
- recipe accordingly.
- 2012-02-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- refactor: new variable telling whether make is running in "dry mode"
- tests: do not clobber the modified CC
- 2012-02-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- refactor: new variable telling whether make is running in "dry mode"
- We define a new variable '$(am__make_dryrun)', that can be used
- in recipes to determine whether make is running in "dry mode" (as
- with "make -n") or not. This is useful in rules that invoke make
- recursively, and are thus executed also with "make -n" -- either
- because they are declared as dependencies to '.MAKE' (NetBSD make)
- or because their recipes contain the "$(MAKE)" string (GNU and
- Solaris make).
- * lib/am/header-vars.am (am__make_dryrun): New variable.
- * lib/am/check.am (check-TESTS recheck): Use it, and simplify
- recipe accordingly.
- * lib/am/distdir.am (distdir): Likewise.
- * lib/am/lisp.am ($(am__ELCFILES)): Likewise.
- 2012-02-02 Peter Rosin <peda@lysator.liu.se>
- tests: do not clobber the modified CC
- If CC is originally a losing compiler, AM_PROG_CC_C_O will
- modify CC. "$MAKE -e" will then clobber this modified CC
- and reintroduce the raw losing compiler causing the test
- to fail, as subdir-objects is in effect.
- tests/check8.test: Drop -e from the $MAKE invocation, since
- AM_COLOR_TESTS is not specified in the Makefile and -e is
- therefore not needed.
- 2012-02-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix indentation and typos in perl TAP driver
- * lib/tap-driver.pl (get_test_exit_message): Fix botched
- indentation. Fix typo in error message: s/ststus/status/.
- 2012-02-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: fix typo in variable name ($AM_TESTSUITE_PERL)
- * tests/defs-static.in: Fix typo: it's '$AM_TESTSUITE_PERL',
- not '$AM_TESTUITE_PERL'.
- 2012-02-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tap/perl: handle missing or non-executable scripts better
- This change improves how our Perl-based TAP driver handles
- non-runnable test scripts (meaning they might be not executable,
- or not readable, or even not exist). In particular, it makes the
- driver deterministically display a clear "ERROR" result instead
- of possibly dying with diagnostic from 'TAP::Parser' internals,
- and prevents it from displaying spurious "missing TAP plan" errors.
- Moreover, with this change, some testsuite failures present only
- with newer perl versions (e.g., 5.14) are fixed. See automake
- bug#10418.
- * tests/tap-bad-prog.tap: When testing the perl implementation of
- the TAP driver, and when the perl interpreter offers a good-enough
- 'IPC::Open3::open3' function, expect it not to display spurious
- "missing TAP plan" diagnostic if the error is actually due to a
- non-runnable test script.
- * lib/tap-driver.pl (start): Removed, broken up into ...
- (setup_io): ... this ...
- (setup_parser): ... and this, which now tries to catch and report
- errors in launching the test scripts.
- (finish): New, used by both 'main' and 'setup_parser'.
- (main): Adjust.
- 2012-02-01 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'maint'
- 2012-02-01 Peter Rosin <peda@lysator.liu.se>
- tests: put AM_PROG_CC_C_O before AC_OUTPUT to help losing compilers
- When AM_PROG_CC_C_O is after AC_OUTPUT, the compile script
- is not used even if needed, causing testsuite fails if
- libtool is not used.
- * tests/depcomp8a.test: Uncomment the AM_PROG_CC_C_O macro
- in its correct location, as indicated...
- (configure.in): ...with this comment.
- * tests/depcomp8b.test: Sync with tests/depcomp8a.test.
- 2012-01-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- cleanup: remove unused .am file
- * lib/am/comp-vars.am: Remove. This file has stopped being useful
- since commit 'Release-1-4d-206-g3334f9a' of 09-04-2001, and should
- have been removed back then. But apparently only its contents were
- removed, leaving the file empty but still present in the repository.
- Or maybe this situation is the consequence of a minor blunder in
- the conversion from CVS to Git; either way, this is not a big deal.
- 2012-01-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: do not assume the object file extension is .o
- tests: avoid spurious failure of 'transform2.test' on Cygwin
- tests: avoid spurious failure of deleted-am.test with FreeBSD make
- tests: avoid possibly undeserved PASS from check8.test
- warnings: more precise category and message for one warning
- release: revamp rules to tag and upload the releases
- amversion: add missing dependency
- hacking: update advice w.r.t. synced files
- hacking: don't reference ChangeLog anymore
- + Extra non-trivial edits:
- * tests/suffix8.tap: Copy in (by hand) the modifications done
- to 'suffix8.test' on maint, i.e., the addition of an explicit
- '.y_.obj:' suffix rule to Makefile.am.
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- Merge branch 'msvc'
- * msvc:
- ar-lib: ignore the verbose modifier instead of erroring out
- scripts: cherry-pick recent changes from master
- tests: add missing dependency for some 'ar-lib*.test' tests
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- ar-lib: ignore the verbose modifier instead of erroring out
- * lib/ar-lib: A number of tests uses the v modifier when listing
- the archive content, ignore it to make them pass.
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- scripts: cherry-pick recent changes from master
- * lib/ar-lib: prefer the term "Windows" over "Win32" and quote
- 'like this', not `like this'.
- * lib/compile: Likewise.
- 2012-01-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix real and spurious warnings
- * lib/Makefile.am (install-data-hook): Correctly quote $(DESTDIR)
- occurrences.
- * Makefile.am (install-exec-hook, uninstall-hook): Likewise.
- (autodiffs): Prefer '$(am__cd)' to plain 'cd', where warranted.
- * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise. Also,
- prefer using AC_SUBST'd $(abs_top_builddir) over obtaining it at
- runtime from $(top_builddir).
- * syntax-check.mk (sc_mkinstalldirs): Tweak to whitelist known
- harmless occurrences of the checked-against usages.
- (sc_no_for_variable_in_macro): Likewise.
- * tests/CheckListOfTests.am (maintainer-check-list-of-tests): Tweak
- to avoid spuriously triggering the 'sc_no_for_variable_in_macro'
- maintainer check. Prefer '$(am__cd)' to plain 'cd' when warranted.
- 2012-01-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: take advantage of some GNU make features
- We can do so now that our maintainer checks require GNU make
- unconditionally.
- * syntax-check.mk (ams, xtests): Redefine as "immediate variables",
- using the GNU make $(shell ...) builtin.
- (maintainer-check-list-of-tests): Take advantage of GNU make "-C"
- option. Don't use $(AM_MAKEFLAGS), we shouldn't need it with GNU
- make.
- 2012-01-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: require GNU make in order to run the maintainer checks
- This is not a real regression in portability, since most maintainer
- check rules already assumed GNU grep, and were anyway only meant to
- run on the developers' systems (where we can safely assume the
- presence of GNU make).
- This change will allow us to take advantage, in future changes, of
- more GNU make features, thus simplifying or optimizing some of our
- maintainer rules.
- * GNUmakefile: New, including 'Makefile' and 'syntax-checks.mk'.
- * configure.ac (AC_CONFIG_LINKS): Link it in the builddir.
- * Makefile.am (EXTRA_DIST): Distribute 'GNUmakefile' and
- 'syntax-checks.mk'.
- Move all syntax-check rules and auxiliary variables into ...
- * syntax-checks.mk: ... this new file, with some adjustments.
- 2012-01-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: refactor rules checking '*.am' files
- A small refactoring in our syntax-check to avoid code duplication
- and to ensure more uniform checking. This change introduces some
- new failures in syntax-check rules (both real and spurious), that
- will be fixed in follow-up changes and code reorganizations.
- * Makefile.am (ams): New variable, holding the list of all the
- '*.am' fragments in he automake source tree.
- (sc_no_brace_variable_expansions): Use it.
- (sc_rm_minus_f): Likewise.
- (sc_no_for_variable_in_macro): Likewise.
- (sc_mkinstalldirs): Likewise.
- (sc_pre_normal_post_install_uninstall): Likewise.
- (sc_cd_in_backquotes): Likewise.
- (sc_cd_relative_dir): Likewise.
- (sc_tests_make_without_am_makeflags): Likewise.
- (sc_tests_plain_egrep_fgrep): Likewise.
- (sc_mkdir_p): Likewise.
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- tests: do not assume the object file extension is .o
- * tests/specflg7.test: Dig out the object file extension from the
- OBJEXT makefile variable.
- * tests/substref.test: Likewise.
- * tests/specflg8.test: Likewise. Also check that the false-true
- object is created instead of checking the true-true object twice.
- * tests/suffix8.test: Add a chain rule for the case where the
- object file extension is .obj.
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- tests: fetch the 'compile' script for subdir objects
- * tests/libobj19.test: Subdir objects are used, so the 'compile'
- script needs to be present for inferior hosts. Fetch it.
- 2012-01-30 Peter Rosin <peda@lysator.liu.se>
- tests: fetch the 'ar-lib' script for archiver usage
- * tests/libobj10.test: The archiver is used, so the 'ar-lib'
- script needs to be present for inferior hosts. Fetch it.
- 2012-01-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure of 'transform2.test' on Cygwin
- On newer Cygwin versions (at least 1.7.x), the 'transform2.test'
- test has been failing spuriously; the gist is the following:
- some *purposefully* rigged install rules there try something
- like:
- install bla.exe .../inst/bin/foo.exe
- install script.sh .../inst/bin/foo
- and the second install command fails (trying to overwrite the
- '.../inst/bin/foo.exe' file, likely due to overly aggressive
- appending of '.exe' suffix when copying/renaming Windows
- executables). Since this is a Cygwin issue rather than an
- Automake one (and since the use case we are testing is a really
- corner-case anyway, making it unworthy to attempt to work
- around it in automake proper), we simply hack the test case
- to avoid the failure.
- Analysis by Peter Rosin and Ralf Wildenhues.
- References:
- <http://lists.gnu.org/archive/html/automake-patches/2010-08/msg00153.html>
- <http://thread.gmane.org/gmane.os.cygwin/119380>
- * tests/transform2.test: Skip the affected part of the test
- if the described Cygwin behaviour is detected.
- 2012-01-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failure of deleted-am.test with FreeBSD make
- * tests/deleted-am.test: Sleep between the removal of the included
- '.am' fragments and the subsequent "make" calls, to ensure that the
- remake rules kick in. This is required to avoid racy spurious
- failures (~ 60% of the time) with FreeBSD make.
- 2012-01-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid possibly undeserved PASS from check8.test
- * tests/check8.test: Strengthen grepping of "make check" output
- where we know no problem with VPATH rewrites can take place. This
- has the advantage of ensuring that we won't match also "sub/bar"
- when looking for "bar" during the uncolorized tests.
- Suggestion by Peter Rosin.
- 2012-01-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: work around MinGW/MSYS issue in fd redirections
- Some checks on $(AM_TESTS_FD_REDIRECT) were failing on MSYS, likely
- because system calls like "write(9, ...)" simply doesn't work for
- MinGW-compiled programs. Similar usages work for the shell scripts
- though, since /bin/sh is an MSYS program and thus is a lot more
- POSIX-ish than most MinGW-compiled programs.
- The best fix for this issue is to separate the checks using shell
- scripts as dummy test cases from the checks using compiled programs
- for the same purpose, and skip these latter checks on MinGW.
- This change fixes automake bug#10466. Report by Peter Rosin.
- * tests/parallel-tests-fd-redirect.test: Move checks using compiled
- C programs as test cases to ...
- * tests/parallel-tests-fd-redirect-exeext.test: ... this new test.
- * tests/list-of-tests.mk: Update.
- 2012-01-27 Stefano Lattarini <stefano.lattarini@gmail.com>
- warnings: more precise category and message for one warning
- If automake detected an usage like "AC_CONFIG_FILES([./Makefile])"
- in configure.ac, it warned that such an usage was unportable to
- non-GNU make implementations. But the truth is actually worse:
- that is actually *unportable to GNU make* itself, since it breaks
- the automatic remake rules in subtle ways.
- So we now reveal this breakage in a new test case, and enhance
- the warning by giving it a more precise and correct wording, and
- by moving it from the category 'portability' to the category
- 'unsupported'.
- * automake.in (scan_autoconf_config_files): Improve the warning.
- * tests/conffile-leading-dot.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-01-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- release: revamp rules to tag and upload the releases
- The older Makefile rules used to create and tag the releases were
- based on an approach we now consider flawed: they over-mechanized
- some delicate operations that are better performed manually *and*
- double-checked by a developer, and at the same time they did not
- run enough safety checks.
- * Makefile.am (GIT, version_rx, stable_version_rx, beta_version_rx,
- match_version, git_must_have_clean_workdir, determine_release_type):
- New variables.
- (git-release, git-dist): Remove, they are superseded by ...
- (git-tag-release, git-upload-release): ... these new targets.
- 2012-01-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- amversion: add missing dependency
- * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Depend on
- configure.ac, since the value of $(VERSION) can change every
- time configure.ac is updated.
- 2012-01-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: update advice w.r.t. synced files
- * HACKING: Update and improve advices and explanations about files
- in the automake repository that are now owned by automake, but
- mirrored from other upstreams. Also, don't list these files
- explicitly, rather point the reader to the $(FETCHFILES) variable
- in Makefile.am.
- * Makefile.am (FETCHFILES): Don't state that "there should be a
- lot more here", as this is not true anymore today. Only 'COPYING'
- must be synced by hand.
- 2012-01-25 Stefano Lattarini <stefano.lattarini@gmail.com>
- hacking: don't reference ChangeLog anymore
- * HACKING: Don't reference the ChangeLog file anymore, since that
- is now generated from the git commit messages, not maintained by
- hand. So remove advice that is obsolete, and speak about "git
- commit message" instead of "ChangeLog entry" for advice that is
- still relevant.
- 2012-01-24 Stefano Lattarini <stefano.lattarini@gmail.com>
- multilib: move to contrib
- This follows up on commit v1.11-665-gc5df21e of 2012-01-17,
- "multilib: deprecate, will be moved to contrib". See also:
- <http://lists.gnu.org/archive/html/automake-patches/2012-01/msg00109.html>
- * NEWS: Update.
- * automake.in ($seen_multilib): Remove.
- (scan_autoconf_traces): Don't trace 'AM_ENABLE_MULTILIB', and don't
- handle it anymore.
- (handle_multilib): Remove.
- (generate_makefile): Don't call it anymore.
- * doc/automake.texi: Remove documentation about multilib support,
- related macros, and helper files.
- * m4/multi.m4: Delete.
- * m4/Makefile.am (dist_automake_ac_DATA): Remove it.
- * lib/am/multilib.am: Delete.
- * lib/am/Makefile.am (dist_am_DATA): Remove it.
- * contrib/multilib/multilib.am: New file, adapted from extracts of
- a Makefile.in generated with automake multilib support. We did
- this instead of moving and editing 'lib/am/multilib.am' because it
- allows us to license this file with a liberal license that will
- permit users to copy-and-paste it in non-GPLed Makefile.am files
- too).
- * lib/symlink-tree, lib/config-ml.in: Move ...
- * contrib/multilib: ... in here.
- * lib/Makefile.am (dist_script_DATA, dist_pkgvdata_DATA): Update.
- * contrib/multilib/README: New file.
- * contrib/Makefile.am (EXTRA_DIST): Add the files created or moved
- in 'contrib/multlib'.
- * tests/multilib.test: Update and enhance a little.
- * tests/help-multilib.test: Likewise.
- 2012-01-23 Peter Rosin <peda@lysator.liu.se>
- tests: improve diagnostics when write(2) fails
- MinGW programs can't redirect file descriptor 9, they can only redirect
- stdin, stdout and stderr. So, improve the information in the test log.
- See automake bug#10466.
- * tests/parallel-tests-fd-redirect.test (baz.c, zardoz.c): Check the
- return value from the write(2) call, and report detected errors.
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'compilers-for-testsuite'
- * compilers-for-testsuite:
- readme: how to run the testsuite with cross-compilers
- tests: no need to unset CFLAGS in tests requiring 'gcc' anymore
- test defs: allow compilers to be auto-selected on user's request
- test defs: substitute compilers and flags found at configure time
- test defs: setup `*FLAGS' variables for GNU compilers
- configure: search generic compilers for use in the tests
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- Peter Rosin <peda@lysator.liu.se>
- readme: how to run the testsuite with cross-compilers
- * tests/README: Suggest a better way to run the automake testsuite
- with cross-compilers -- that is, configuring the Automake source
- tree with proper `--build' and `--host' configure option. And
- yes, specifying both these options (not only `--host') is indeed
- required to avoid spurious failures in corner cases.
- When you call configure with the `--host' option but without the
- `--build' option, configure tries to auto-detect whether you are
- cross-compiling or not, by trying to run a generated executable.
- That test might spuriously "succeed" in some corner cases (e.g.,
- Cygwin is able to run non-Cygwin apps). In fact, generally, it
- can be the case that a cross-compilation is not detected as a
- cross anymore just because someone has installed an emulator; as
- an example, think of what can happen on a GNU/Linux system that
- is configured (through the use of the binfmt_misc kernel module)
- to execute PE executables (compiled for MS-DOS or Windows) through
- Wine *automatically*. In conclusion, configure needs to be used
- as recommended in the documentation (i.e., by specifying *both*
- `--host' and `--build' instead of just one of them) to not have
- the build fall into any of a number of weird traps.
- * tests/defs (cross_compiling): Improve comments.
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: no need to unset CFLAGS in tests requiring 'gcc' anymore
- * tests/ccnoco.test: Since this test have "gcc" in $required,
- there is no need to manually nullify the CFLAGS variable, since
- now `tests/defs' should automatically re-define that to a value
- appropriate for gcc.
- * tests/ccnoco3.test: Likewise.
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: allow compilers to be auto-selected on user's request
- In the recent changes, by pre-setting the required compilers for
- the `configure' scripts launched by the test scripts, we have
- slightly reduced the coverage of autoconf/automake code aimed at
- automatically detecting said compilers. This commit restore such
- coverage, by allowing the user to instruct the testsuite *not* to
- preset the testsuite compiler(s).
- * tests/defs (cc): If $CC is set to the special value "autodetect"
- or "autodetected", don't export the configure-detected CC, CFLAGS
- and CPPFLAGS variables; rather, unset them.
- (c++): Likewise, but for CXX, CXXFLAGS and CPPFLAGS instead.
- (fortran): Likewise, but for FC and FCFLAGS instead.
- (fortran77): Likewise, but for F77 and FFLAGS instead.
- (require_compiler_): New function, to reduce code duplication.
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: substitute compilers and flags found at configure time
- * tests/Makefile.am (do_subst): Also substitute CC, CXX, F77, FC,
- CPPFLAGS, CFLAGS, CXXFLAGS, FCFLAGS and FFLAGS.
- * tests/defs-static.in: Define those variables, allowing for
- overrides from the environment.
- * tests/defs (for tool in $required): Export (subsets of) those
- variables when the stuff in `$required' calls for it.
- Add related explanatory comments.
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: setup `*FLAGS' variables for GNU compilers
- * configure.ac: Setup some `*FLAGS' variables for use by the
- GNU compilers in our testsuite. For example, use `GNU_CFLAGS'
- instead of `CFLAGS', and so on for similar variables. This
- is especially useful in case the compilers found or defined
- at configure time are not the GNU ones.
- * tests/defs-static.in: Initialize those same variables with
- the values set at configure time, but allowing overrides
- from the environment.
- * tests/Makefile.am (do_subst): Process configure-style
- substitutions of those variables (e.g., `@GNU_CFLAGS@').
- * tests/defs: When a GNU compiler is required, override the
- corresponding generic `*FLAGS' variable with the GNU-specific
- variant (e.g., redefine `$CFLAGS' to take the value of
- `$GNU_CFLAGS').
- 2012-01-23 Stefano Lattarini <stefano.lattarini@gmail.com>
- configure: search generic compilers for use in the tests
- * configure.ac: Look for "generic" C, C++ and Fortran compilers,
- with the aim of starting to use them in the testsuite (this will
- be done in future changes). This is more tricky than it seems,
- since we don't want to abort the whole configure script even if
- no one of those compilers is available (after all, they're only
- needed by the testsuite, not to build automake), but currently
- autoconf doesn't offer an easy way to obtain this behaviour.
- We prefer non-GNU compilers to the GNU ones, to ensure better
- coverage "in the wild".
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: remove redundant 'set -e' calls
- * tests/aclocal-install-absdir.test: Do not set the 'errexit' shell
- flag, as it is already set by 'tests/defs'.
- * tests/distcheck-pr10470.test: Likewise.
- * tests/objext-pr10128.test: Likewise.
- * tests/parallel-tests-dry-run-1.test: Likewise.
- * tests/silent-nested-vars.test: Likewise.
- * tests/tar-override.test: Likewise.
- * tests/vala-mix.test: Likewise.
- * tests/vala-vpath.test: Likewise.
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: fix spurious failure due to autom4te caching
- vala: fix name of temporary file used in vala rules
- vala tests: add missing 'valac' requirement, and other minor fixlets
- news: fix grammaro
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to autom4te caching
- * tests/lzma.test: Remove stale autom4te.cache directories, to
- prevent racy, spurious failures (using 'aclocal --force' was
- not enough, since the cache was still picked up by the following
- automake call).
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist tests: missing 'compress' program was causing spurious failures
- Fixes automake bug#10575.
- The compress(1) tool is becoming anachronistic, and thus is not
- installed by default on modern distros (e.g., Fedora 16). We
- can't thus unconditionally assume it exists on every reasonable
- portability target.
- * tests/dist-formats.tap ($missing_compressors): When defining
- this, don't assume anymore that compress(1) is unconditionally
- available.
- (Parallel compression): Skip this sub-test if compress(1) is
- unavailable.
- Since we are at it, fix a couple of unrelated buglets: a typo
- in a test name (s/distcheck/ark-exists/), and some attempts to
- remove directories with "rm -f".
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: fix name of temporary file used in vala rules
- Unquoted `@' characters in a "..." string in the automake script
- were causing slightly wrong rules to be emitted in the generated
- Makefile.in; i.e., rules like:
- rm -f $@ && echo stamp > $10t
- instead of the expected:
- rm -f $@ && echo stamp > $@-t
- * automake.in (lang_vala_finish_target): Fix that.
- * tests/vala.test: Enhance.
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala tests: add missing 'valac' requirement, and other minor fixlets
- See also automake bug#10575.
- * tests/vala-mix.test ($required): Add 'valac'; this will avoid
- spurious failures on systems lacking a Vala compiler.
- Add some explicative comments for a couple of non-obvious make
- calls.
- Make grepping of "make -n" slightly stricter, to avoid potential
- false positives.
- 2012-01-22 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix grammaro
- * NEWS (Miscellaneous changes): Fix grammaro: s/don't/doesn't/.
- Reported by Jim Meyering.
- 2012-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: distribute 'contrib/multilib/multi.m4'
- multilib: deprecate, will be moved to contrib
- fixlet: flags for Fortran77 compiler are in FFLAGS, not F77FLAGS
- cosmetics: fix a botched comment in a maintainer check
- 2012-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: distribute 'contrib/multilib/multi.m4'
- This fix up a blunder in commit v1.11-665-gc5df21e of 2012-01-17,
- "multilib: deprecate, will be moved to contrib".
- * contrib/Makefile.am (EXTRA_DIST): Add 'multilib/multi.m4'.
- 2012-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- multilib: deprecate, will be moved to contrib
- As of 2012-01-17, according to Google codesarch, almost no active
- package is using the 'multilib' feature offered by automake.
- The only major exception seems to be GCC... But on a closer look,
- it become clear that GCC basically carries its own version of
- multilib support. In fact, Automake syncs its 'config-ml.in' and
- 'symlink-tree' scripts from GCC; and the GCC repository contains a
- version of the 'multi.m4' file that is *more* updated than the one
- in the automake repository (the former having being modified the
- last time in 2008, the latter only in 2006).
- The 'multilib' feature was anyway hardly documented at all, only
- being briefly cited in the manual as an "obscure feature", "still
- experimental", that was only for users "familiar with multilibs"
- and which "can debug problems they might encounter". We expect
- such users to be motivated and knowledgeable enough to make the
- minor adjustments required to start using the contrib version of
- multilib, if they really need to.
- * NEWS (Future backward incompatibility): Update.
- * doc/automake.texi: Deprecate multilib support. State that it
- will be removed from automake core in the next major release.
- * m4/multi.m4 (AM_ENABLE_MULTILIB): Deprecate. If called, now
- gives a proper warning in the 'obsolete' category (while still
- retaining its former behaviour for the rest).
- * tests/multilib.test: Update.
- * contrib/multilib/multi.m4: New, verbatim copy of the earlier
- version of multi.m4, without the new deprecation warning.
- * Makefile.am (fetch): Don't sync the 'config-ml.in' file nor
- the 'symlink-tree' script from GCC SVN repository anymore.
- (FETCHFILES): Adjust.
- (WGET_GCC): Remove, it's not needed anymore.
- 2012-01-21 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixlet: flags for Fortran77 compiler are in FFLAGS, not F77FLAGS
- This change fixes automake bug#10555.
- Note that the bug was a minor one, since it didn't affect the
- compilation rules generated by automake, but only only the "hints"
- printed by automake in some error messages (e.g., "The usual way
- to define `FFLAGS' is to add AC_PROG_F77 to configure.ac").
- * lib/Automake/Variable.pm (%_ac_macro_for_var): The code generated
- by AC_PROG_F77 uses FFLAGS, not F77FLAGS, as the variable where to
- look for switches for the Fortran 77 compiler: adjust accordingly.
- 2012-01-19 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: fix a botched comment in a maintainer check
- * Makefile.am (sc_tests_make_without_am_makeflags): Adjust
- botched description of this check.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cmdline parsing: move into a dedicated perl module
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- cmdline parsing: move into a dedicated perl module
- With this change, we delegate most of the automake and aclocal code
- for command-line options parsing to a new module "Automake::Getopt".
- This allows better code sharing between automake and aclocal, and
- also with Autoconf, which will sync the new module from us. See
- also autoconf commit 'v2.68-120-gf4be358' (2012-01-17, "getopt: new
- Autom4te::Getopt module"), and this mailing list discussion:
- <http://lists.gnu.org/archive/html/autoconf-patches/2012-01/msg00033.html>
- This change might interact with the behaviour described in automake
- bug#7434; for example, starting from now, "automake -Wfoo --version"
- will cause automake to emit diagnostic like "unknown warning
- category 'foo'" before actually printing the version number and
- exiting. This is not a big deal in practice, and the code sharing
- and simplifications introduced by this patch is certainly worth it.
- Still, we should revisited the issue in the future.
- * lib/Automake/Getopt.pm: New module, basically a slightly-edited
- copy of the 'lib/Autom4te/Getopt.pm' file from the autoconf devel
- repository (commit v2.68-120-gf4be358). It defines and exports ...
- (parse_options): ... this new function.
- * automake.in (parse_arguments): Use the new function.
- * aclocal.in (parse_arguments): Likewise.
- * lib/Automake/Makefile.am (dist_perllib_DATA): Add the new file.
- * tests/getopt.test: Remove.
- * tests/list-of-tests.mk: Update.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: don't use custom TAP diagnostic in our own tests
- We simply don't need it (yet), we are not actually using it (the
- set up for using it is there in the Makefile, but no test script
- makes actual use of that).
- * tests/Makefile.am (TAP_LOG_DRIVER_FLAGS): Remove '-comments' and
- '--diagnostic-string' options.
- * tests/defs ($diag_string_): Remove redefinition.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: better name for a couple of tests
- Two tests checking "make -n" behaviour with the parallel-tests
- harness has been introduced in the Automake repository in the past:
- one of them ('parallel-tests-dryrun.test') in the maint branch, the
- other one ('parallel-tests-dry-run.test') in the master branch.
- Needless to say, their too-much-similar names can be a great source
- of confusion now. Moreover, the two tests have been written during
- distinct refactorings, and are meant to exercise different code
- paths and/or usage scenarios, so that no one of them subsumes the
- other, and they should be both kept.
- Thus we simply rename both of them to avoid future confusion.
- * tests/parallel-tests-dryrun.test: Renamed ...
- * tests/parallel-tests-dry-run-1.test: .. to this.
- * tests/parallel-tests-dry-run.test: Renamed ...
- * tests/parallel-tests-dry-run-2.test: .. to this.
- Add cross-reference among them.
- * tests/list-of-tests.mk: Adjust.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: simplify our top-level "recheck" target
- * Makefile.am (recheck): Now that all the test scripts are in
- the 'tests/' directory, its recipe can be greatly simplified,
- as we don't need to deal with recursion in multiple subdirectories
- anymore.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- cosmetics: move CheckListOfTests.am into tests/
- tests: move all under the same hierarchy ('tests/' directory)
- gitlog-to-changelog: update from upstream
- changelog: don't cluster multiple entries under the same "date line"
- + Extra non-trivial edits:
- * tests/Makefile.am (XFAIL_TESTS): Update with the xfailing tests
- that were in 'lib/Automake/tests'. Add proper "FIXME" comment.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- cosmetics: move CheckListOfTests.am into tests/
- After the previous change 'v1.11-660-gfbeda3d', the makefile
- fragment 'CheckListOfTests.am' is used only by the Makefile.am
- in 'tests'; so keeping them two nearer makes sense. It also help
- in reducing potential confusion, since (after that same change)
- the whole Automake testsuite is expected to be (and remain)
- contained into the 'tests' subdirectory.
- * CheckListOfTests.am: Move ...
- * tests/CheckListOfTests.am: ... to this.
- * tests/Makefile.am (include): Adjust.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move all under the same hierarchy ('tests/' directory)
- This simplifies the organization of the Automake source tree and
- reduces the (lamentably high) number of Makefiles in the Automake
- build system by one. It also makes the maintainer check that
- verifies the consistency of list of tests more self-contained and
- simpler. Finally, it might be a first step forward the transition
- to a non-recursive build system for automake (if we ever decide to
- go down that road fully some day).
- * lib/Automake/tests: All the '*.pl' tests in here moved ...
- * tests/pm: ... into this new directory.
- * lib/Automake/tests/Makefile.am: Remove, its meaningful
- contents moved ...
- * tests/Makefile.am: ... here, with obvious adjustments.
- (test_subdirs): New variable, for the sake of the recipe
- of 'maintainer-check-list-of-tests'.
- * CheckListOfTests (maintainer-check-list-of-tests): Enhance
- its recipe to make it able to deal with test script residing
- in subdirectories.
- * Makefile.am (maintainer-check-list-of-tests): Simplified.
- (TEST_SUBDIRS): Remove, no more needed.
- * tests/list-of-tests.mk (perl_TESTS): New variable, lists
- the '.pl' tests just moved into 'tests/pm'.
- (handwritten_TESTS): Add the contents of '$(perl_TESTS)'.
- * lib/Automake/Makefile.am (SUBDIRS): Remove.
- * configure.ac (AC_CONFIG_FILES): Update.
- * .gitignore: Adjust.
- 2012-01-18 Stefano Lattarini <stefano.lattarini@gmail.com>
- gitlog-to-changelog: update from upstream
- * lib/gitlog-to-changelog: Update from gnulib upstream. The only
- changes should be cosmetic and/or minor fixlets.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- changelog: don't cluster multiple entries under the same "date line"
- * lib/gitlog-to-changelog: Synced from gnulib. The new version
- has a new option '--no-cluster', that disables clustering of
- adjacent commit messages under the same "date line".
- * Makefile.am (gitlog_to_changelog_options): Add '--no-cluster'.
- Also add a proper '--format' specification to ensure we have a
- blank line between the summary line and the commit message body.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- fixup: contrib: really integrate in automake build system
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: contrib: really integrate in automake build system
- * configure.ac (AC_CONFIG_FILES): Add 'contrib/Makefile'.
- * Makefile.am (SUBDIRS): Add 'contrib'.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- check: move ".log -> .html" conversion in contrib
- That feature has been deprecated in the 1.11.x series, and marked
- for removal from the automake core in the 1.12 release. Here we
- implement such removal.
- Reference:
- <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>
- See also commit 'v1.11-650-g20f2ac9'.
- * doc/automake.texi, NEWS: Update.
- * lib/am/check.am: Don't include 'check-html.am' anymore.
- * lib/am/check-html.am: Move ...
- * contrib/check-html.am: ... to this, and adjust comments.
- * lib/am/Makefile.am (dist_am_DATA): Update.
- * contrib/Makefile.am (EXTRA_DIST): Likewise.
- * tests/parallel-tests2.test: Adjust.
- * tests/parallel-tests-dryrun.test: Remove checks on the
- ".log -> .html" conversion.
- * tests/test-driver-custom-html.test: Remove as obsolete.
- * tests/test-driver-custom-no-html.test: Likewise.
- * tests/tap-html.test: Likewise.
- * tests/list-of-tests.mk: Don't list removed tests anymore.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- contrib: new, a directory for non-mainstream functionalities
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tap: some makes in parallel mode unconditionally serialize output
- Some make implementations (among them, FreeBSD make, NetBSD make,
- and Solaris Distributed Make), when run in parallel mode, serialize
- the output from their targets' recipes unconditionally. This has
- the nasty side effect that the user won't see the partial results
- of a TAP test until the test has terminated. This is not something
- our TAP driver script can work around unfortunately; in fact, the
- driver is sending out its output progressively and "in sync" with
- test execution -- it is make that is stowing such output away
- instead of presenting it to the user as soon as it gets it.
- So we content ourself with working around the issue in our
- testsuite, to at least avoid failures we could do nothing to
- prevent.
- * tests/tap-realtime.test: Skip this test if the make program used
- is a non-GNU make running in parallel mode. And if Sun dmake is
- being used, try to force it to run in serial mode, by exporting the
- 'DMAKE_MODE' environment variable to "serial".
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- contrib: new, a directory for non-mainstream functionalities
- This new 'contrib' hierarchy will be a good place were to move
- implementation/support for obsolescent features we are not yet
- ready to remove completely, or were to leave experimental or
- third-party features to cook before their eventual inclusion in
- the automake core.
- * contrib: New directory.
- * contrib/README: New file.
- * contrib/Makefile.am: New file.
- (EXTRA_DIST): Distribute README.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: APIs for custom test drivers are highly experimental
- * doc/automake.texi (API for Custom Test Drivers): The APIs
- described here are not "somewhat experimental", but rather
- "highly experimental". Don't promise the sure a sort of
- backward-compatibility that we are very likely not going to
- keep.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid spurious failures with parallel make
- Some tests are unprepared to be run with a make command that runs
- in parallel mode by default. This can happen e.g., if the user
- explicitly run the tests with something like:
- AM_TESTSUITE_MAKE="gmake -j3" in the
- in the environment, but also if the make used in the testsuite is
- Sun Distributed Make, and the 'DMAKE_MODE' environment variable is
- set to "parallel".
- Fix some instances of this issue.
- * tests/tap-doc.test (Makefile.am): Declare explicit dependencies
- among the test cases, to ensure they are run in the correct order.
- * tests/tap-doc2.test: Set the 'DMAKE_MODE' environment variable
- to "serial", to prevent Sun dmake from trying to run in parallel.
- Remove other now-superfluous workarounds for dmake.
- 2012-01-17 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures with Solaris dmake
- Solaris Distributed Make, when run in parallel mode, can sprinkle
- its standard output with lines like:
- hostname --> 2 jobs
- ...
- hostname --> Job output
- ...
- This behaviour was causing spurious errors in some tests where we
- compare the output of make with a known, expected value. Fix that.
- * tests/tap-doc.test: Before comparing the output from make with its
- expected value, remove extra lines that could have been printed by
- Solaris dmake.
- * tests/tap-doc2.test: Likewise.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- recheck: fix interaction with "make -n"
- vala: avoid potential useless remakes (minor bugfix)
- vala: enhance tests
- recheck: behave better with non-GNU make
- check: separate .log -> .html conversion from core testsuite harness
- docs: deprecate .log -> .html conversion by parallel-tests
- tests: list some forgotten test cases in $(TESTS)
- maintcheck: consistency of list of test scripts
- build: explicitly declare some targets as .PHONY
- maint: remove obsolete/broken maintainer targets
- build: improve silencing of automake build system
- tests: move list of tests in its own Makefile fragment
- + Extra non-trivial edits:
- * tests/parallel-tests2.test: Obvious edits to merge the slightly
- inconsistent enhancements to coverage done in master with those
- done in maint.
- * lib/am/check.am (check-TESTS, recheck): Sweeping and rather
- complex changes to merge the considerable divergences between
- maint and master in a way that is meaningful and, where possible,
- retains the semantic changes from both maint and master.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'check-html-deprecate' into maint
- * check-html-deprecate:
- recheck: fix interaction with "make -n"
- recheck: behave better with non-GNU make
- check: separate .log -> .html conversion from core testsuite harness
- docs: deprecate .log -> .html conversion by parallel-tests
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- recheck: fix interaction with "make -n"
- * lib/am/check.am (recheck): Ensure the recipe does not erroneously
- remove '.log' files when running under "make -n". For the sake of
- NetBSD make, this also means that ...
- (.MAKE): ... this cannot depend on 'recheck' anymore.
- * tests/parallel-tests-dryrun.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: avoid potential useless remakes (minor bugfix)
- * automake.in (lang_vala_finish_target): Ensure the timestamp file
- from which the C files generated from Vala sources depend on gets
- created with a modification time that is truly older than those of
- said generated C files. This prevents make from attempting useless
- rebuilds (which were bound to happen deterministically on systems
- with sub-second timestamp resolutions). It is worth noting that,
- luckily, those useless rebuild ended up being a no-op, since the
- Vala compiler is careful not to update the timestamp of an output
- file if its content has not changed from the previous version.
- Still, the useless rebuilds messed up "make -q" and "make -n"
- invocations, and were technically incorrect (despite being, as
- noted, inoffensive in practice).
- Problem revealed by failure of tests vala-mix.test and vala5.test
- on a fast Solaris 10 system whose filesystem had a sub-second
- timestamp resolution.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: enhance tests
- * tests/vala.test: Extend test. Throw in some cosmetic and
- consistency changes since we are at it.
- * tests/vala5.test: Avoid uselessly requiring libtool. Ensure a
- failure happens in case VALAFLAGS are not supported as expected.
- Extend test in some ways. Throw in some cosmetic and consistency
- changes since we are at it.
- * tests/vala-mix.test: New test.
- * tests/list-of-tests.mk: Add it.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- recheck: behave better with non-GNU make
- * automake.in (handle_tests): Also substitute '%CHECK_DEPS%' with
- the value of the '@check' array, containing the list of early
- test dependencies like '$(check_SCRIPTS)', $(check_PROGRAMS)',
- etc.
- * lib/am/check.am (recheck): Explicitly depend on '%CHECK_DEPS%'.
- (check, recheck): Unify the implementation of their recipes, with
- different code paths taken depending on the name of the target.
- This makes the implementation of "recheck" less brittle in the
- process (especially when non-GNU make and AM_MAKEFLAGS overriding
- are involved).
- * lib/am/check-html.am (check-html, recheck-html): Likewise.
- * tests/check.test: Adjust to avoid spurious failure.
- * tests/parallel-tests2.test: Improve coverage.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- check: separate .log -> .html conversion from core testsuite harness
- That feature is to be deprecated in the 1.11.x series, and removed
- from the automake core in the 1.12 release, where it will instead
- be offered in a semi-independent extra '*.am' fragment. So let's
- start better separating the .log -> .html conversion from the "core
- code" of the parallel-tests harness.
- Reference:
- <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>
- * lib/am/check.am (.log.html, check-html, recheck-html): Move these
- targets ...
- * automake.in (handle_tests): ... and the initialization of the
- TEST_SUITE_HTML variable and the cleaning of the $(TEST_SUITE_HTML)
- file ...
- * lib/am/check-html.am: ... in this new file, with related (minor)
- refactorings, enhancements and simplifications.
- * lib/am/check.am (.MAKE. PHONY, AM_RECURSIVE_TARGETS): Adjust.
- * lib/am/Makefile.am (dist_am_DATA): Add 'check-html.am'.
- * tests/parallel-tests2.test: Improve coverage.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: deprecate .log -> .html conversion by parallel-tests
- That feature is to be deprecated in the 1.11.x series, and
- removed in the 1.12 release.
- Reference:
- <http://lists.gnu.org/archive/html/automake/2012-01/msg00005.html>
- * doc/automake.texi (Simple Tests using parallel-tests): Deprecate
- the '.log' -> '.html' conversion and the targets 'check-html' and
- 'recheck-html'. Related rewording and reformatting.
- * NEWS (Future backward-incompatibilities): Update.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: list some forgotten test cases in $(TESTS)
- This way, they will be properly executed by "make check", and
- properly distributed. Our previous commit 'v1.11-647-g27f1a1c'
- is already paying its dividends!
- * tests/list-of-tests.mk (handwritten_TESTS): Add check12.test,
- dist-missing-included-m4.test, dist-missing-am.test, and
- dist-missing-m4.test.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: consistency of list of test scripts
- This is basically a backport of commit 'v1.11-358-g7b6ab07'
- and its follow-ups. The possibility of easily checking that
- the list of test scripts listed in a Makefile equals that of
- the tests on the filesystem has proved itself so useful that
- it's worth taking the annoyance of backporting it to maint.
- * CheckListOfTests.am: New file, backported from master (commit
- 'v1.11-1736-g083a75b') with minor adjustments.
- (maintainer-check-list-of-tests): New target, check for consistency
- between the list of tests defined in the including Makefile and the
- list of tests on the filesystem.
- (clean-maintcheck-testslist-tmp): New rule, to clean up temporary
- files that might be left around by the rules associated with the
- previous target.
- (clean-local): Depend on it.
- * lib/Automake/tests/Makefile.am: Include `CheckListOfTests.am'.
- * tests/Makefile.am: Likewise.
- * Makefile.am (maintainer-check-list-of-test): New target,
- calling recursively into `tests/' and `lib/Automake/tests/',
- using ...
- (TEST_SUBDIRS): ... this new variable.
- (maintainer-check): Added dependency from the new target
- `maintainer-check-list-of-tests'.
- 2012-01-16 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: completeness check on list of tests simplified
- * CheckListOfTests.am: Simplify the recipe, accordingly to the
- assumption that all the entries in $(TEST_EXTENSIONS) and in
- $(TESTS) have an associated real test script. This was not the
- case when we used to have some entries in $(TESTS) that were not
- real files, but rather "parameters" (sort of) for the corresponding
- $(LOG_COMPILER). However, that usage had proven to be confusing
- and brittle, and thus removed (see commit 'v1.11-1308-g375f23d' of
- September 8 2011, "testsuite: revamp generation of autogenerated
- tests").
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: explicitly declare some targets as .PHONY
- * Makefile.am (fetch, git-dist, git-release, maintainer-check):
- Declare as ".PHONY".
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: remove obsolete/broken maintainer targets
- * Makefile.am (git-diff): Remove. First, we don't distribute diffs
- between an automake version and the next one anyway, so this target
- is pointless. Moreover, its recipe has been broken for quite a
- long time now, always generating an empty diff due to the spurious
- '$(PACKAGE)' argument that was passed to the "git diff" invocation.
- (path-check): Remove. The 'pathchk' program running in this check
- complains about any file with name longer than 14 characters, which
- is a ridiculously low limit for today standards. Also, we already
- had several test scripts (no less than 195!) that were exceeding
- that limit, and nobody ever complained (not even on MinGW/MSYS nor
- Cygwin).
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: improve silencing of automake build system
- In this change, we continue the silencing of the automake build
- system that has been started in commit v1.11-642-g17542c3, but
- which has been left incomplete there for an (absent-mindness)
- mistake.
- * Makefile.am (INSTALL): Silence the recipe.
- (automake, aclocal): Likewise, and improve them a little since
- we are at it.
- * lib/Automake/Makefile.am (Config.pm): Likewise.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move list of tests in its own Makefile fragment
- This change will make it easier to merge maint into master, which
- has a similar Makefile setup in the testsuite.
- * tests/Makefile.am (include): Inclusion of ...
- * tests/list-of-tests.mk: ... this new file.
- * tests/Makefile.am (TESTS): Move most of its content into,
- and redefine in function of, ...
- * tests/list-of-tests.mk (handwritten_TESTS): ... this new
- variable.
- * tests/gen-parallel-tests: Update.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: move list of tests in its own Makefile fragment
- build: silence automake build system
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: move list of tests in its own Makefile fragment
- This change will make it easier to merge maint into master, which
- has a similar Makefile setup in the testsuite.
- * tests/Makefile.am (include): Inclusion of ...
- * tests/list-of-tests.mk: ... this new file.
- * tests/Makefile.am (TESTS): Move most of its content into,
- and redefine in function of ...
- * tests/list-of-tests.mk (handwritten_TESTS): ... this new
- variable.
- * tests/gen-parallel-tests: Update.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- build: silence automake build system
- * configure.ac (AM_SILENT_RULES): Invoke with "yes" as a parameter,
- to activate silent rules by default.
- * NEWS: Update.
- * Makefile.am (sc_perl_syntax): Silence its recipe unconditionally,
- similarly to what is done for other syntax checks.
- (release-stats): Be silent by default *but not unconditionally*,
- thanks to the use of $(AM_V_GEN).
- (path-check, git-diff): Be silent by default, thanks to the use
- of $(AM_V_GEN).
- * m4/Makefile.am ($(top_srcdir)/m4/amversion.m4): Likewise.
- * doc/Makefile.am ($(srcdir)/amhello-1.0.tar.gz): Likewise.
- * tests/Makefile.am ($(srcdir)/parallel-tests.am): Likewise.
- ($(parallel_tests)): Likewise.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- gnupload: moved to gnulib
- sync: gitlog-to-changelog from gnulib upstream
- test defs: backport optimized 'using_gmake' implementation
- tests: unify some tests on "make -n", reducing duplication
- vala: use "$(am__cd) $(srcdir)", not "cd $(srcdir)"
- + Extra edits:
- * tests/maken3.test: Carry over (with necessary adjustments) the
- code from maken4.test that determines whether $MAKE supports the
- special '.MAKE' target.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- gnupload: moved to gnulib
- Since the gnupload script is not required by automake-generated
- code (be it configure or Makefile content), and is not specifically
- tied to automake in any way, it is better to have its master copy
- installed in the gnulib repository, as is already done for similar
- generally-useful, maintainer-oriented scripts. We can them sync it
- from there.
- See also gnulib commit v0.0-6822-gf8b7120, and:
- <http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00222.html>
- * Makefile.am (FETCHFILES): Added 'gnupload'.
- (fetch): Also sync 'gnupload' from the gnulib repository.
- * lib/gnupload: Synced from gnulib.
- * NEWS: Update.
- 2012-01-15 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: gitlog-to-changelog from gnulib upstream
- * lib/gitlog-to-changelog: Synced from upstream, by "make fetch".
- 2012-01-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: backport optimized 'using_gmake' implementation
- * tests/defs.in (using_gmake): Backport optimized, result-caching
- implementation from master.
- 2012-01-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: unify some tests on "make -n", reducing duplication
- * tests/maken2.test: Merge into ...
- * tests/maken.test: ... this test, to avoid unnecessary code
- duplication. Make checks depending on GNU make conditional to
- the actual presence of GNU make.
- * tests/maken4.test: Similarly, merge into ...
- * tests/maken3.test: ... this test.
- * tests/Makefile.am (TESTS): Remove maken2.test and maken4.test.
- 2012-01-14 Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: use "$(am__cd) $(srcdir)", not "cd $(srcdir)"
- * automake.in (lang_vala_finish_target): In the generated rules,
- use '$(am__cd)', not bare 'cd', to chdir into $(scdir). Issue
- revealed by the maintainer check 'sc_cd_relative_dir'.
- 2012-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- dist: avoid $(distdir) removal failure on MSYS/MinGW
- tests: fix spurious failure of 'get-sysconf.test'
- coverage: expose automake bug#10470 (distcheck-related)
- tests: make 'aclocal-install-absdir.test' executable
- tests: require GNU make in 'vala-vapth.test'
- vala: fix VPATH builds
- tests: fix some bugs in the vala-vpath test
- 2012-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'fix-pr10470' into maint
- * fix-pr10470:
- dist: avoid $(distdir) removal failure on MSYS/MinGW
- coverage: expose automake bug#10470 (distcheck-related)
- 2012-01-13 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: avoid $(distdir) removal failure on MSYS/MinGW
- This change fixes automake bug#10470.
- On MSYS (1.0.17) it is not possible to remove a directory that is
- in use, and this, together with timing issues, could cause spurious
- failures in the cleanup code of the "distcheck" recipe. In fact,
- it should be noted that assuming a directory can be removed while
- it the CWD of a running process is a POSIX violation:
- "If the directory is the root directory or the current working
- directory of any process, it is unspecified whether the function
- succeeds, or whether it shall fail and set errno to [EBUSY]."
- * lib/am/distdir.am (am__remove_distdir): If rm fails, sleep some
- seconds and retry, to give potential "pending" processes some time
- to exit and "release" the directory.
- * tests/Makefile.am (XFAIL_TESTS): Remove 'distcheck-pr10470.test'.
- Report and suggestions by Peter Rosin and Eric Blake.
- 2012-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure of 'get-sysconf.test'
- * tests/get-sysconf.test: Do not assume that a ChangeLog file exists
- in $(srcdir): now that the ChangeLog is autogenerated and not under
- version control anymore, this is not necessary true. Instead, if we
- are running from a git checkout, use "git log" to get information on
- the version of the automake snapshot being tested (and fall back on
- extracting the first ChangeLog entry otherwise).
- Reported by Jim Meyering in automake bug#10418.
- Cherry picked from commit v1.11-1675-g104f302.
- 2012-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#10470 (distcheck-related)
- * tests/distcheck-pr10470.test: New test.
- * tests/Makefile.am (TESTS, XFAIL_TESTS): Add it.
- Report and suggestions by Peter Rosin and Eric Blake.
- 2012-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make 'aclocal-install-absdir.test' executable
- * tests/aclocal-install-absdir.test: Make it executable.
- 2012-01-12 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: add missing dependency for some 'ar-lib*.test' tests
- This change fixes spurious failures of the tests ar-lib4.test,
- ar-lib6a.test and ar-lib6b.test.
- * tests/Makefile.am (ar-lib4.log): Depend explicitly on the
- `libtool-macros.log' file.
- (ar-lib6a.log, ar-lib6b.log): Likewise.
- 2012-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: distdir not unconditionally removed anymore for xz and lzip
- This change fixes automake bug#10444 a.k.a. bug#10448.
- The 'dist-xz' and 'dist-lzip' recipes were erroneously using
- '$(am__remove_distdir)' instead of '$(am__post_remove_distdir)'
- to cleanup the '$(distdir)'; so a "make dist" issued in a package
- using (say) gzip and xz compression would have failed to properly
- created the gzip tarball, since the distdir was unconditionally
- removed by "make dist-xz" upon its completion, instead of being
- left populated for the following "make dist-gzip".
- The problem with 'dist-xz' was introduced in the merge commit
- `v1.11-1142-g47587d1', and the problem with 'dist-lzip' was
- introduced in the merge commit `v1.11-1673-gc1b14e9'
- * lib/am/distdir.am (dist-xz): Use '$(am__post_remove_distdir)',
- not '$(am__remove_distdir)'.
- (dist-lzip): Likewise.
- 2012-01-11 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: archive and compression formats used by "make dist"
- This change exposes automake bug#10444 a.k.a. bug#10448.
- * tests/dist-formats.tap: New test.
- * tests/lzip.test: Remove, it's obsolete now.
- * tests/nogzip.test: Likewise.
- * tests/nogzip2.test: Likewise.
- * tests/xz.test: Likewise.
- * tests/list-of-tests.mk: Update.
- 2012-01-10 Peter Rosin <peda@lysator.liu.se>
- tap/awk: avoid redirection issues with bash 3.2 and earlier
- Fixes automake bug#10465.
- * lib/tap-driver.sh: Add workaround for bash 3.2 and earlier, which
- sometimes does not properly set '$?' when failing to write redirected
- output of a compound command. See the Autoconf manual for more details.
- The workaround was pointed out by Eric Blake.
- 2012-01-09 Peter Rosin <peda@lysator.liu.se>
- tests: detect that MSYS lacks symlinks
- * tests/self-check-cleanup.tap: Also check if "ln -s" really created a
- symlink to cater for MSYS falling back to an ordinary copy. Also, don't
- chmod the symlinks if they were never created.
- 2012-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: avoid many spurious failures on MSYS due to lack of symlinks
- Fixes automake bug#10441.
- * tests/add-missing.tap: Do not assume the system supports real
- symlinks, as this is not the case for MinGW/MSYS. Skip checks
- that would spuriously fail in that situation.
- * tests/copy.test: Likewise.
- Reported by Peter Rosin.
- 2012-01-08 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: require GNU make in 'vala-vapth.test'
- * vala-vpath.test ($required): Add the "GNUmake" requirement, since
- rules generated by vala support are expected to work with GNU make
- only.
- 2012-01-08 Ryan Lortie <desrt@desrt.ca> (tiny change)
- Stefano Lattarini <stefano.lattarini@gmail.com>
- vala: fix VPATH builds
- This change fixes automake bug#9859.
- * automake.in (lang_vala_finish_target): Create the stamp file
- '${derived}_vala.stamp' in $(srcdir), not in $(builddir).
- Also, don't try to chdir to the $(srcdir) to trigger the rebuild
- rules, since that is just wrong in a VPATH setup.
- * tests/vala-vpath.test, tests/vala2.test: Extend to catch more
- possible VPATH issues.
- * tests/Makefile.am (XFAIL_TESTS): Remove 'vala-vpath.test'.
- * NEWS, THANKS: Update.
- 2012-01-08 Ryan Lortie <desrt@desrt.ca> (tiny change)
- tests: fix some bugs in the vala-vpath test
- * tests/vala-vpath.test: There are (trivial) problems in this
- testcase that would cause the build to fail even if the core
- issue were resolved. Fix those.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: list forgotten test case in $(TESTS)
- * tests/list-of-tests.mk: Also list 'tar-override.test'.
- 2012-01-06 Paul Eggert <eggert@cs.ucla.edu>
- scripts: quote 'like this', not `like this'
- This change follows up on recent changes to the GNU coding standards.
- They now suggest that we should quote 'like this' or "like this" instead
- of `like this'; see:
- <http://www.gnu.org/prep/standards/html_node/Quote-Characters.html>.
- Gnulib is being changed accordingly, and Gnulib imports some files
- directly from Automake master, so change those files to use the
- straight-up style. This affects only commentary and quoting in
- diagnostics.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: safer declarations of test dependencies
- To declare prerequisites common to all the tests, we now prefer to
- use the special `check_DATA' and `check_SCRIPTS' variables rather
- than "lazy" dependency declaration like "$(TEST_LOGS): DEPS ...";
- this because the latter, allowing run-time overriding of the
- TEST_LOGS variable, turned out to be subtly incomplete in some
- situations involving non-trivial inter-test dependencies. For
- example, if the user issued a:
- make check TESTS=libtool.test
- before the `defs-static' file was created (either explicitly or
- implicitly), a spurious errors followed, along these lines:
- 1. $(TEST_LOGS) got dynamically defined to `libtool.log';
- 2. make saw that, in the Makefile, `libtool.log' was explicitly
- declared depending on `libtool-macros.log' and `defs-static';
- 3. somehow, make considered the dependency on `libtool-macros.log'
- *before* considering the one on `defs-static' (which BTW is
- perfectly legitimate on make's part);
- 4. to satisfy such a dependency, make set out to execute the
- test `libtool-macros.test' in order to create the file
- `libtool-macros.log';
- 5. since `libtool-macros.log' was *not* in $(TEST_LOGS), it
- didn't appear to depend on the `defs-static' file, so make
- didn't consider necessary to build `defs-static' before
- running the `libtool-macros.test' script;
- 6. but that script sources `./defs-static' in order to work;
- thus the test `libtool-macros.test' failed spuriously.
- * tests/Makefile.am ($(TEST_LOGS)): Remove explicit declaration
- of dependency on the required files/scripts; instead use ...
- (check_SCRIPTS, check_DATA): ... these new variables.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: skip tests on perl TAP driver if TAP::Parser is not available
- We had so far taken for granted that all the perl installations
- modern enough to correctly run automake also came with a built-in
- TAP::Parser module; unfortunately, testing on MinGW/MSYS has
- shown that this is not always true, and that a lot of spurious
- testsuite failures would take place in such a situation (see
- automake bug#10440).
- Luckily, the perl implementation of the Automake TAP driver is
- only meant to be used for prototyping and consistency checks, the
- "real" Automake TAP driver being the portable one implemented in
- awk. So we can simply skip the affected tests on systems lacking
- TAP::Parser.
- * tests/defs (fetch_tap_driver): Skip the whole test case if
- the desired tap driver implementation is the perl one but the
- TAP::Parser module is unavailable.
- * tests/tap-bad-prog.tap: Adjust order of calls to `plan_' and
- `fetch_tap_driver', to ensure the test is not skipped after the
- TAP plan has been outputted (which would lead to a spurious
- error).
- * tests/tap-bad-signal.tap: Tweak to avoid the need to source the
- `tap-setup.sh' script, as that might cause a test skip too late,
- i.e., after a TAP plan has been already printed.
- * tests/tap-test-number-0.test: Do not force the test to skip
- when the tested TAP driver implementation is not the perl one.
- On the other hand, when it *is* the perl one, skip the test if
- the TAP::Parser module is unavailable.
- * tests/test-driver-cond.test: Skip the part of the test actually
- running "make check" if the TAP::Parser module is unavailable.
- * tests/get-sysconf.test: Also print the version of the
- `TAP::Parser' module, if available.
- Reported by Peter Rosin.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- dist: do not wrap calls to 'tar' with the 'missing' script
- fixup: previous commit v1.11-627-g1e0aedc
- tests: fix spurious failures due to autom4te caching
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: do not wrap calls to 'tar' with the 'missing' script
- The `missing' script is meant to allow non-developers to build a
- package in the face of slightly-skewed timestamps (as might happen
- e.g. when the package is obtained from a VCS checkout rather than
- from a distribution tarball). It is *not* the business of the
- `missing' script to try to provide wrappers for all the maintainer
- tools (in this case, to tool being a decent tar program). Such
- wrapping of `tar' was not only inappropriate, but it was also
- preventing the legitimate overriding (at make runtime) of the
- `tar' program used in the creation of the distribution tarballs.
- See also automake bug#9822.
- * lib/missing: Don't try to specially wrap `tar' invocations
- anymore.
- * m4/tar.m4 (_AM_PROG_TAR): In the definitions of the `AMTAR'
- variable, do not wrap the `tar' invocation with the `missing'
- script anymore. Instead, allow the user to override the intended
- tar program at make runtime, by defining the `TAR' environment
- variable.
- [$1 == v7]: Similarly for the definitions of the `am__tar' and
- `am__untar' variables. Since we are at it, don't make them depend
- anymore on the definition of the obsolescent `AMTAR' variable.
- * NEWS: Update.
- * tests/missing-tar.test: Remove, it's obsolete.
- * tests/tar-override.test: New test.
- * tests/Makefile.am (TESTS): Update.
- Reported by Akim Demaille.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- fixup: previous commit v1.11-627-g1e0aedc
- * tests/acloca18.test: Do not remove an aclocal.m4 file that is
- needed by a later autoconf invocation.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures due to autom4te caching
- * tests/aclocal9.test: Call aclocal and autoconf with the `--force'
- option.
- * tests/acloca10.test: Sleep between re-runs of aclocal and autoconf.
- * tests/acloca18.test: Explicitly remove also the configure script
- and the aclocal.m4 before re-invoking aclocal and autoconf.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: avoid trailing backslashes in make recipes
- The new testsuite-harness could generate recipes with a trailing
- backslash character (possibly followed by blank characters only),
- in the very common case where the user hadn't defined the special
- $(AM_TESTS_FD_REDIRECT) variable. This caused spurious syntax
- errors with at least older bash versions (e.g., bash 2.05b), and
- could be potentially unportable to other weaker shells.
- See automake bug#10436:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10436>
- and coreutils bug#10427:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10427#8>
- * lib/am/check2.am: Rework line breaks so that no backslash can
- be at the end of a line.
- * tests/parallel-tests-trailing-bslash.test: New test.
- * tests/list-of-tests.mk: Add it.
- Report and diagnosis by Paul Eggert.
- 2012-01-06 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- parallel-tests: avoid issue with overly long lines in sed input
- Additional edits:
- * NEWS: Remove entry from merged commit, since that will also be
- present in the NEWS file of automake 1.11.3.
- * lib/am/check.am (check-TESTS, recheck, recheck-html): Rework
- merged changes to adapt them to the different form these recipes
- has assumed in the master branch (w.r.t. the maint branch).
- 2012-01-05 Stefano Lattarini <stefano.lattarini@gmail.com>
- parallel-tests: avoid issue with overly long lines in sed input
- See automake bug#10437:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10437>
- and coreutils bug#10427:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10427#8>
- * lib/am/check.am (recheck, recheck-html): In order to strip
- trailing whitespace from the definition of the `$list' variable,
- we used to invoke sed in a way that could cause it to get passed
- overly long input lines, causing spurious failures. So rework
- the logic of the recipe to avoid any sed invocation, relying on
- simpler shell idioms instead.
- (check-TESTS): Reorganize the recipe to be more similar to the
- one of `recheck', for consistency and simplicity.
- * NEWS: Update.
- Report and analysis by Paul Eggert.
- 2012-01-05 Peter Rosin <peda@lysator.liu.se>
- tests: work around strangeness in MSYS
- MSYS mishandles carriage returns and behaves very strangely for
- directories with colon in them. It seems that colon-directories are
- somehow mixed up with drive letters.
- Fixes automake bug#7849.
- * tests/instspc.tap: Skip instead of erroring out when $test_string
- is empty for the carriageret case, as that is expected on MSYS. Also,
- for similar reasons, skip instead of erroring out when it is not
- possible to cd into the just created directory, and the directory
- name contains a colon. Update copyright years.
- 2012-01-04 Paul Eggert <eggert@cs.ucla.edu>
- cosmetics: prefer the term "Windows" over "Win32"
- Microsoft has renamed the Win32 API to "Windows API":
- <http://msdn.microsoft.com/en-us/library/aa383723.aspx>
- Also, after some discussion on bug-gnulib, when talking about hosts and
- platforms we believe it's better to talk about "Windows" or "native
- Windows" instead:
- <https://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00009.html>
- <https://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00027.html>
- * doc/automake.texi: Mention "Windows", not "Win32".
- * lib/Automake/XFile.pm: Likewise.
- * lib/ar-lib: Likewise.
- * lib/compile: Likewise.
- * tests/compile2.test: Mention "Windows", not "w32".
- 2012-01-04 Peter Rosin <peda@lysator.liu.se>
- test defs: skip all tests when the lib requirement isn't fulfilled
- * tests/defs (lib): Use skip_all_ instead of skip_, in order to support
- TAP-based test scripts.
- 2012-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: be sure to list all test cases in $(TESTS)
- * tests/list-of-tests.mk: Due to slightly botched merges, the test
- scripts `objext-pr10128.test' and `silent-nested-vars.test' weren't
- being correctly listed in $(TESTS); fix this.
- 2012-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- sync: auxiliary files from upstream synced
- sync: fix syncing of 'gitlog-to-changelog' script
- maintcheck: avoid false positive in sc_tests_plain_make
- 2012-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: auxiliary files from upstream synced
- * lib/texinfo.tex: Synced from upstream, by "make fetch".
- * lib/gitlog-to-changelog: Likewise.
- * lib/config.guess: Likewise.
- * lib/config.sub: Likewise.
- 2012-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- sync: fix syncing of 'gitlog-to-changelog' script
- * Makefile.am (FETCHFILES): Also list 'gitlog-to-changelog'.
- 2012-01-04 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: avoid false positive in sc_tests_plain_make
- * Makefile.am (sc_tests_plain_make): Ensure to only match full
- `make' words. Avoid false positive in `silent-nested-vars.test'.
- 2012-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- install: pkglibexec_SCRIPTS is a valid prefix/primary combination
- coverage: expose automake bug#10128
- progs, libs: implement EXTRA_foo_DEPENDENCIES
- tests: fix spurious failures in 'pr300*.test'
- 2012-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- install: pkglibexec_SCRIPTS is a valid prefix/primary combination
- It makes little sense for `libexec_SCRIPTS' to be accepted as valid
- while `pkglibexec_SCRIPTS' is not. So fix this inconsistency by
- explicitly allowing `pkglibexec_SCRIPTS' as well. It is worth
- noting that the inconsistency has been there for a long time,
- but only the quite recent commit `v1.11-373-g9ca6326' "Warnings
- about primary/prefix mismatch fixed and extended" has made it
- noisy enough to be noticed.
- * automake.in (handle_scripts): Also list `pkglibexec' among the
- prefixes valid for the `SCRIPTS' primary.
- * doc/automake.texi (Scripts): Likewise.
- * tests/primary-prefix-valid-couples.test: Update.
- * THANKS: Likewise.
- * NEWS: Likewise.
- Reported by Dennis Schridde on the automake list:
- <http://lists.gnu.org/archive/html/automake/2012-01/msg00002.html>
- 2012-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- coverage: expose automake bug#10128
- * tests/objext-pr10128.test: New test, still expected to fail.
- * tests/Makefile.am (TESTS, XFAIL_TESTS): Add it.
- 2012-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- progs, libs: implement EXTRA_foo_DEPENDENCIES
- Backported from commit `v1.11-377-g6edafbb'.
- The feature implemented by that change is quite unobtrusive, so
- adding it to a maintenance release is acceptable. Also, there
- have been requests from real-world users for this feature since
- it has been implemented in master; see automake bug#9320:
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9320>
- and this short discussion on the automake list:
- <http://lists.gnu.org/archive/html/automake/2010-11/msg00099.html>
- It would be a pity to make such users wait even more (until
- Automake 1.12 is out) before they could start using this feature.
- Thus we backport it, so that it will appear in the next maintenance
- version of automake (1.11.3).
- * automake.in (handle_programs, handle_libraries)
- (handle_ltlibraries): Mark EXTRA_*_DEPENDENCIES as recognized.
- * doc/automake.texi (Linking, Program and Library Variables)
- (LIBOBJS): Document EXTRA_*_DEPENDENCIES.
- * lib/am/library.am (%LIBRARY%): Also depend on
- $(EXTRA_%XLIBRARY%_DEPENDENCIES).
- * lib/am/ltlibrary.am (%LTLIBRARY%): Also depend on
- (%XLTLIBRARY%_DEPENDENCIES).
- * lib/am/program.am (%PROGRAM%%EXEEXT%): Also depend on
- $(EXTRA_%XPROGRAM%_DEPENDENCIES).
- * tests/extradep.test, tests/extradep2.test: New tests.
- * tests/Makefile.am (TESTS): Update.
- * NEWS: Update.
- 2012-01-03 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failures in 'pr300*.test'
- This change fixes automake bug#10426.
- * tests/pr300-lib.test: Call configure with an explicit '--libdir'
- option, to avoid spurious failures due to users possibly overriding
- '${libdir}' in ther config.site files.
- * tests/pr300-ltlib.test: Likewise.
- Reported by Bruno Haible.
- 2012-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to I/O buffering
- * tests/parallel-tests-interrupt.tap: Ensure the dummy test script
- `foo.test' flushes its standard output before starting to grep the
- log file where such output is being redirected by the parallel test
- harness. Since we are at it, improve this same dummy script to
- better catch unexpected behaviours and results.
- Reported by Jim Meyering in automake bug#10418.
- 2012-01-02 Stefano Lattarini <stefano.lattarini@gmail.com>
- news: fix botched merges, rebase on 1.11.2a NEWS version
- The NEWS file is unfortunately written in a format that doesn't
- lend itself very well to automatic merges; the recent merges of
- maint into master have left it full of blunders and in a somewhat
- inconsistent state.
- Another orthogonal issue is that the current version of NEWS
- still reports all the changes since the last 1.11 version, rather
- than since the latest maintenance version 1.11.2, or, even better,
- since the planned next maintenance version 1.11.3.
- * NEWS: Fix blunders and errors from botched merges. Rebase the
- file on the NEWS file from branch-1.11 (from which automake 1.11.3
- is expected to be released).
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'msvc'
- * msvc:
- tests: fix spurious failure due to autom4te caching
- news: fix suboptimal wording
- tests: various minor tweakings, mostly related to AM_PROG_AR
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to autom4te caching
- * tests/ar-lib3.test: Remove stale autom4te.cache directory, to
- prevent racy, spurious failures.
- Reported by Jim Meyering in automake bug#10418.
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into msvc
- * maint:
- tests: make 'lzip.test' executable
- dist: obsolete support for lzma (superseded by xz and lzip)
- test defs: more granular overriding of the make program
- docs: fix a couple broken anchors
- dist: add support for lzip compression
- docs: fix paragraph names for automake and aclocal invocations
- tests: fix spurious failure due to autom4te caching
- fix: last entry in ChangeLog
- tests: tweak tests on silent-rules for makes without nested vars
- silent-rules: fallback for makes without nested vars
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure of 'get-sysconf.test'
- * tests/get-sysconf.test: Do not assume that a ChangeLog file exists
- in $(srcdir): now that the ChangeLog is autogenerated and not under
- version control anymore, this is not necessary true. Instead, if we
- are running from a git checkout, use "git log" to get information on
- the version of the automake snapshot being tested (and fall back on
- extracting the first ChangeLog entry otherwise).
- Reported by Jim Meyering in automake bug#10418.
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: remove support for lzma (superseded by xz and lzip)
- See also commit `v1.11-611-ge637fa2' (from maint), where support
- for lzma compression of distribution archive had been deprecated.
- * NEWS: Update.
- * lib/Automake/Options.pm: Error out if the `dist-lzma' option
- is used.
- * lib/am/distdir.am: Remove all support for the creation of a
- lzma-compressed distribution archive.
- * tests/lzma.test: Update.
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- tests: make 'lzip.test' executable
- dist: obsolete support for lzma (superseded by xz and lzip)
- test defs: more granular overriding of the make program
- docs: fix a couple broken anchors
- dist: add support for lzip compression
- docs: fix paragraph names for automake and aclocal invocations
- tests: fix spurious failure due to autom4te caching
- fix: last entry in ChangeLog
- tests: tweak tests on silent-rules for makes without nested vars
- silent-rules: fallback for makes without nested vars
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: make 'lzip.test' executable
- * tests/lzip.test: Make it executable.
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'deprecate-lzma' into maint
- * deprecate-lzma:
- dist: obsolete support for lzma (superseded by xz and lzip)
- 2012-01-01 Stefano Lattarini <stefano.lattarini@gmail.com>
- dist: obsolete support for lzma (superseded by xz and lzip)
- The lzma utilities are today superseded by the xz utilities; in
- fact, the official site at <http://tukaani.org/lzma/> reads:
- ``LZMA Utils are legacy data compression software with high
- compression ratio. LZMA Utils are no longer developed, ...
- Users of LZMA Utils should move to XZ Utils.''
- and the existing automake manual (as of 1.11.2) already says:
- ``dist-xz
- Generate an 'xz' tar archive of the distribution. xz archives
- are frequently smaller than bzip2-compressed archives. The 'xz'
- format will soon (early 2009) displace the 'lzma' format''
- Also, the `dist-lzma' target still suffers of never-solved bugs,
- due to the too-high compression ratio its uses by default, which
- might cause an unacceptable memory consumption when one tries to
- compress or, worse, decompress the created tarballs; see also:
- <http://lists.gnu.org/archive/html/automake/2011-12/msg00025.html>
- <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9658>
- * NEWS: Update.
- * doc/automake.texi (Dist, Options): State that `dist-lzma' will
- go away in the next major automake version.
- * lib/Automake/Options.pm (_process_option_list): Deprecate
- `dist-lzma'.
- * tests/lzma.test: Update.
- 2011-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: fix a couple of typos in error messages
- * Makefile.am (sc_tests_plain_autoheader): Fix the message to
- report a bad use of "autocheader", not of "automake."
- (sc_tests_plain_autom4te): Likewise, but for "autom4te" instead.
- (sc_tests_plain_autoreconf): Likewise, but for "autoreconf"
- instead.
- 2011-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- maintcheck: be sure to look at all the test cases
- Many maintainer checks in the top-level Makefile.am did some
- unwarranted assumptions about the test cases, i.e., they assumed
- that all the test scripts matched the wildcard `$(srcdir)/*.test'.
- This failed to properly take into account VPATH builds (where some
- generated tests might be in ${builddir} rather than in ${srcdir}),
- TAP-based tests script (which have a `.tap' extension) and helper
- scripts used by other test cases (which have a `.sh' extension).
- Fixes automake bug#9299.
- * Makefile.am (xtests): New variable, containing a (dynamically
- computed) of files that looks like test cases of the automake
- testsuite.
- Update many rules to use this new variable instead of blindly
- assuming that all the testcases matches the $(srcdir)/tests/*.test
- wildcard.
- * tests/tap-bad-prog.tap: Do a minor formatting change to
- avoid spuriously triggering a match from the syntax check
- `sc_tests_overriding_macros_on_cmdline'.
- 2011-12-31 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'dist-lzip' into maint
- * dist-lzip:
- dist: add support for lzip compression
- 2011-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- test defs: more granular overriding of the make program
- Before this change, the only way the user could override the make
- program used in the automake test cases was to override the $MAKE
- variable in the environment. This had the annoying side effect of
- requiring that, whenever a non-default make program was to be used
- in the test cases, that same make program had to be used to drive
- the execution of the automake testsuite; otherwise, the recursive
- make invocations could pick up $MAKE from the environment, and use
- that instead of re-executing with the correct make.
- So, for example, if one wanted to try how Solaris /usr/ccs/bin/make
- behaved in the automake test cases, he couldn't run the testsuite
- in parallel mode, because that make lacks support for concurrent
- execution of recipes; on fast machines, this easily meant a 4x or
- higher slow-down.
- Once the problem is clear, the solution is pretty simple: allow
- the use of another variable, besides $MAKE, to override the make
- program to be used in the test cases.
- See also commit `v1.11-1318-g3ceeef4', that introduced a more
- general version of this change to the master branch.
- * tests/defs.in: Allow the make implementation to be used by the
- test cases to be overridden by the `$AM_TESTSUITE_MAKE' variable,
- in preference to the `$MAKE' variable.
- 2011-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix a couple broken anchors
- * doc/automake.texi: In previous commit v1.11-605-g5f71f2b (related
- to automake bug#8071), we had renamed the chapters about aclocal
- and automake invocation, and added anchors to the old names as not
- to break hyperlinks to our on-line manual. Unfortunately, these
- anchors had been erroneously placed *before* the relevant `@node'
- commands, instead that just after, so that they ended up pointing
- to the wrong chapters. Fix this. Since we are at it, tweak the
- wording of the comments to the anchors to better match that used
- in the autoconf manual.
- Report and suggestion by Eric Blake.
- 2011-12-30 Antonio Diaz Diaz <ant_diaz@teleline.es>
- dist: add support for lzip compression
- * NEWS: Update.
- * automake.in (handle_dist): Recognize dist-lzip.
- (make_paragraphs): Map LZIP to dist-lzip.
- * doc/automake.texi (Dist, Options): Describe dist-lzip.
- * lib/Automake/Options.pm (_process_option_list): Recognize
- `dist-lzip'.
- * lib/am/distdir.am (dist-lzip): New target.
- (DIST_ARCHIVES) [?LZIP?]: Add `dist-lzip'.
- (dist, dist-all) [?LZIP?]: Add command to create an lzip-compressed
- tarball.
- (distcheck): Handle lzip-compressed tarballs just like the others.
- * tests/lzip.test: New test.
- * tests/Makefile.am (TESTS): Add it.
- 2011-12-30 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge remote-tracking branch 'silent-fixes' into maint
- * origin/silent-fixes:
- fix: last entry in ChangeLog
- tests: tweak tests on silent-rules for makes without nested vars
- silent-rules: fallback for makes without nested vars
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- docs: fix paragraph names for automake and aclocal invocations
- All the other autotools entitle their invocation nodes
- "autofoo Invocation", whereas automake used to call its
- "Invoking Automake" and "Invoking aclocal". So let's
- try to be more consistent.
- This change is related to automake bug#8071.
- Suggestion by Reuben Thomas and Eric Blake.
- * doc/automake.texi (Invoking Automake): Node renamed ...
- (automake Invocation): ... to this.
- (Invoking aclocal): Node renamed ...
- (aclocal Invocation): ... to this.
- Add proper @anchor directives to avoid breaking existing web
- hyperlinks still using the old names of the renamed nodes.
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix spurious failure due to autom4te caching
- * tests/acloca18.test: Remove stale autom4te.cache directories, to
- prevent racy, spurious failures.
- * tests/python11.test: Likewise. Fix a typo in comments since we
- are at it.
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into msvc
- * maint:
- maint: autogenerate ChangeLog
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into silent-fixes
- * maint:
- maint: autogenerate ChangeLog
- fix: last ChangeLog entry
- tests: drop unnecessary requirement in 'subpkg.test'
- gitlog-to-changelog: new auxiliary script, synced from gnulib
- docs: "aclocal --install -I /abs/dir" actually copies files
- docs: fix node names for automake and aclocal invocations
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint' into yacc-work
- * maint:
- maint: autogenerate ChangeLog
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- Merge branch 'maint'
- * maint:
- maint: autogenerate ChangeLog
- 2011-12-28 Stefano Lattarini <stefano.lattarini@gmail.com>
- maint: autogenerate ChangeLog
- Following the practice set by various other GNU projects, we start
- to automatically generate the ChangeLog file from the git commit
- messages. This will avoid duplication (as the ChangeLog entries
- were always inserted both in the git commit message and in the
- version-controlled ChangeLog file), and potential problems with
- spurious merge conflicts (which, although greatly mitigated by
- Bruno Haible's `git-merge-changelog' helper program, have never
- been completely solved).
- * ChangeLog: Moved ...
- * ChangeLog.11:... to this.
- * Makefile.am (EXTRA_DIST): Add it.
- (gitlog_to_changelog_command, gitlog_to_changelog_options): New
- variables.
- (ChangeLog, am--changelog-regen-hook): New targets.
- * .gitignore: Add ChangeLog.
|