[fpc-pascal] No Hello World after updating Xcode to 2.1

2005-09-16 Thread Lance Boyle
I've just installed Xcode 2.1 and can no longer compile FPC using  
2.0.0. For good measure, I re-installed FPC 2.0.0 and the Xcode  
Integration Kit, including the Universal Interfaces. The latter acted  
oddly with a crashing program which tried to open up a dialog box,  
until I mounted the Universal Interfaces disk image first. (This  
sounds familiar to me from an earlier upgrade but I can't remember  
what to do to fix it, and the lists archives don't seem to want me to  
see them.)


In any event, I can't even compile a tool. Here's the result of  
trying. What's up?


Lance



Native Build of Target "pascaltooldumpmeUnits" using Build  
Configuration "Development"


PhaseScriptExecution /Users/jerrybauck/pascaltooldumpme/build/ 
pascaltooldumpme.build/Development/pascaltooldumpmeUnits.build/Script- 
b8bd1d4d.sh

mkdir build
cd /Users/jerrybauck/pascaltooldumpme
setenv ACTION build
setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer
setenv APPLE_INTERNAL_DIR /AppleInternal
setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/ 
Documentation

setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library
setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools
setenv ARCHS ppc
setenv BUILD_COMPONENTS "headers build"
setenv BUILD_DIR /Users/jerrybauck/pascaltooldumpme/build
setenv BUILD_ROOT /Users/jerrybauck/pascaltooldumpme/build
setenv BUILD_STYLE Development
setenv BUILD_VARIANTS normal
setenv BUILT_PRODUCTS_DIR /Users/jerrybauck/pascaltooldumpme/ 
build/Development

setenv CACHE_ROOT /Library/Caches/com.apple.Xcode.501
setenv CCHROOT /Library/Caches/com.apple.Xcode.501
setenv CHMOD /bin/chmod
setenv CHOWN /usr/sbin/chown
setenv CLASS_FILE_DIR /Users/jerrybauck/pascaltooldumpme/build/ 
pascaltooldumpme.build/Development/pascaltooldumpmeUnits.build/ 
JavaClasses

setenv CLEAN_PRECOMPS YES
setenv CLONE_HEADERS NO
setenv CONFIGURATION Development
setenv CONFIGURATION_BUILD_DIR /Users/jerrybauck/ 
pascaltooldumpme/build/Development
setenv CONFIGURATION_TEMP_DIR /Users/jerrybauck/pascaltooldumpme/ 
build/pascaltooldumpme.build/Development

setenv CONTENTS_FOLDER_PATH
setenv COPY_PHASE_STRIP NO
setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES
setenv CP /bin/cp
setenv CURRENT_PROJECT_VERSION
setenv CodeWarrior "/Applications/Metrowerks CodeWarrior 8.0/ 
Metrowerks CodeWarrior"

setenv DEBUGGING_SYMBOLS YES
setenv DEPLOYMENT_LOCATION NO
setenv DERIVED_FILES_DIR /Users/jerrybauck/pascaltooldumpme/ 
build/pascaltooldumpme.build/Development/pascaltooldumpmeUnits.build/ 
DerivedSources
setenv DERIVED_FILE_DIR /Users/jerrybauck/pascaltooldumpme/build/ 
pascaltooldumpme.build/Development/pascaltooldumpmeUnits.build/ 
DerivedSources

setenv DERIVED_PATHS
setenv DERIVED_SOURCES_DIR /Users/jerrybauck/pascaltooldumpme/ 
build/pascaltooldumpme.build/Development/pascaltooldumpmeUnits.build/ 
DerivedSources

setenv DEVELOPMENT_LANGUAGE English
setenv DOCUMENTATION_FOLDER_PATH
setenv DSTROOT /tmp/pascaltooldumpme.dst
setenv DYLIB_COMPATIBILITY_VERSION
setenv DYLIB_CURRENT_VERSION
setenv DYLIB_INSTALL_NAME_BASE
setenv ENABLE_HEADER_DEPENDENCIES YES
setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib  
*.lproj *.framework *.gch *.xcode (*) CVS .svn"

setenv EXECUTABLES_FOLDER_PATH
setenv EXECUTABLE_EXTENSION
setenv EXECUTABLE_NAME pascaltooldumpme
setenv EXECUTABLE_PATH pascaltooldumpme
setenv EXECUTABLE_PREFIX
setenv EXECUTABLE_SUFFIX
setenv EXECUTABLE_VARIANT_SUFFIX
setenv FRAMEWORKS_FOLDER_PATH
setenv FRAMEWORK_FLAG_PREFIX -framework
setenv FRAMEWORK_SEARCH_PATHS /Users/jerrybauck/pascaltooldumpme/ 
build/Development

setenv FRAMEWORK_VERSION A
setenv FULL_PRODUCT_NAME pascaltooldumpme
setenv GCC_AUTO_PCH_HEADER_c
setenv GCC_AUTO_PCH_HEADER_c++
setenv GCC_AUTO_PCH_HEADER_objective-c
setenv GCC_AUTO_PCH_HEADER_objective-c++
setenv GCC_DYNAMIC_NO_PIC NO
setenv GCC_ENABLE_AUTO_PCH NO
setenv GCC_ENABLE_FIX_AND_CONTINUE YES
setenv GCC_GENERATE_DEBUGGING_SYMBOLS YES
setenv GCC_OPTIMIZATION_LEVEL 0
setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++"
setenv GCC_PRECOMPILE_PREFIX_HEADER
setenv GCC_PREFIX_HEADER
setenv GCC_SYMBOLS_PRIVATE_EXTERN YES
setenv GCC_TREAT_WARNINGS_AS_ERRORS NO
setenv GCC_USE_GCC3_PFE_SUPPORT
setenv GCC_VERSION
setenv GENERATE_PKGINFO_FILE NO
setenv GENERATE_PROFILING_CODE NO
setenv GLOBAL_CFLAGS
setenv GROUP staff
setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES
setenv HEADER_SEARCH_PATHS /Users/jerrybauck/pascaltooldumpme/ 
build/Development/include

setenv INCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES
setenv INFOPLIST_FILE
setenv INFOPLIST_PATH
setenv INFOSTRINGS_PATH
setenv INIT_ROUTINE
setenv INPUT_FILE_BASE EmptyPlaceHolderUnit
seten

Re: [fpc-pascal] No Hello World after updating Xcode to 2.1

2005-09-16 Thread Andrew Haines

Lance Boyle wrote:

I've just installed Xcode 2.1 and can no longer compile FPC using  
2.0.0. For good measure, I re-installed FPC 2.0.0 and the Xcode  
Integration Kit, including the Universal Interfaces. The latter acted  
oddly with a crashing program which tried to open up a dialog box,  
until I mounted the Universal Interfaces disk image first. (This  
sounds familiar to me from an earlier upgrade but I can't remember  
what to do to fix it, and the lists archives don't seem to want me to  
see them.)


In any event, I can't even compile a tool. Here's the result of  
trying. What's up?


Lance



Native Build of Target "pascaltooldumpmeUnits" using Build  
Configuration "Development"


setenv ZERO_LINK YES
/bin/sh -c "rm -f build/$(PRODUCT_NAME)"
/bin/sh: line 1: PRODUCT_NAME: command not found
rm: build/: is a directory


I've also run into this problem.

Here's how I fixed it although it may not be the correct answer.

open xcode and then open /Library/Application Support/Apple/Developer 
Tools/Project Templates/Pascal/Pascal Carbon 
Application/PascalCarbonApp.xcodeproj


In the treeview Groups & Files, select Targets and then <> 
then in the "Action" combobox choose "Get Info"


Under the "Rules" tab change all vars that you can see from 
$(SOME_VAR_NAME) to $SOME_VAR_NAME also I had to change the output 
directories some:

Here's the lines I had to change for the output path

mkdir -p build/$BUILD_STYLE/$PRODUCT_NAME.app/Contents/MacOS
mv -f build/$PROJECT_NAME.build/$PRODUCT_NAME 
build/$BUILD_STYLE/$PRODUCT_NAME



And for my "with output files" section:

build/$PROJECT_NAME.build/$INPUT_FILE_BASE.o
build/$PROJECT_NAME.app/Contents/MacOS/$PRODUCT_NAME

and that's it.

You'll have to make the same changes to the "Pascal Tool" and "Pascal 
CGI" directories ProjectTemplate Files (*.xcodeproj)


Andrew

PS again there may be a better way to fix this but this is how I did it.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Porter Stemming for FPC 2.0

2005-09-16 Thread Alan Mead
It's great that 2.0 is out!  Unfortunately it seems to break some
code I used for Porter Stemming because the code sometimes reads data
from a pchar at negative indexes.  Reportedly this works fine in
Delphi 5 and I don't seem to have trouble with Delphi 7 but it
generates RTEs using fpc 2.0.  (If this is a FAQ, forgive me, I've
been away from Free Pascal for a while...)

So, here is a file containing my patched code and a test program that
seems to run fine:

http://www.alanmead.org/downloads/fpc2_PorterStem.zip

The homepage for this algorithm, which may offer my fix someday, is
here:

http://www.tartarus.org/~martin/PorterStemmer/

-Alan
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Extending FPDoc

2005-09-16 Thread dhkblaszyk
Hi there,

For Lazarus I have made a tool called LazDoc that attempts to integrate a
documentation editing tool with the IDE. Depending on the position of the
cursor on the source editor, the appropriate documentation tag is searched
and then selected in the editor.
Anyway, while I was working on the tool, I realized that some additional
tags would be very usefull.

todo:
Here you can enter todo items in your code. Later after documentation
generation, an additional summary page is generated with an overview of
the todo items.

notes:
Here you can enter notes in your source. They coud be remarks for instance
for other developers, or just plain reminders for yourself.

I don't know how others feel about this, but it's sure I cannot do it
myself. Perhaps someone can help me here?? Just an explanation on how to
handle and where to look would also be nice.

Darius Blaszijk




___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Extending FPDoc

2005-09-16 Thread dhkblaszyk
Hi there,

For Lazarus I have made a tool called LazDoc that attempts to integrate a
documentation editing tool with the IDE. Depending on the position of the
cursor on the source editor, the appropriate documentation tag is searched
and then selected in the editor.
Anyway, while I was working on the tool, I realized that some additional
tags would be very usefull.

todo:
Here you can enter todo items in your code. Later after documentation
generation, an additional summary page is generated with an overview of
the todo items.

notes:
Here you can enter notes in your source. They coud be remarks for instance
for other developers, or just plain reminders for yourself.

I don't know how others feel about this, but it's sure I cannot do it
myself. Perhaps someone can help me here?? Just an explanation on how to
handle and where to look would also be nice.

Darius Blaszijk




___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Sebastian Günther
[EMAIL PROTECTED] schrieb:
> Hi there,
> 
> For Lazarus I have made a tool called LazDoc that attempts to integrate a
> documentation editing tool with the IDE. Depending on the position of the
> cursor on the source editor, the appropriate documentation tag is searched
> and then selected in the editor.
> Anyway, while I was working on the tool, I realized that some additional
> tags would be very usefull.
> 
> todo:
> Here you can enter todo items in your code. Later after documentation
> generation, an additional summary page is generated with an overview of
> the todo items.
> 
> notes:
> Here you can enter notes in your source. They coud be remarks for instance
> for other developers, or just plain reminders for yourself.
> 
> I don't know how others feel about this, but it's sure I cannot do it
> myself. Perhaps someone can help me here?? Just an explanation on how to
> handle and where to look would also be nice.

I think I can easily add this. I think it would be sufficient to 'just'
support it, without usage within the doc writers?


- Sebastian
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Michael Van Canneyt


On Fri, 16 Sep 2005 [EMAIL PROTECTED] wrote:

> Hi there,
> 
> For Lazarus I have made a tool called LazDoc that attempts to integrate a
> documentation editing tool with the IDE. Depending on the position of the
> cursor on the source editor, the appropriate documentation tag is searched
> and then selected in the editor.
> Anyway, while I was working on the tool, I realized that some additional
> tags would be very usefull.
> 
> todo:
> Here you can enter todo items in your code. Later after documentation
> generation, an additional summary page is generated with an overview of
> the todo items.
> 
> notes:
> Here you can enter notes in your source. They coud be remarks for instance
> for other developers, or just plain reminders for yourself.
> 
> I don't know how others feel about this, but it's sure I cannot do it
> myself. Perhaps someone can help me here?? Just an explanation on how to
> handle and where to look would also be nice.

I'd rather you keep these todo separate. It'll slow down parsing
(which is already horribly slow) and I see no added value. If you must
really use it inside the file, just use special formatting of comments:


In lazarus, you could even store the TODO in a separate file. If I'm correct,
Lazarus has already a TODO system.

What concerns notes, there is already a  node. It is meant for 'Extra' 
text.
You can use that inside the package or module node.

At the level of the package, you can nest topics:


  Notes For this Package
  
  Remember to do this
  more note text
  


At the level of a module, you can't nest topics, but there you could use a 
description list:


Remember to do this

  
  Note 1more note text
  


it's easy to parse with the XML engine.

You should be able to get a long way with this without needing to change 
anything in FPDoc.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Sebastian Günther
Michael Van Canneyt schrieb:
> 
> I'd rather you keep these todo separate. It'll slow down parsing
> (which is already horribly slow)

Huh? Really?

A small reminder: FPDoc can support different backends, the XML storage
is just the only one currently implemented. We can talk about this
anytime...


- Sebastian
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Florian Klämpfl

Sebastian Günther wrote:

Michael Van Canneyt schrieb:


I'd rather you keep these todo separate. It'll slow down parsing
(which is already horribly slow)



Huh? Really?

A small reminder: FPDoc can support different backends, the XML storage
is just the only one currently implemented. We can talk about this
anytime...


I would prefer to profile the xml reader and see if we can improve it.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Michael Van Canneyt


On Fri, 16 Sep 2005, Sebastian Günther wrote:

> Michael Van Canneyt schrieb:
> > 
> > I'd rather you keep these todo separate. It'll slow down parsing
> > (which is already horribly slow)
> 
> Huh? Really?

I didn't mean the FPC implementation specifically, but XML in general 
is slow to parse.

> A small reminder: FPDoc can support different backends, the XML storage
> is just the only one currently implemented. We can talk about this
> anytime...

I know, but this would require a major rewrite of FPDoc. 
The TDOMElement is deeply rooted in the structure. 
And you need the XML anyway for transforming the pseudo-html, so I see 
no gain in having another backend.

And anyway, I don't see the need for the proposed changes, see my other 
mail.

Michael.___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Sebastian Günther
Florian Klämpfl schrieb:
> 
> I would prefer to profile the xml reader and see if we can improve it.

Yes, but I don't see this mutually exclusive :)


- Sebastian
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Sebastian Günther
Michael Van Canneyt schrieb:
> 
> I didn't mean the FPC implementation specifically, but XML in general 
> is slow to parse.

Yes


> I know, but this would require a major rewrite of FPDoc. 
> The TDOMElement is deeply rooted in the structure. 
> And you need the XML anyway for transforming the pseudo-html, so I see 
> no gain in having another backend.

This is not quite true. FPDoc can work with XML fragments, which you can
store in a database. Looking up elements would be much faster then.


> And anyway, I don't see the need for the proposed changes, see my other 
> mail.

yes...


- Sebastian
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Extending FPDoc

2005-09-16 Thread Michael Van Canneyt


On Fri, 16 Sep 2005, Sebastian Günther wrote:

> Michael Van Canneyt schrieb:
> > 
> > I didn't mean the FPC implementation specifically, but XML in general 
> > is slow to parse.
> 
> Yes
> 
> 
> > I know, but this would require a major rewrite of FPDoc. 
> > The TDOMElement is deeply rooted in the structure. 
> > And you need the XML anyway for transforming the pseudo-html, so I see 
> > no gain in having another backend.
> 
> This is not quite true. FPDoc can work with XML fragments, which you can
> store in a database. Looking up elements would be much faster then.

Yes, I know. I even have a database model ready for it...

My plan was to have the descriptions in the database, and produce
a correct XML file which is then fed to fpdoc.

I'm not yet convinced that having a DB backend to FPDoc will be so trivial,
but if you think it's easy to do: I'm all for it :-)

Michael.___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Porter Stemming for FPC 2.0

2005-09-16 Thread memsom
> It's great that 2.0 is out!  Unfortunately it seems to break some
> code I used for Porter Stemming because the code sometimes reads data
> from a pchar at negative indexes.  Reportedly this works fine in
> Delphi 5 and I don't seem to have trouble with Delphi 7 but it
> generates RTEs using fpc 2.0.  (If this is a FAQ, forgive me, I've
> been away from Free Pascal for a while...)

Reading PChars at negative indexes? Buffer underrun in other words... This
is absolutely not a good thing. If FPC is preventing buffer under and
overrruns, then it is actually right, for once, and Delphi is wrong,
wrong, wrong!

A question... how do you know the memory at the negative index is valid?
Various factors (memory management, record alignement and poor consistency
in longterm projects) can alter what you are reading drastically. Even if
you *believe* you know what it is. This is the kind of horror story I see
sometimes in Legacy code that makes me wonder how the darn thing _ever_
worked all these years. You ask the guy maintaining it and he goes all
mistical - "It just works, but no one remembers why.. we dare not change
it because last time somebody did anything to it the entive project A/V'd
every 30 seconds and died in a puff of green smoke."

M

M

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Porter Stemming for FPC 2.0

2005-09-16 Thread Lance Boyle
This is very interesting. I've always wondered if anyone did this on  
purpose, and I've always wondered what the big deal is with just  
adding array range checking to C. A company with tons of internal  
software development, and whose existence is made miserable by buffer  
under/over flows, could surely pull this off. For example, Microsoft  
could change the compilers that they use internally, and any  
programmers found to be depending on the persistence of memory "next  
to" an array would be taken out and shot.


I'm sure someone will respond, telling me why this would be a bad  
idea or impossible, but that's my two cents worth.


Lance


On Sep 16, 2005, at 4:55 PM, memsom wrote:


It's great that 2.0 is out!  Unfortunately it seems to break some
code I used for Porter Stemming because the code sometimes reads data
from a pchar at negative indexes.  Reportedly this works fine in
Delphi 5 and I don't seem to have trouble with Delphi 7 but it
generates RTEs using fpc 2.0.  (If this is a FAQ, forgive me, I've
been away from Free Pascal for a while...)



Reading PChars at negative indexes? Buffer underrun in other  
words... This

is absolutely not a good thing. If FPC is preventing buffer under and
overrruns, then it is actually right, for once, and Delphi is wrong,
wrong, wrong!

A question... how do you know the memory at the negative index is  
valid?
Various factors (memory management, record alignement and poor  
consistency
in longterm projects) can alter what you are reading drastically.  
Even if
you *believe* you know what it is. This is the kind of horror story  
I see
sometimes in Legacy code that makes me wonder how the darn thing  
_ever_

worked all these years. You ask the guy maintaining it and he goes all
mistical - "It just works, but no one remembers why.. we dare not  
change
it because last time somebody did anything to it the entive project  
A/V'd

every 30 seconds and died in a puff of green smoke."

M

M
This is very interesting. I've always wondered if anyone did this on  
purpose, and I've always wondered what the big deal is with just  
adding array range checking to C. A company with tons of internal  
software development, and whose existence is made miserable by buffer  
under/over flows, could surely pull this off. And surely it wouldn't  
break _that_ much code. For example, Microsoft could change the  
compilers that they use internally, and any programmers found to be  
depending on the persistence of memory "next to" an array would be  
taken out and shot.


I'm sure someone will respond, telling me why this would be a bad  
idea or impossible, but that's my two cents worth.


Lance

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal