tsrm_ls

php.internals

Richard Lynch

20 years ago
I'm trying to grok PHP Source, and I suspect I've missed some "Beginner" guide somewhere. I'm looking at the TSRM*_* data types in the header files, and have backtracked as far as 'tsrm_ls' and then... I'm not finding a place where that is defined. I've grepped php-src for it, and only see it used, not defined. I also grepped /usr/include and /usr/local/include, thinking maybe it's a standard OS thing. I know TSRM is thread-safe-resource-manager, but the LS_DC LS_CC etc system isn't getting into my brain... L for Long? S for string? What am I missing? TIA! (Hoping to do something useful someday...)
-- Like Music? http://l-i-e.com/artists.htm

Kamesh Jayachandran

20 years ago
Hi Richard, I think LS=LIST CC=Comma(,) Call (, tsrm_ls) DC = Comma(,) Declare(, void ***tsrm_ls) With regards Kamesh Jayachandran Richard Lynch wrote:

Johannes Schlueter

20 years ago
Hi, TSRM is the thread-safe resource manager. you can find it at the TSRM CVS module which should be at php-src/TSRM at your checkout. TSRM is a mechanism to hold thread safeglobal variables in an threaded environment. See articles about extension writing or the releavant books for more. A few pointers for material: http://www.zend.com/php/internals/extension-writing1.php#Heading9 Schlossnagle, George: Advanced PHP Programming (ISBN: 0672325616) Golemon, Sara: Extending and Embedding PHP (ISBN: 067232704X) btw. LS means "local storage", not list. johannes On Thursday 13 April 2006 10:20, Kamesh Jayachandran wrote:

Michael Vergoz

20 years ago
Hi, The cscope project should help you : http://cscope.sourceforge.net/ ----- Original Message ----- From: "Johannes Schlueter" <johannes@php.net> To: <internals@lists.php.net> Cc: "Kamesh Jayachandran" <kameshj@fastmail.fm>; <ceo@l-i-e.com> Sent: Thursday, April 13, 2006 10:29 AM Subject: Re: [PHP-DEV] tsrm_ls

Richard Lynch

20 years ago
On Thu, April 13, 2006 3:29 am, Johannes Schlueter wrote:
> http://www.zend.com/php/internals/extension-writing1.php#Heading9
I've decided, for now, to just work through this tutorial, and see if that gets me up to speed... Naturally, I've stumbled at square one. After creating the files and doing phpize, ./configure yields: . . . checking whether -lc should be explicitly linked in... yes creating libtool usage: mkdir [-pv] [-m mode] directory ... configure: creating ./config.status config.status: creating config.h config.status: config.h is unchanged If I have stumbled my way through "configure" correctly, then I think the problem is that it's trying to create a directory in /tmp I can't do that, as /tmp is reserved by my host for root. I *DO* have access to /var/tmp, which is a 'tmp' dir, if I can somehow override $(TMPDIR=/tmp)... Is there a clean way to do that, or should I just hack "configure" directly and move on with life? Would it be useful to have a PHP_TMPDIR for this? Similar to PHP_AUTOCONF which I needed to use, as my host has: /usr/local/bin/autoconf213 /usr/local/bin/autoconf253 /usr/local/bin/autoconf259 And similarly for autoheader, of course. I guess different packages need/prefer each of those, so he finds it handy to have them all. Works for me. [shrug] Or am I the only goofball on the planet whose /tmp dir is out of bounds? I could take a stab at making a patch for this, though odds are pretty good I'd get it wrong...
-- Like Music? http://l-i-e.com/artists.htm

Marcus Börger

20 years ago
Hello Richard, have a look here: http://talks.somabo.de best regards marcus Thursday, April 13, 2006, 9:54:27 AM, you wrote:
> I'm trying to grok PHP Source, and I suspect I've missed some > "Beginner" guide somewhere.
> I'm looking at the TSRM*_* data types in the header files, and have > backtracked as far as 'tsrm_ls' and then... I'm not finding a place > where that is defined.
> I've grepped php-src for it, and only see it used, not defined.
> I also grepped /usr/include and /usr/local/include, thinking maybe > it's a standard OS thing.
> I know TSRM is thread-safe-resource-manager, but the LS_DC LS_CC etc > system isn't getting into my brain... L for Long? S for string?
> What am I missing?
> TIA! (Hoping to do something useful someday...)
> -- > Like Music? > http://l-i-e.com/artists.htm
Best regards, Marcus