Ok, So I feel a little silly now ;). That worked. I now have all the 
dependencies for the binary compiled (libSerializeClass, libDCECommon, and 
libPlutoUtils), and all are showing ARM. The Orbiter binary makefile is a bit 
different though. It requires that you build it with the command "make bin". 
How do you do that with OE? Also, I am not sure what all the "WX" stuff is? 
Should I remove it?

Thanks for all the help! I think we are pretty close!

Rob

For reference here is the bb file:
LICENSE = "GPL"
DESCRIPTION = "Orbiter try1"
SECTION = "console/util"
MAINTAINER = "me"
SRC_URI = 
"svn://svn.plutohome.com/pluto/trunk/src;module=DCE;proto=http;rev=1110
3 \
           
svn://svn.plutohome.com/pluto/trunk/src;module=PlutoUtils;proto=http;r
ev=11103 \
           
svn://svn.plutohome.com/pluto/trunk/src;module=SerializeClass;proto=ht
tp;rev=11103 \
           
svn://svn.plutohome.com/pluto/trunk/src;module=pluto_main;proto=http;r
ev=11103 \
           
svn://svn.plutohome.com/pluto/trunk/src;module=RA;proto=http;rev=11103
 \
           
svn://svn.plutohome.com/pluto/trunk/src;module=Orbiter;proto=http;rev=
11103 \
           file://orbiter_make.patch;patch=1"

S = "${WORKDIR}/Orbiter"

CXXFLAGS_append = "-Wall -ggdb3"
CPPFLAGS_append = "-I./ -I../ -I../DCE/ -I../VIPShared/ 
-I${STAGING_INCDIR}/mysql
 -I${STAGING_INCDIR}/X11 -I${STAGING_INCDIR}/SDL -I${STAGING_INCDIR}/glib-2.0 
-I$
{STAGING_INCDIR}/glib-2.0/glib -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
-D_DEVE
L_DEFINES -DUSE_LZO_DATAGRID -D_GNU_SOURCE"

DEPENDS = "mysql serializeclass dce plutoutils"
RDEPENDS = "mysql serializeclass dce plutoutils"

inherit autotools

do_stage() {
        oe_libinstall -so Orbiter ${STAGING_LIBDIR}
        oe_libinstall -so Orbiter ${STAGING_BINDIR}
}


do_install() {
        install -d ${D}${libdir}
        install -d ${D}${bindir}
        install -m 644 ${WORKDIR}/Orbiter/Orbiter.so ${D}${libdir}
        install -m 644 ${WORKDIR}/Orbiter/Orbiter ${D}${bindir}
}

And Here is the Makefile:
# if ( USE_WX_LIB > 0 )
#   compile & link with wx
# else
#   not using wx at all

# deactivating wx:
# export USE_WX_LIB=0 ; make
# or USE_WX_LIB=0 in Makefile
USE_WX_LIB = 0

USE_WX_LIB ?= 1
ifneq ($(USE_WX_LIB), 0)
USE_WX_LIB := 1
endif

ifneq ($(USE_WX_LIB), 0)
# using wx

# wx-config script name or full path
# WX_CONFIG     := wx-config
WX_CONFIG     := /usr/lib/wx/config/gtk2-ansi-release-2.6
# WX_CONFIG     := /usr/lib/wx/config/gtk2-ansi-debug-2.6
#
WX_VERSION    := $(shell echo `$(WX_CONFIG) --version`)
WX_CFLAGS     := $(shell $(WX_CONFIG) --cflags) -DUSE_WX_LIB=1
WX_CXXFLAGS   := $(shell $(WX_CONFIG) --cxxflags) -DUSE_WX_LIB=1
WX_CPPFLAGS   := $(shell $(WX_CONFIG) --cppflags) -DUSE_WX_LIB=1
WX_LIBS       := $(shell $(WX_CONFIG) --libs)
WX_GL_LIBS    := $(shell $(WX_CONFIG) --gl-libs)
WX_LDFLAGS    := $(shell $(WX_CONFIG) --ldflags 2>/dev/null)
WX_LD         := $(shell $(WX_CONFIG) --ld)
WX_PARSE_LD   := $(shell $(WX_CONFIG) --ld 2>/dev/null | sed -e 's|^[^-][^ 
]*||;s| -shared | |g;s| -o *$$| |;')
WX_SOURCES    := $(shell ls wxAppMain/*.cpp)

else
# not using wx

WX_CONFIG     :=
WX_VERSION    :=
WX_CFLAGS     := -DUSE_WX_LIB=0
WX_CXXFLAGS   := -DUSE_WX_LIB=0
WX_CPPFLAGS   := -DUSE_WX_LIB=0
WX_LIBS       :=
WX_GL_LIBS    :=
WX_LDFLAGS    :=
WX_PARSE_LD   :=
WX_SOURCES    :=

endif
# use or not wx


#<-dceag-mh-b->
GENDEV=../Gen_Devices

ROOT = ..
BASELDLIBS = -lSerializeClass -lDCECommon -lPlutoUtils -lmysqlclient -lpthread

MYNAME = Orbiter
VERSION = 2.0.0
MYDEVTEMPLATEID = 8mplateID

Gen_Dev_Files = $(GENDEV)/OrbiterBase.cpp
sources = Main.cpp Orbiter.cpp $(Gen_Dev_Files)
#<-dceag-mh-e->

XTRALDLIBS += -lDCECommon -lSDL -lSDL_ttf -lSDL_image -lSGE -lSDL_gfx -lXtst 
-lXext -lGL -lXrender -lGLU

# wmctrl wrapper
XTRALDLIBS += -lX11 -lXmu -lglib-2.0


Gen_Dev_Files +=
sources += \
        $(WX_SOURCES) \
        Task.cpp \
        TaskManager.cpp \
        ../utilities/linux/window_manager/WMController/WMController.cpp \
        ../utilities/linux/window_manager/wmctrl/wmctrl.cpp \
        ../utilities/linux/wrapper/wrapper_x11.cpp \
        Linux/win_list_manager.cpp \
        Linux/OSDCompass.cpp \
        Linux/OrbiterRenderer_Linux.cpp \
        DesignObj_Data.cpp \
        DesignObj_Orbiter.cpp \
        DesignObj_DataGrid.cpp \
        Simulator.cpp \
        OrbiterFileBrowser.cpp \
        Linux/OrbiterLinux.cpp \
        Linux/XRecordExtensionHandler.cpp \
        RendererMNG.cpp \
        GraphicBuilder.cpp \
        TextStyle.cpp \
        CacheImageManager.cpp \
        RendererOCG.cpp \
        ScreenHandler.cpp \
        CallBackData.cpp \
        ScreenHistory.cpp \
        MouseBehavior.cpp \
        LightMouseHandler.cpp \
        SpeedMouseHandler.cpp \
        VolumeMouseHandler.cpp \
        MediaMouseHandler.cpp \
        LockedMouseHandler.cpp \
        KeyboardMouseHandler.cpp \
        HorizMenuMouseHandler.cpp \
        MediaBrowserMouseHandler.cpp \
        DatagridMouseHandlerHelper.cpp \
        MouseGovernor.cpp \
        MouseIterator.cpp \
        PlutoGraphic.cpp \
        OrbiterRenderer.cpp \
        OrbiterRendererFactory.cpp \
        DataGridRenderer.cpp \
        ObjectRenderer.cpp \
        ObjectRendererFactory.cpp \
        SDL/OrbiterRenderer_SDL.cpp \
        SDL/SDLRendererOCGHelper.cpp \
        SDL/SDLGraphic.cpp \
        SDL/StartOrbiterSDL.cpp \
        Linux/OSDScreenHandler.cpp \
        Linux/MouseBehavior_Linux.cpp \
        WizardLogic.cpp \
        ../CreateDevice/UserUtils.cpp \
        $(ROOT)/Splitter/TextSplitter.cpp \
        $(ROOT)/Splitter/TextWrapper.cpp \
        $(ROOT)/OrbiterGen/Renderer.cpp \
        Linux/X3DButton.cpp Linux/X3DWindow.cpp Linux/XProgressWnd.cpp 
Linux/XPromptUser.cpp\
        $(ROOT)/utilities/linux/transparency/transparency.cpp \

#<-dceag-mf-b->
LDLIBS = $(XTRALDLIBS) $(BASELDLIBS)

whattodo:
        @echo "type 'make bin', 'make so' or 'make all'"
all: bin so

bin: Orbiter

so: Orbiter.so

Orbiter.so: $(sources:.cpp=.o)
        $(CXX) -shared -o $(MYNAME).so $(call cpath,$+) $(LDFLAGS) $(LDLIBS)
        cp $@ ../bin
        chmod +x post_make.sh
        ./post_make.sh $@

Orbiter: $(sources:.cpp=.o)
        $(CXX) -o $(MYNAME) $(call cpath,$+) $(LDFLAGS) $(LDLIBS)
        cp $@ ../bin
        ./post_make.sh $@

clean: clean-recursive
        rm -f $(call cpath,$(sources:.cpp=.o) $(sources:.cpp=.d)) Orbiter.bin 
Orbiter.so >/dev/null
package:
        chmod +x make_package.sh
        ./make_package.sh $(MYNAME) $(VERSION) $(MYDEVTEMPLATEID)

include $(ROOT)/PlutoUtils/make.rules
ifeq (,$(findstring clean, $(MAKECMDGOALS)))
-include $(sources:.cpp=.d)
endif
#<-dceag-mf-e->

info:
        : WX_VERSION=$(WX_VERSION)
        : ""
        : WX_CFLAGS=$(WX_CFLAGS)
        : WX_CXXFLAGS=$(WX_CXXFLAGS)
        : WX_CPPFLAGS=$(WX_CPPFLAGS)
        : ""
        : WX_LIBS=$(WX_LIBS)
        : WX_GL_LIBS=$(WX_GL_LIBS)
        : ""
        : WX_LDFLAGS=$(WX_LDFLAGS)
        : WX_LD=$(WX_LD)
        : WX_PARSE_LD=$(WX_PARSE_LD)
        : ""
        : WX_SOURCES=$(WX_SOURCES)
        : ""
        : new CFLAGS=$(CFLAGS)
        : new CXXFLAGS=$(CXXFLAGS)
        : new CPPFLAGS=$(CPPFLAGS)
        : new XTRALDLIBS=$(XTRALDLIBS)
        : ""
        : old BASELDLIBS=$(BASELDLIBS)
        : gen LDFLAGS=$(LDFLAGS)
        : gen LDLIBS=$(LDLIBS)

And finally here is the patch file:
Index: Orbiter/Makefile
===================================================================
--- Orbiter.orig/Makefile
+++ Orbiter/Makefile
@@ -55,11 +55,7 @@ endif
 GENDEV=../Gen_Devices

 ROOT = ..
-CXX = g++
-CXXFLAGS = -Wall -fPIC -ggdb3
-CPPFLAGS = -I$(ROOT) -I$(ROOT)/DCE -I/usr/include/mysql -D_DEVEL_DEFINES
-LDFLAGS = -L$(ROOT)/lib
-BASELDLIBS = -lSerializeClass -lDCECommon -lPlutoUtils -lmysqlclient_r 
-lpthread
+BASELDLIBS = -lSerializeClass -lDCECommon -lPlutoUtils -lmysqlclient -lpthread

 MYNAME = Orbiter
 VERSION = 2.0.0
@@ -69,19 +65,11 @@ Gen_Dev_Files = $(GENDEV)/OrbiterBase.cp
 sources = Main.cpp Orbiter.cpp $(Gen_Dev_Files)
 #<-dceag-mh-e->

-CXXFLAGS += -g -O0
-CPPFLAGS += -I/usr/include/SDL -DORBITER -DCACHE_IMAGES 
-DENABLE_MOUSE_BEHAVIOR -I$(ROOT)/Splitter -I$(ROOT)/OrbiterGen
-LDFLAGS += -L/usr/X11R6/lib
 XTRALDLIBS += -lDCECommon -lSDL -lSDL_ttf -lSDL_image -lSGE -lSDL_gfx -lXtst 
-lXext -lGL -lXrender -lGLU

 # wmctrl wrapper
-CPPFLAGS += -I/usr/X11R6/include -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include
 XTRALDLIBS += -lX11 -lXmu -lglib-2.0

-CFLAGS += $(WX_CFLAGS)
-CXXFLAGS += $(WX_CXXFLAGS)
-CPPFLAGS += $(WX_CPPFLAGS)
-XTRALDLIBS += $(WX_LIBS)

 Gen_Dev_Files +=
 sources += \

 -------------- Original message ----------------------
From: Dirk Opfer <[EMAIL PROTECTED]>
> [EMAIL PROTECTED] schrieb:
> > Dirk,
> > Thanks for all of your help! I'm starting to figure this out little by 
> > little.
> >
> > Ok, I have gone back to SerializeClass because it is the easiest (fewest 
> dependencies). I used quilt to create the patch file as you instructed and it 
> compiles and creates a libSerializeClass.so in the staging dir however, file 
> libSerializeClass.so still gives me:
> >
> > libSerializeClass.so: ELF 32-bit LSB shared object, Intel 80386, version 1 
> (SYSV), not stripped
> >
> > So I am clearly not doing something correctly :-(
> >
> > Here is the patch (serializeclass_make.patch):
> >
> > And here is the updated serializeclass_1.1.1.bb file:
> >
> > LICENSE = "GPL"
> > DESCRIPTION = "SerializeClass try 2"
> > SECTION = "console/util"
> > MAINTAINER = "me"
> > SRC_URI = 
> "svn://svn.plutohome.com/pluto/trunk/src;module=SerializeClass;proto=http;rev=11
> 103 \
> >            
> svn://svn.plutohome.com/pluto/trunk/src;module=PlutoUtils;proto=http;rev=11103
>  \
> >            file://serializeclass_make.patch"
> >
> >
> >   
> you need to teach bitbake to apply the patch:
> 
>            file://serializeclass_make.patch" -> 
> file://serializeclass_make.patch;patch=1"
> 
> 
> > One thing I did notice but am not sure it is significant is that the patch 
> file gets copied to:
> > ~/oe/build/tmp/work/serializeclass-1.1.1-r0/
> >
> > and the Makefile is in 
> > ~/oe/build/tmp/work/serializeclass-1.1.1-r0/SerializeClass/
> >
> > Also, if I look at the Makefile in 
> ~/oe/build/tmp/work/serializeclass-1.1.1-r0/SerializeClass/, it doesn't 
> appear 
> to be changed.
> >
> > Again, thank you for all of your help on this! 
> >
> >
> >   
> 
> Dirk
> 


_______________________________________________
Oe mailing list
[email protected]
https://www.handhelds.org/mailman/listinfo/oe

Reply via email to