Re: [Clamav-devel] Adding targets for the bytecode interpreter

2010-05-17 Thread Török Edwin
On 05/17/2010 09:26 PM, Mark Allan wrote:
 Hi there,
 
 I'm sending this to clamav-devel rather than clamav-users as I suspect I
 may have missed something during the configure/compile phase rather than
 at runtime.  If I'm wrong, I'll happily repost to the -users list.

Please open a bugreport, this situation should be detected and handled
automatically (for 0.96.2 probably).

 
 I maintain a distribution of ClamAV for Mac OS X and have to generate a
 build which runs on both PPC and Intel architectures for the three most
 recent major releases of OS X.  I achieve this by using the following
 settings for the configure phase (after applying the appropriate patch
 for 0.96 clamd on PPC):
 
 bash$ CC=/usr/bin/gcc-4.2 CXX=/usr/bin/g++-4.2 CFLAGS=-O2 -g
 -D_FILE_OFFSET_BITS=64 -mmacosx-version-min=10.4 -isysroot
 /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc  CXXFLAGS=-O2 -g
 -D_FILE_OFFSET_BITS=64 -mmacosx-version-min=10.4 -isysroot
 /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc ./configure
 --disable-dependency-tracking  --enable-llvm --enable-clamdtop
 --with-user=_clamav --with-group=_clamav
 
 When I run clamscan on the same PPC machine I use for building it,
 everything runs fine, however, when I copy the build over to a machine
 with an Intel processor, I get the following warning about there not
 being any available targets.
 
 libclamav JIT: error creating execution engine: No available targets
 are compatible with this triple, see -version for the available targets
 
 
 When I run clambc to see which targets are available, I get the following:
 
 bash$ ./clambc --version
 Clam AntiVirus Bytecode Testing Tool 0.96
 Low Level Virtual Machine (http://llvm.org/):
  llvm version 2.7
  Optimized build with assertions.
  Built May  9 2010 (01:15:14).
  Host: i386-apple-darwin10
  Host CPU: penryn

  Registered Targets:
ppc32 - PowerPC 32
ppc64 - PowerPC 64
 
 If I do the configure and compile on the Intel machine, it gives the
 following targets
 Registered Targets:
 x86- 32-bit X86: Pentium-Pro and above
 x86-64 - 64-bit X86: EM64T and AMD64
 
 Predictably it then gives the same error message as earlier when I copy
 it over to the PowerPC machine.
 
 Could someone tell me how to register both PPC and x86 targets please?

I completely forgot about this while writing configure.

Upstream LLVM builds by default with *all* backends. For ClamAV that
would be overkill (why compile the PPC backend on an x86 in general),
but for bi-arch builds it needs to build both backends, yes.

For now the easiest workaround is to pass --enable-all-jit-targets  to
configure (it'll build X86, PPC and ARM, although ARM is always disabled
at runtime).

A real fix would be to detect the Apple-style universal build (configure
does this already), and build both ppc and x86 then.
If you open a bugreport I'll try to do that for 0.96.2.

 
 On a related note, I'm intrigued to know how it managed to register 64
 bit targets when I only specified 32bit architectures in the configure
 script.

The X86 backend knows to generate code for both 32 and 64-bit targets,
ditto for PPC backend. At runtime the correct target is chosen.
In fact if you build all backends you get nice (cross)compilers for all
targets.

Best regards,
--Edwin
___
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net


[Clamav-devel] Virus DB Repo

2010-05-17 Thread Mohammed Al-Saleh
Hi,

Is the virus database updated through a repository (for example svn or cvs)?
I would like to see how virus database changes over time.
Thanks,

~Moe
___
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net


Re: [Clamav-devel] Virus DB Repo

2010-05-17 Thread Török Edwin
On 05/17/2010 10:21 PM, Mohammed Al-Saleh wrote:
 Hi,
 
 Is the virus database updated through a repository (for example svn or cvs)?

No.

 I would like to see how virus database changes over time.

You can look at the emails on clamav-virusdb@
(although signature removals don't show up there).

Best regards,
--Edwin
___
http://lurker.clamav.net/list/clamav-devel.html
Please submit your patches to our Bugzilla: http://bugs.clamav.net