From owner-svn-ports-head@FreeBSD.ORG Wed Sep 18 16:01:49 2013 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id E099FB18; Wed, 18 Sep 2013 16:01:49 +0000 (UTC) (envelope-from gahr@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C045823FA; Wed, 18 Sep 2013 16:01:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r8IG1ndT093758; Wed, 18 Sep 2013 16:01:49 GMT (envelope-from gahr@svn.freebsd.org) Received: (from gahr@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r8IG1mLt093753; Wed, 18 Sep 2013 16:01:48 GMT (envelope-from gahr@svn.freebsd.org) Message-Id: <201309181601.r8IG1mLt093753@svn.freebsd.org> From: Pietro Cerutti Date: Wed, 18 Sep 2013 16:01:48 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r327565 - in head/x11-toolkits/fox17: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Sep 2013 16:01:50 -0000 Author: gahr Date: Wed Sep 18 16:01:48 2013 New Revision: 327565 URL: http://svnweb.freebsd.org/changeset/ports/327565 Log: - Update to 1.7.42 Changes: * Added class FXVariant, and supporting classes FXVariantMap and FXVariantArray. The FXVariant class can store basic types like bool, int, or float, but also arrays of variants, or maps of variants. Thus, FXVariant can be used to store an arbitrarily complex tree-like data structure. * Problems in Windows version of fxcpuid.cpp fixed. * Fix cased from (__m128) to _mm_castsi128_ps() intrinsic for portability. * Fix compare operation in FXSize.h. * Added fxstrlcpy() and fxstrlcat() for safe string copy and string concatenation. * Added __noreturn macro for flagging non-returning functions like fxerror(). This may help compilers generate better code for places where these functions are called. * Removed fxsleep(), obsoleted by FXThread::sleep() and FXThread::wkaeat(). * Allow out-of-source builds of FOX on configure-based systems. * Force end-of-string in value returned by gethostname(). * Fix introduced bugs in FXHash and FXDict. * Added swapElms() to FXElement.h. Also added templated swap(). * Added internal function memswap(). * Don't include intrinsics header files unless target architecture is x86 or x86-64. * Updated build on Fedora 18 for Raspberry Pi. - Add two local files with patches to mute compiler warnings and fix potential stack buffer overflow bugs (already reported upstream) Added: head/x11-toolkits/fox17/files/patch-bugs (contents, props changed) head/x11-toolkits/fox17/files/patch-warnings (contents, props changed) Modified: head/x11-toolkits/fox17/Makefile head/x11-toolkits/fox17/distinfo head/x11-toolkits/fox17/pkg-plist Modified: head/x11-toolkits/fox17/Makefile ============================================================================== --- head/x11-toolkits/fox17/Makefile Wed Sep 18 15:58:10 2013 (r327564) +++ head/x11-toolkits/fox17/Makefile Wed Sep 18 16:01:48 2013 (r327565) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= fox -PORTVERSION= 1.7.41 +PORTVERSION= 1.7.42 PORTREVISION= 1 CATEGORIES= x11-toolkits MASTER_SITES= http://ftp.fox-toolkit.org/pub/ \ Modified: head/x11-toolkits/fox17/distinfo ============================================================================== --- head/x11-toolkits/fox17/distinfo Wed Sep 18 15:58:10 2013 (r327564) +++ head/x11-toolkits/fox17/distinfo Wed Sep 18 16:01:48 2013 (r327565) @@ -1,2 +1,2 @@ -SHA256 (fox-1.7.41.tar.gz) = 1c23d9d7f2f9f4b2a51db6acdd447315ae8352563453edf223f4a51b6a0e52f4 -SIZE (fox-1.7.41.tar.gz) = 5053794 +SHA256 (fox-1.7.42.tar.gz) = 5e7a69c64ecfc704c130ea890385256c568fadbb472f91d8256f576b6d87ecf4 +SIZE (fox-1.7.42.tar.gz) = 5062065 Added: head/x11-toolkits/fox17/files/patch-bugs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/x11-toolkits/fox17/files/patch-bugs Wed Sep 18 16:01:48 2013 (r327565) @@ -0,0 +1,256 @@ +--- lib/fxxpmio.cpp.orig 2013-09-18 16:02:08.000000000 +0200 ++++ lib/fxxpmio.cpp 2013-09-18 16:07:33.000000000 +0200 +@@ -128,13 +128,14 @@ + FXchar lookuptable[1024][8],name[100],word[100],flag,best; + FXColor colortable[16384],*pix,color; + const FXchar *src,*line; +- FXint i,j,ncolors,cpp,c; ++ FXint i,j,ncolors,cpp,c,nchar; + + // Null out + data=NULL; + width=0; + height=0; + color=0; ++ nchar=0; + + // NULL pointer passed in + if(!pixels) return false; +@@ -172,7 +173,7 @@ + flag=word[0]; + name[0]=0; + while(nextword(src,word) && !iskey(word)){ +- strncat(name,word,sizeof(name)); ++ nchar += snprintf(name+nchar,sizeof(name)-nchar,"%s",word); + } + if(flaggetClassName():"NULL",ptr,1); ++ fxmessage("\nTYPE:%-23s ID:%-5d SENDER: %-15s PTR: %p #%-4d",typegetClassName():"NULL",ptr,1); + lastsender=sender; + lastsel=sel; + count=1; +--- tests/thread.cpp.orig 2013-09-18 16:13:12.000000000 +0200 ++++ tests/thread.cpp 2013-09-18 16:20:51.000000000 +0200 +@@ -61,7 +61,7 @@ + // Generate jobs + FXint Producer::run(){ + FXint job=0; +- fxmessage("producer start on cpus: %llb\n",affinity()); ++ fxmessage("producer start on cpus: %lx\n",affinity()); + FXuint seed=1013904223u; + for(FXint g=0; g=argc){ fxmessage("Missing threads number argument.\n"); exit(1); } +- nthreads=strtoul(argv[arg],NULL,0); +- if(nthreads<0){ fxmessage("Value for threads (%d) too small.\n",nthreads); exit(1); } ++ nthreads=strtoul(argv[arg],&endptr,0); ++ if(*endptr!='\0'){ fxmessage("Value for threads (%d) too small.\n",nthreads); exit(1); } + } + else if(strcmp(argv[arg],"--minimum")==0){ + if(++arg>=argc){ fxmessage("Missing threads number argument.\n"); exit(1); } +- minimum=strtoul(argv[arg],NULL,0); +- if(minimum<0){ fxmessage("Value for minimum number of threads (%d) too small.\n",minimum); exit(1); } ++ minimum=strtoul(argv[arg],&endptr,0); ++ if(*endptr!='\0'){ fxmessage("Value for minimum number of threads (%d) too small.\n",minimum); exit(1); } + } + else if(strcmp(argv[arg],"--maximum")==0){ + if(++arg>=argc){ fxmessage("Missing threads number argument.\n"); exit(1); } +- maximum=strtoul(argv[arg],NULL,0); +- if(maximum<0){ fxmessage("Value for maximum number of threads (%d) too small.\n",minimum); exit(1); } ++ maximum=strtoul(argv[arg],&endptr,0); ++ if(*endptr!='\0'){ fxmessage("Value for maximum number of threads (%d) too small.\n",minimum); exit(1); } + } + else if(strcmp(argv[arg],"--size")==0){ + if(++arg>=argc){ fxmessage("Missing size argument.\n"); exit(1); } +@@ -176,8 +176,8 @@ + } + else if(strcmp(argv[arg],"--jobs")==0){ + if(++arg>=argc){ fxmessage("Missing jobs count argument.\n"); exit(1); } +- njobs=strtoul(argv[arg],NULL,0); +- if(njobs<0){ fxmessage("Value for njobs (%d) too small.\n",njobs); exit(1); } ++ njobs=strtoul(argv[arg],&endptr,0); ++ if(*endptr!='\0'){ fxmessage("Value for njobs (%d) too small.\n",njobs); exit(1); } + } + else if(strcmp(argv[arg],"-W")==0 || strcmp(argv[arg],"--wait")==0){ + wait=1; +@@ -198,7 +198,7 @@ + } + } + +- fxmessage("main thread %p\n",FXThread::current()); ++ fxmessage("main thread %lx\n",FXThread::current()); + + nthreads=minimum; + Added: head/x11-toolkits/fox17/files/patch-warnings ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/x11-toolkits/fox17/files/patch-warnings Wed Sep 18 16:01:48 2013 (r327565) @@ -0,0 +1,181 @@ +--- include/fxdefs.h.orig 2013-09-18 15:26:29.000000000 +0200 ++++ include/fxdefs.h 2013-09-18 15:26:48.000000000 +0200 +@@ -131,7 +131,7 @@ + + + // Restrict aliasing on pointers +-#if defined(__GNUC__) ++#if defined(__GNUC__) && !defined(__restrict) + #define __restrict __restrict__ + #else + #define __restrict +--- lib/FXFileList.cpp.orig 2013-09-18 15:41:48.000000000 +0200 ++++ lib/FXFileList.cpp 2013-09-18 15:42:11.000000000 +0200 +@@ -1474,7 +1474,7 @@ + } + + // Update item information +- label.format("%s\t%s\t%lld\t%s\t%s\t%s\t%s\t%s",name.text(),extension.text(),newitem->size,modtm.text(),usrid.text(),grpid.text(),attrs.text(),lnknm.text()); ++ label.format("%s\t%s\t%lld\t%s\t%s\t%s\t%s\t%s",name.text(),extension.text(),static_cast(newitem->size),modtm.text(),usrid.text(),grpid.text(),attrs.text(),lnknm.text()); + + // New label + newitem->setText(label); +--- pathfinder/PathFinder.cpp.orig 2013-09-18 16:59:43.000000000 +0200 ++++ pathfinder/PathFinder.cpp 2013-09-18 17:10:58.000000000 +0200 +@@ -1051,7 +1051,7 @@ + selectedModeBits[15]+=FXBIT(mode,15); // SVTX + selectedSpace+=size; + selectedCount+=1; +- FXTRACE((10,"selected : %3d %7lld [%3d %7lld] %s\n",index,size,selectedCount,selectedSpace,filelist->getItemFilename(index).text())); ++ FXTRACE((10,"selected : %3d %7lld [%3d %7lld] %s\n",index,static_cast(size),selectedCount,static_cast(selectedSpace),filelist->getItemFilename(index).text())); + return 1; + } + +@@ -1075,7 +1075,7 @@ + selectedModeBits[15]-=FXBIT(mode,15); // SVTX + selectedSpace-=size; + selectedCount-=1; +- FXTRACE((10,"deselected: %3d %7lld [%3d %7lld] %s\n",index,size,selectedCount,selectedSpace,filelist->getItemFilename(index).text())); ++ FXTRACE((10,"deselected: %3d %7lld [%3d %7lld] %s\n",index,static_cast(size),selectedCount,static_cast(selectedSpace),filelist->getItemFilename(index).text())); + return 1; + } + +@@ -1088,7 +1088,7 @@ + } + totalSpace+=filelist->getItemSize(index); + totalCount+=1; +- FXTRACE((10,"inserted : %3d %7lld [%3d %7lld] %s\n",index,filelist->getItemSize(index),totalCount,totalSpace,filelist->getItemFilename(index).text())); ++ FXTRACE((10,"inserted : %3d %7lld [%3d %7lld] %s\n",index,static_cast(filelist->getItemSize(index)),totalCount,static_cast(totalSpace),filelist->getItemFilename(index).text())); + return 1; + } + +@@ -1101,7 +1101,7 @@ + } + totalSpace-=filelist->getItemSize(index); + totalCount-=1; +- FXTRACE((10,"deleted : %3d %7lld [%3d %7lld] %s\n",index,filelist->getItemSize(index),totalCount,totalSpace,filelist->getItemFilename(index).text())); ++ FXTRACE((10,"deleted : %3d %7lld [%3d %7lld] %s\n",index,static_cast(filelist->getItemSize(index)),totalCount,static_cast(totalSpace),filelist->getItemFilename(index).text())); + return 1; + } + +@@ -1368,15 +1368,15 @@ + info.format(tr("File \"%s\" -> \"%s\"."),filelist->getItemFilename(currentitem).text(),filelist->getItemText(currentitem).section('\t',7).text()); + } + else{ +- info.format(tr("File \"%s\" [%s] (%lld bytes)."),filelist->getItemFilename(currentitem).text(),filelist->getItemText(currentitem).section('\t',1).text(),filelist->getItemSize(currentitem)); ++ info.format(tr("File \"%s\" [%s] (%lld bytes)."),filelist->getItemFilename(currentitem).text(),filelist->getItemText(currentitem).section('\t',1).text(),static_cast(filelist->getItemSize(currentitem))); + } + } + } + else if(1<=selectedCount){ +- info.format(tr("Selected %d items (%lld bytes)."),selectedCount,selectedSpace); ++ info.format(tr("Selected %d items (%lld bytes)."),selectedCount,static_cast(selectedSpace)); + } + else{ +- info.format(tr("Total %d items (%lld bytes)."),totalCount,totalSpace); ++ info.format(tr("Total %d items (%lld bytes)."),totalCount,static_cast(totalSpace)); + } + sender->handle(this,FXSEL(SEL_COMMAND,ID_SETSTRINGVALUE),(void*)&info); + return 1; +--- tests/parallel.cpp.orig 2013-09-18 16:31:08.000000000 +0200 ++++ tests/parallel.cpp 2013-09-18 16:55:25.000000000 +0200 +@@ -60,8 +59,8 @@ + fxmessage("%p: npull=%ld\n",self(),npull); + fxmessage("%p: ncros=%ld\n",self(),ncros); + fxmessage("%p: niter=%ld\n",self(),niter); +- fxmessage("%p: avg=%lld\n",self(),tot/npush); +- fxmessage("%p: ticks=%lld (%.16lfs) tick/push=%.2lf push/s=%.2lf\n",self(),tot,FXdouble(tot)*0.33333333333333E-9,FXdouble(tot)/FXdouble(npush),FXdouble(npush)/(FXdouble(tot)*0.33333333333333E-9)); ++ fxmessage("%p: avg=%lld\n",self(),static_cast(tot/npush)); ++ fxmessage("%p: ticks=%lld (%.16lfs) tick/push=%.2lf push/s=%.2lf\n",self(),static_cast(tot),FXdouble(tot)*0.33333333333333E-9,FXdouble(tot)/FXdouble(npush),FXdouble(npush)/(FXdouble(tot)*0.33333333333333E-9)); + return 0; + } + +@@ -70,18 +69,18 @@ + // Churn cpu for a random while, then return + void churn(){ + FXRandom random(fxgetticks()); +- fxmessage("Churn start th %p core %d/%d\n",FXThread::current(),FXThread::processor(),FXThread::processors()); ++ fxmessage("Churn start th %08lx core %d/%d\n",FXThread::current(),FXThread::processor(),FXThread::processors()); + while(random.randDouble()<0.99999999){ } +- fxmessage("Churn done th %p code %d/%d\n",FXThread::current(),FXThread::processor(),FXThread::processors()); ++ fxmessage("Churn done th %08lx code %d/%d\n",FXThread::current(),FXThread::processor(),FXThread::processors()); + } + + + // Loop through index range + void looping(FXint i){ + FXRandom random(fxgetticks()); +- fxmessage("Looping %03d start th %p\n",i,FXThread::current()); ++ fxmessage("Looping %03d start th %08lx\n",i,FXThread::current()); + while(random.randDouble()<0.9999999){ } +- fxmessage("Looping %03d done th %p\n",i,FXThread::current()); ++ fxmessage("Looping %03d done th %08lx\n",i,FXThread::current()); + } + + +@@ -278,7 +278,7 @@ + + fxmessage("running: %d!\n",pool.getRunningThreads()); + +- fxmessage("main thread %p\n",FXThread::current()); ++ fxmessage("main thread %lx\n",FXThread::current()); + + + // 8-way parallelism if you got the cores +--- tests/codecs.cpp.orig 2013-09-18 17:56:47.000000000 +0200 ++++ tests/codecs.cpp 2013-09-18 16:26:21.000000000 +0200 +@@ -44,7 +44,7 @@ + // Test roundtrip for codec + void roundtriptest(FXTextCodec *codec){ + FXchar dst[32],src[32]; +- FXint c,n,i,j; ++ FXint i,j; + FXwchar wc; + printf("Roundtrip test for: %s..\n",codec->name()); + for(i=0; i<256; i++){ +@@ -61,8 +61,7 @@ + // Test utf8 roundtrip for codec + void utf8roundtriptest(FXTextCodec *codec){ + FXchar dst[32],src[32]; +- FXint c,n,i,j; +- FXwchar wc; ++ FXint n,i,j; + printf("UTF8 Roundtrip test for: %s..\n",codec->name()); + for(i=0; i<256; i++){ + src[0]=i; +@@ -100,7 +99,7 @@ + if(w1!=w2 || m!=4 || n!=1) printf("%06X: Problem: %06X\n",w1,w2); + } + end=fxgetticks(); +- printf("4-Byte case: %lld ticks/character\n",(end-beg)/(0x110000-0x10000)); ++ printf("4-Byte case: %lld ticks/character\n",static_cast((end-beg)/(0x110000-0x10000))); + + // Test utf for codes of 3 bytes + beg=fxgetticks(); +@@ -110,7 +109,7 @@ + if(w1!=w2 || m!=3 || n!=1) printf("%06X: Problem: %06X\n",w1,w2); + } + end=fxgetticks(); +- printf("3-Byte case: %lld ticks/character\n",(end-beg)/(0x10000-0x800)); ++ printf("3-Byte case: %lld ticks/character\n",static_cast((end-beg)/(0x10000-0x800))); + + // Test utf for codes of 2 bytes + beg=fxgetticks(); +@@ -120,7 +119,7 @@ + if(w1!=w2 || m!=2 || n!=1) printf("%06X: Problem: %06X\n",w1,w2); + } + end=fxgetticks(); +- printf("2-Byte case: %lld ticks/character\n",(end-beg)/(0x800-0x80)); ++ printf("2-Byte case: %lld ticks/character\n",static_cast((end-beg)/(0x800-0x80))); + + // Test utf for codes of 1 byte + beg=fxgetticks(); +@@ -130,7 +129,7 @@ + if(w1!=w2 || m!=1 || n!=1) printf("%06X: Problem: %06X\n",w1,w2); + } + end=fxgetticks(); +- printf("1-Byte case: %lld ticks/character\n",(end-beg)/0x80); ++ printf("1-Byte case: %lld ticks/character\n",static_cast((end-beg)/0x80)); + + /* + Modified: head/x11-toolkits/fox17/pkg-plist ============================================================================== --- head/x11-toolkits/fox17/pkg-plist Wed Sep 18 15:58:10 2013 (r327564) +++ head/x11-toolkits/fox17/pkg-plist Wed Sep 18 16:01:48 2013 (r327565) @@ -179,8 +179,8 @@ include/fox-%%MAJORVER%%/FXJPGIcon.h include/fox-%%MAJORVER%%/FXJPGImage.h include/fox-%%MAJORVER%%/FXKOI8RCodec.h include/fox-%%MAJORVER%%/FXKnob.h -include/fox-%%MAJORVER%%/FXLabel.h include/fox-%%MAJORVER%%/FXLFQueue.h +include/fox-%%MAJORVER%%/FXLabel.h include/fox-%%MAJORVER%%/FXList.h include/fox-%%MAJORVER%%/FXListBox.h include/fox-%%MAJORVER%%/FXLocale.h @@ -214,7 +214,6 @@ include/fox-%%MAJORVER%%/FXMutex.h include/fox-%%MAJORVER%%/FXObject.h include/fox-%%MAJORVER%%/FXObjectList.h include/fox-%%MAJORVER%%/FXOptionMenu.h -include/fox-%%MAJORVER%%/FXParallel.h include/fox-%%MAJORVER%%/FXPCXIcon.h include/fox-%%MAJORVER%%/FXPCXImage.h include/fox-%%MAJORVER%%/FXPNGIcon.h @@ -222,6 +221,7 @@ include/fox-%%MAJORVER%%/FXPNGImage.h include/fox-%%MAJORVER%%/FXPPMIcon.h include/fox-%%MAJORVER%%/FXPPMImage.h include/fox-%%MAJORVER%%/FXPacker.h +include/fox-%%MAJORVER%%/FXParallel.h include/fox-%%MAJORVER%%/FXPath.h include/fox-%%MAJORVER%%/FXPicker.h include/fox-%%MAJORVER%%/FXPipe.h @@ -318,6 +318,9 @@ include/fox-%%MAJORVER%%/FXUTF16Codec.h include/fox-%%MAJORVER%%/FXUTF32Codec.h include/fox-%%MAJORVER%%/FXUTF8Codec.h include/fox-%%MAJORVER%%/FXUndoList.h +include/fox-%%MAJORVER%%/FXVariant.h +include/fox-%%MAJORVER%%/FXVariantArray.h +include/fox-%%MAJORVER%%/FXVariantMap.h include/fox-%%MAJORVER%%/FXVec2d.h include/fox-%%MAJORVER%%/FXVec2f.h include/fox-%%MAJORVER%%/FXVec3d.h