Which parts of the binary blob are actually needed?

Kelly O'Hair Kelly.Ohair at Sun.COM
Wed May 16 20:58:33 UTC 2007


Unofficial list is:

Binary Libraries:

  lib/i386/libt2k.so    (or bin/t2k.dll)
  lib/i386/libdcpr.so   (or bin/dcpr.dll)
  lib/i386/libjsound.so (or bin/jsound.dll) and libjsoundalsa.so on Linux?

Security Jar Files:

  lib/jce.jar
  lib/ext/sunjce_provider.jar
  lib/security/US_export_policy.jar
  lib/security/local_policy.jar

Classes From rt.jar:

   com/sun/jmx/snmp/SnmpDataTypeEnums.class
   com/sun/jmx/snmp/SnmpDefinitions.class
   com/sun/jmx/snmp/SnmpOid.class
   com/sun/jmx/snmp/SnmpOidDatabase.class
   com/sun/jmx/snmp/SnmpOidDatabaseSupport.class
   com/sun/jmx/snmp/SnmpOidRecord.class
   com/sun/jmx/snmp/SnmpOidTable.class
   com/sun/jmx/snmp/SnmpOidTableSupport.class
   com/sun/jmx/snmp/SnmpParameters.class
   com/sun/jmx/snmp/SnmpPduPacket.class
   com/sun/jmx/snmp/SnmpPeer.class
   com/sun/jmx/snmp/SnmpTimeticks.class
   com/sun/jmx/snmp/SnmpVarBind.class
   com/sun/jmx/snmp/SnmpVarBindList.class
   com/sun/jmx/snmp/Timestamp.class
   com/sun/jmx/snmp/daemon/SendQ.class
   com/sun/jmx/snmp/daemon/SnmpInformRequest.class
   com/sun/jmx/snmp/daemon/SnmpQManager.class
   com/sun/jmx/snmp/daemon/SnmpRequestCounter.class
   com/sun/jmx/snmp/daemon/SnmpResponseHandler.class
   com/sun/jmx/snmp/daemon/SnmpSendServer.class
   com/sun/jmx/snmp/daemon/SnmpSession.class
   com/sun/jmx/snmp/daemon/SnmpSocket.class
   com/sun/jmx/snmp/daemon/SnmpTimerServer.class
   com/sun/jmx/snmp/daemon/WaitQ.class
   com/sun/media/sound/AbstractDataLine.class
   com/sun/media/sound/AbstractLine.class
   com/sun/media/sound/AbstractMidiDevice$AbstractReceiver.class
   com/sun/media/sound/AbstractMidiDevice$BasicTransmitter.class
   com/sun/media/sound/AbstractMidiDevice$TransmitterList.class
   com/sun/media/sound/AbstractMidiDevice.class
   com/sun/media/sound/AbstractMidiDeviceProvider$Info.class
   com/sun/media/sound/AbstractMidiDeviceProvider.class
   com/sun/media/sound/AbstractMixer.class
   com/sun/media/sound/AbstractPlayer.class
   com/sun/media/sound/AiffFileFormat.class
   com/sun/media/sound/AiffFileReader.class
   com/sun/media/sound/AiffFileWriter.class
   com/sun/media/sound/AlawCodec$AlawCodecStream.class
   com/sun/media/sound/AlawCodec.class
   com/sun/media/sound/AuFileFormat.class
   com/sun/media/sound/AuFileReader.class
   com/sun/media/sound/AuFileWriter.class
   com/sun/media/sound/AutoClosingClip.class
   com/sun/media/sound/AutoConnectSequencer.class
   com/sun/media/sound/CircularBuffer.class
   com/sun/media/sound/DataPusher.class
   com/sun/media/sound/DirectAudioDevice$1.class
   com/sun/media/sound/DirectAudioDevice$DirectBAOS.class
   com/sun/media/sound/DirectAudioDevice$DirectClip.class
   com/sun/media/sound/DirectAudioDevice$DirectDL$Balance.class
   com/sun/media/sound/DirectAudioDevice$DirectDL$Gain.class
   com/sun/media/sound/DirectAudioDevice$DirectDL$Mute.class
   com/sun/media/sound/DirectAudioDevice$DirectDL$Pan.class
   com/sun/media/sound/DirectAudioDevice$DirectDL.class
   com/sun/media/sound/DirectAudioDevice$DirectDLI.class
   com/sun/media/sound/DirectAudioDevice$DirectSDL.class
   com/sun/media/sound/DirectAudioDevice$DirectTDL.class
   com/sun/media/sound/DirectAudioDevice.class
   com/sun/media/sound/DirectAudioDeviceProvider$DirectAudioDeviceInfo.class
   com/sun/media/sound/DirectAudioDeviceProvider.class
   com/sun/media/sound/EventDispatcher$ClipInfo.class
   com/sun/media/sound/EventDispatcher$EventInfo.class
   com/sun/media/sound/EventDispatcher$LineMonitor.class
   com/sun/media/sound/EventDispatcher.class
   com/sun/media/sound/FastShortMessage.class
   com/sun/media/sound/FastSysexMessage.class
   com/sun/media/sound/HeadspaceInstrument.class
   com/sun/media/sound/HeadspaceMixer$1.class
   com/sun/media/sound/HeadspaceMixer$MidiLine.class
   com/sun/media/sound/HeadspaceMixer$MidiLineInfo.class
   com/sun/media/sound/HeadspaceMixer$MixerInfo.class
   com/sun/media/sound/HeadspaceMixer$MixerReverbControl$MixerReverbType.class
   com/sun/media/sound/HeadspaceMixer$MixerReverbControl.class
   com/sun/media/sound/HeadspaceMixer.class
   com/sun/media/sound/HeadspaceMixerProvider.class
   com/sun/media/sound/HeadspaceSample.class
   com/sun/media/sound/HeadspaceSoundbank.class
   com/sun/media/sound/HsbParser.class
   com/sun/media/sound/JDK13Services$1.class
   com/sun/media/sound/JDK13Services$ProviderCache.class
   com/sun/media/sound/JDK13Services.class
   com/sun/media/sound/JSSecurityManager$1.class
   com/sun/media/sound/JSSecurityManager$2.class
   com/sun/media/sound/JSSecurityManager$3.class
   com/sun/media/sound/JSSecurityManager$4.class
   com/sun/media/sound/JSSecurityManager$5.class
   com/sun/media/sound/JSSecurityManager$6.class
   com/sun/media/sound/JSSecurityManager$7.class
   com/sun/media/sound/JSSecurityManager.class
   com/sun/media/sound/JavaSoundAudioClip$DirectBAOS.class
   com/sun/media/sound/JavaSoundAudioClip.class
   com/sun/media/sound/MidiInDevice$1.class
   com/sun/media/sound/MidiInDevice$MidiInTransmitter.class
   com/sun/media/sound/MidiInDevice.class
   com/sun/media/sound/MidiInDeviceProvider$1.class
   com/sun/media/sound/MidiInDeviceProvider$MidiInDeviceInfo.class
   com/sun/media/sound/MidiInDeviceProvider.class
   com/sun/media/sound/MidiOutDevice$MidiOutReceiver.class
   com/sun/media/sound/MidiOutDevice.class
   com/sun/media/sound/MidiOutDeviceProvider$1.class
   com/sun/media/sound/MidiOutDeviceProvider$MidiOutDeviceInfo.class
   com/sun/media/sound/MidiOutDeviceProvider.class
   com/sun/media/sound/MidiUtils$TempoCache.class
   com/sun/media/sound/MidiUtils.class
   com/sun/media/sound/MixerClip$1.class
   com/sun/media/sound/MixerClip$MixerClipApplyReverbControl.class
   com/sun/media/sound/MixerClip$MixerClipGainControl.class
   com/sun/media/sound/MixerClip$MixerClipMuteControl.class
   com/sun/media/sound/MixerClip$MixerClipPanControl.class
   com/sun/media/sound/MixerClip$MixerClipSampleRateControl.class
   com/sun/media/sound/MixerClip.class
   com/sun/media/sound/MixerMidiChannel.class
   com/sun/media/sound/MixerSequencer$1.class
   com/sun/media/sound/MixerSequencer$ControllerVectorElement.class
   com/sun/media/sound/MixerSequencer$MixerSequencerInfo.class
   com/sun/media/sound/MixerSequencer$RecordingTrack.class
   com/sun/media/sound/MixerSequencer.class
   com/sun/media/sound/MixerSequencerProvider.class
   com/sun/media/sound/MixerSourceLine$1.class
   com/sun/media/sound/MixerSourceLine$MixerSourceLineApplyReverbControl.class
   com/sun/media/sound/MixerSourceLine$MixerSourceLineGainControl.class
   com/sun/media/sound/MixerSourceLine$MixerSourceLineMuteControl.class
   com/sun/media/sound/MixerSourceLine$MixerSourceLinePanControl.class
   com/sun/media/sound/MixerSourceLine$MixerSourceLineSampleRateControl.class
   com/sun/media/sound/MixerSourceLine.class
   com/sun/media/sound/MixerSynth$1.class
   com/sun/media/sound/MixerSynth$MixerSynthInfo.class
   com/sun/media/sound/MixerSynth$SynthReceiver.class
   com/sun/media/sound/MixerSynth.class
   com/sun/media/sound/MixerSynthProvider.class
   com/sun/media/sound/MixerThread.class
   com/sun/media/sound/PCMtoPCMCodec$PCMtoPCMCodecStream.class
   com/sun/media/sound/PCMtoPCMCodec.class
   com/sun/media/sound/Platform.class
   com/sun/media/sound/PortMixer$1.class
   com/sun/media/sound/PortMixer$BoolCtrl$BCT.class
   com/sun/media/sound/PortMixer$BoolCtrl.class
   com/sun/media/sound/PortMixer$CompCtrl$CCT.class
   com/sun/media/sound/PortMixer$CompCtrl.class
   com/sun/media/sound/PortMixer$FloatCtrl$FCT.class
   com/sun/media/sound/PortMixer$FloatCtrl.class
   com/sun/media/sound/PortMixer$PortInfo.class
   com/sun/media/sound/PortMixer$PortMixerPort.class
   com/sun/media/sound/PortMixer.class
   com/sun/media/sound/PortMixerProvider$PortMixerInfo.class
   com/sun/media/sound/PortMixerProvider.class
   com/sun/media/sound/Printer.class
   com/sun/media/sound/RealTimeSequencer$1.class
   com/sun/media/sound/RealTimeSequencer$ControllerListElement.class
   com/sun/media/sound/RealTimeSequencer$DataPump.class
   com/sun/media/sound/RealTimeSequencer$PlayThread.class
   com/sun/media/sound/RealTimeSequencer$RealTimeSequencerInfo.class
   com/sun/media/sound/RealTimeSequencer$RecordingTrack.class
   com/sun/media/sound/RealTimeSequencer$SequencerReceiver.class
   com/sun/media/sound/RealTimeSequencer$SequencerTransmitter.class
   com/sun/media/sound/RealTimeSequencer.class
   com/sun/media/sound/RealTimeSequencerProvider.class
   com/sun/media/sound/ReferenceCountingDevice.class
   com/sun/media/sound/RmfFileReader.class
   com/sun/media/sound/SMFParser.class
   com/sun/media/sound/SimpleInputDevice$1.class
   com/sun/media/sound/SimpleInputDevice$InputDeviceDataLine.class
   com/sun/media/sound/SimpleInputDevice$InputDevicePort.class
   com/sun/media/sound/SimpleInputDevice$InputDevicePortInfo.class
   com/sun/media/sound/SimpleInputDevice.class
   com/sun/media/sound/SimpleInputDeviceProvider$1.class
   com/sun/media/sound/SimpleInputDeviceProvider$InputDeviceInfo.class
   com/sun/media/sound/SimpleInputDeviceProvider.class
   com/sun/media/sound/StandardMidiFileReader.class
   com/sun/media/sound/StandardMidiFileWriter.class
   com/sun/media/sound/SunCodec.class
   com/sun/media/sound/SunFileReader.class
   com/sun/media/sound/SunFileWriter.class
   com/sun/media/sound/Toolkit.class
   com/sun/media/sound/UlawCodec$UlawCodecStream.class
   com/sun/media/sound/UlawCodec.class
   com/sun/media/sound/WaveFileFormat.class
   com/sun/media/sound/WaveFileReader.class
   com/sun/media/sound/WaveFileWriter.class
   java/awt/color/CMMException.class
   java/awt/color/ColorSpace.class
   java/awt/color/ICC_ColorSpace.class
   java/awt/color/ICC_Profile$1.class
   java/awt/color/ICC_Profile$2.class
   java/awt/color/ICC_Profile$3.class
   java/awt/color/ICC_Profile.class
   java/awt/color/ICC_ProfileGray.class
   java/awt/color/ICC_ProfileRGB.class
   java/awt/image/BandedSampleModel.class
   java/awt/image/ColorConvertOp.class
   java/awt/image/ComponentSampleModel.class
   java/awt/image/DataBuffer$1.class
   java/awt/image/DataBuffer.class
   java/awt/image/DataBufferByte.class
   java/awt/image/DataBufferInt.class
   java/awt/image/DataBufferShort.class
   java/awt/image/DataBufferUShort.class
   java/awt/image/MultiPixelPackedSampleModel.class
   java/awt/image/Raster.class
   java/awt/image/RenderedImage.class
   java/awt/image/SampleModel.class
   java/awt/image/SinglePixelPackedSampleModel.class
   java/awt/image/WritableRaster.class
   java/awt/image/WritableRenderedImage.class
   java/awt/image/renderable/ContextualRenderedImageFactory.class
   java/awt/image/renderable/ParameterBlock.class
   java/awt/image/renderable/RenderContext.class
   java/awt/image/renderable/RenderableImage.class
   java/awt/image/renderable/RenderableImageOp.class
   java/awt/image/renderable/RenderableImageProducer.class
   java/awt/image/renderable/RenderedImageFactory.class
   sun/dc/path/FastPathProducer.class
   sun/dc/path/PathConsumer.class
   sun/dc/path/PathError.class
   sun/dc/path/PathException.class
   sun/dc/pr/PRError.class
   sun/dc/pr/PRException.class
   sun/dc/pr/PathDasher.class
   sun/dc/pr/PathFiller.class
   sun/dc/pr/PathStroker.class
   sun/dc/pr/Rasterizer$ConsumerDisposer.class
   sun/dc/pr/Rasterizer.class

-The End-

-kto


Bernhard Rosenkraenzer wrote:
> I've just had a look at the "full" openjdk release -- and noticed the binary 
> blob is just about the size of the full jdk. I'm assuming it contains some 
> unnecessary bits (e.g. bits that will be replaced with components that are 
> built during the openjdk build process, such as the "java" and "javac" 
> executables).
> 
> What parts of the blob actually make it to the final build? (And has anyone 
> checked if they can be replaced with components from any of the free JDK 
> reimplementations?)
> 
> Regards,
> bero



More information about the build-dev mailing list