[DONE] [1.879] Build Batch - Is this correct?

TailBite specific forum

Moderators: gnozal, ABBKlaus, lexvictory

lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

[DONE] [1.879] Build Batch - Is this correct?

Post by lexvictory »

I've never used this option before, but is this line correct? (because it seems very odd)

Code: Select all

"" /MACHINE:X64 /out:"taglib.lib" @"taglibObjFiles.txt"
I'm presuming I need to make it point to polib?



full batch:

Code: Select all

@echo OFF

"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\TaglibGetTags.asm" "Functions\TaglibGetTags.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\taglib_Init.asm" "Functions\taglib_Init.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\taglibShared.asm" "Functions\taglibShared.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\Shared\taglib_End.asm" "Functions\Shared\taglib_End.obj"

"" /MACHINE:X64 /out:"taglib.lib" @"taglibObjFiles.txt"
Del "Functions\*.obj"
Del "Functions\Shared\*.obj"
"C:\Program Files\PureBasic4.30\SDK\LibraryMaker.exe" "taglib.Desc" /TO "C:\Program Files\PureBasic4.30\PureLibraries\UserLibraries\" /NOUNICODEWARNING
REM Del "taglib.lib"
ECHO Done
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Post by ABBKlaus »

yes polib.exe is missing. Do you have a complete logfile ?
(Must be somewhere in the temp dir)
lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

Post by lexvictory »

I believe you mean this?
Parameter() :C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb
Parameter() :/DONTMAKELIB
Parameter() :/KEEPSRCFILES
Parameter() :/WRITEBATCH
Parameter() :/THRD
Parameter() :/SUBS:SubSystems\UserLibThreadSafe\PureLibraries\UserLibraries\
Parameter() :/HWND:3737236
GetPBFolder()
Detected OS : Windows XP/Server 2003
HKCU\Software\Classes\PureBasic.exe\shell\open\command="C:\Program Files\PureBasic4.30\PureBasic.exe" "%1" /P "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\PureBasic.prefs" /T "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\Templates.prefs" /A "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\Tools.prefs"
OSVersion()=65
C:\Program Files\PureBasic4.30\TailBite\TailBite.exe
PureBasic Version found : 4.30 C 2008 FANTAISIE SOFTWARE / 430 /X64
Mode=0
GetPBFolder()=C:\Program Files\PureBasic4.30\
TBPreferencesPath$=C:\Documents and Settings\lex.XANDER\Application Data\TailBite\
TBPrefsFile$=C:\Documents and Settings\lex.XANDER\Application Data\TailBite\TailBite_430X64.prefs
PBCompilerFolder$=C:\Program Files\PureBasic4.30\Compilers\
PrefsFound=1
PBFolder$=C:\Program Files\PureBasic4.30\
TBFolder$=C:\Program Files\PureBasic4.30\TailBite\
LibSourceFolder$=C:\Documents and Settings\lex.XANDER\My Documents\TailBite Library Sources\
LastFile$=H:\Documents\droopy svn\working copy\Droopy.pb
ManagerOnTop=0
PBSubsystem$=PureLibraries\UserLibraries\
Language$=English
PBPreferencesPath$=C:\Documents and Settings\lex.XANDER\Application Data\Purebasic\
TBTempPath$=C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\
pb_align$=pb_align
pb_bssalign$=pb_bssalign
LibraryMakerOptions$= /NOUNICODEWARNING
IsPB410=1
LibraryMaker$=C:\Program Files\PureBasic4.30\SDK\LibraryMaker.exe
TailBite Version found : 1.3 PR 1.879
Inc_Taibite > MainProc()
LibName$=taglib
recover=0
Opening PB 4.30 C 2008 FANTAISIE SOFTWARE asm source...
PBCompile(C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb,, /COMMENTED /DEBUGGER)
ExecuteProgram("C:\Program Files\PureBasic4.30\Compilers\PBCompiler.exe","C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb" /COMMENTED /DEBUGGER /THREAD /SUBSYSTEM "UserLibThreadSafe",)
RunProgram("C:\Program Files\PureBasic4.30\Compilers\PBCompiler.exe","C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb" /COMMENTED /DEBUGGER /THREAD /SUBSYSTEM "UserLibThreadSafe",)
Creating function list...
Inc_Taibite > CreateFunctionList()
- Function index 0
function()\ID=0
function()\RetValue$=None
function()\Name$=TaglibGetTags
function()\PlainName$=TaglibGetTags
function()\Args$=, Long
function()\nArgs=1
function()\Main=1
function()\maxArgs=1
function()\HelpLine$=(*entry.TagV2)
function()\DLLFunction=1
function()\FIndex=22
function()\Modifiers$=
function()\DebugFunction=0
function()\nModifiers=0
function()\VarArgs$=
function()\VarArgStr$=
function()\VarHelpStr$=
- Function index 1
function()\ID=1
function()\RetValue$=InitFunction
function()\Name$=taglib_Init
function()\PlainName$=taglib_Init
function()\Args$=
function()\nArgs=0
function()\Main=1
function()\maxArgs=0
function()\HelpLine$=
function()\DLLFunction=1
function()\FIndex=-1
function()\Modifiers$=
function()\DebugFunction=0
function()\nModifiers=0
function()\VarArgs$=
function()\VarArgStr$=
function()\VarHelpStr$=
HelpName$(Choosehelp)=taglib.chm
HelpName$=taglib.chm
Splitting functions...
Inc_Taibite > SplitFunctions()
System function found : KERNEL32
Import function found (will be ignored) : C:\Documents and Settings\lex.XANDER\My Documents\downloads\taglib-1.5-win32-src\taglibx64.lib
WriteBatch
CreateFile "C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\taglibBuild.bat" successfull
===============C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\taglib.Desc===============
ASM
;
1
KERNEL32
;
LIB
;
6
String
Memory
FileSystem
Date
Object
SimpleList
;
taglib.chm
;
TaglibGetTags, Long (*entry.TagV2)
None | StdCall
;
taglib_Init
InitFunction | StdCall
;
==================================================================================================================
KeepSrcFiles
CopyDirectory "C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\" "C:\Documents and Settings\lex.XANDER\My Documents\TailBite Library Sources\taglib\" successfull
I should probably have mentioned this is on XP x64 (yet again)
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Post by ABBKlaus »

its a bug. And its related to this :
Parameter() :/DONTMAKELIB

Code: Select all

  If DontMakeLib=0
    If FileSize(PBCompilerFolder$+"polib.exe")=-1
      TBError(Language("TailBite","SorryNeedPolib"),0,"",#False)
      End
    Else
      Libexe$ = PBCompilerFolder$+"polib.exe"
      LibexeBaseName$ = "polib"
      WriteLog("Libexe$="+Libexe$)
      WriteLog("LibexeBaseName$="+LibexeBaseName$)
    EndIf
  EndIf
lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

Post by lexvictory »

ok.

Btw, with regards to:
Import function found (will be ignored) :
Is there some way to make PB link it into a program that uses the userlib commands without doing an empty ImportC?
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

Post by lexvictory »

lexvictory wrote:Is there some way to make PB link it into a program that uses the userlib commands without doing an empty ImportC?
Never mind, I figured it out; add it to <libname>ObjFiles.txt :wink:

Does Tailbite do this automatically when called without the flag that makes it not build the lib?
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Post by ABBKlaus »

lexvictory wrote:Does Tailbite do this automatically when called without the flag that makes it not build the lib?
It should, if not its a bug.
But to test this i need some sources (including the taglib).
lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

Post by lexvictory »

Good, I did do some exploring of the sources after posing that question and thought I discovered that.

But it doesn't do it if I use the /DONT flag. (Gee, I wonder why with a flag like that :lol:)
I had to add it to the taglibObjFiles.txt in this particular case.

I'm playing with making a userlib with Ascii/Unicode/UnicodeThreadsafe/ThreadSafe modes all in one - I succeeded with doing it manually with only one exported function - so now comes the fun :twisted:
I just chose to use Taglib as my test :lol:


Though I feel like kicking my computer since the wireless card's driver likes to freeze EVERYTHING networking based in this hot weather :x
Though I don't even know for sure if the wireless is at fault :(
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Post by ABBKlaus »

i found the bug, it was inside If DontMakeLib=0 ... EndIf block.

Uploaded a new build to test : http://www.tailbite.com/downloads/TailB ... R1.880.zip
[42] JAN 27th 2009 TailBite V1.3 PR 1.880
- fixed polib.exe not found if 'Don´t build library. only source files' was checked (found by lexvictory)
- fixed import libs where not written to objfiles.txt if 'Don´t build library. only source files' was checked (found by lexvictory)
lexvictory
Addict
Addict
Posts: 1027
Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:

Post by lexvictory »

Confirmed fixed.

A request: in Inc_Tailbite.pb, after

Code: Select all

    WriteLog(ReplaceString(Language("TailBite","OpeningPB"),"%version%",PBVersion$))
    FileOps$ = " /COMMENTED"
    FileOps$ + " /DEBUGGER"
(Line 2015 in my 1.879 source - not sure if I've edited anything above this line)
Can the following be added to stop pbcompiler running the exe after commented asm output?

Code: Select all

FileOps$ + " /EXE "+#DQUOTE$+TBTempPath$+"PureBasic.exe"+#DQUOTE$
It not only stops it from running (annoying me in this project with a 'windows cannot find blah.dll') but it also makes the PureBasic.exe that is created get deleted by the DeleteFile at ~2050 (With keep source files purebasic.exe remains in Tailbite Library Sources\<libname>)
Demonio Ardente

Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Addict
Posts: 1143
Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany

Post by ABBKlaus »

Thanks, the change is added.
Post Reply