# Build script based on the build options of codeblocks projects files of FortranProject plugin: # "FortranProject_cbsvn-unix.cbp" (except of it's "-DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP" define options) # and "FortranProject_cbsvn_wx30-unix.cbp" and on the base of their "Build log". --- /dev/null 2018-01-23 20:11:07.299999996 +0300 +++ /src/plugins/contrib/FortranProject/FortranProject_build.sh 2018-01-23 20:50:53.000000000 +0300 @@ -0,0 +1,39 @@ +WXGTK_VER=IS_NOT_SET + +WXGTK_CFLAGS=$(wx-config --version=$WXGTK_VER --cflags) +if [ $WXGTK_VER = 2.8 ]; then + WXGTK_LIBS=$(wx-config --version=$WXGTK_VER --libs) +elif [ $WXGTK_VER = 3.0 ] || [ $WXGTK_VER = 3.0-gtk3 ]; then + WXGTK_LIBS=$(wx-config --version=$WXGTK_VER --libs std,aui,propgrid,richtext) +fi + +WXGTK_ENV="$WXGTK_CFLAGS $WXGTK_LIBS" + +INCLUDES="-I../../../include -I../../../include/tinyxml -I../../../sdk/wxscintilla/include -I../FortranProject" + +FILE_LIST="autoinsert bindto bindtonewtype bufferparserthread calledbydict calltree calltreeview +ccsmartfilter changecase constrhighlighter docblock farrays fconstruct finfowindow formatindent +formatindentdlg fortranfileext fortranproject fpimagelist fpoptionsdlg includedb indentestimator +jumptracker keywordsparserf lineaddress makefiledlg makefilegen moduletokenf nativeparserf parserf +parserthreadf projectdependencies tab2space textcutter tokenf tokenizerf usetokenf workspacebrowserbuilder +workspacebrowserf workspaceparserthread" + +mkdir ./.objs +for file in $FILE_LIST; do + g++ -Wshadow -Wall -std=c++11 -fPIC -fexceptions -Winvalid-pch $WXGTK_ENV $INCLUDES -c ./$file.cpp -o ./.objs/$file.o +done + +mkdir ./.libs +OBJ_LST="" +for file in $FILE_LIST; do + OBJ_LST="$OBJ_LST ./.objs/$file.o" +done + +if [ $WXGTK_VER = 2.8 ]; then + g++ -shared -L../../../sdk/.libs $OBJ_LST -o ./.libs/FortranProject.so $WXGTK_LIBS -lcodeblocks +elif [ $WXGTK_VER = 3.0 ] || [ $WXGTK_VER = 3.0-gtk3 ]; then + g++ -shared -L../../../sdk/.libs $OBJ_LST -o ./.libs/FortranProject.so $WXGTK_LIBS -lcodeblocks +fi + +zip -j9 ./FortranProject.zip manifest.xml resources/workspacebrowserf.xrc resources/settings.xrc resources/fortranprojecttoolbar.xrc resources/changecase.xrc resources/tab2space.xrc +zip -r9 ./FortranProject.zip images