RE: thread-utils: build with NO_PTHREADS fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Junio, 

sorry that was my fault, I was building it wrong way (defined NO_PTHREADS in CFLAGS variable, not as separate make variable). Sorry for the false alarm.

--
Best Regards,
Victor
________________________________________
From: Junio C Hamano [jch2355@xxxxxxxxx] On Behalf Of Junio C Hamano [gitster@xxxxxxxxx]
Sent: Monday, October 12, 2015 10:55 AM
To: Victor Leschuk
Cc: git@xxxxxxxxxxxxxxx; vleschuk@xxxxxxxxx
Subject: Re: thread-utils: build with NO_PTHREADS fails

Junio C Hamano <gitster@xxxxxxxxx> writes:

> Victor Leschuk <vleschuk@xxxxxxxxxxxxxxxx> writes:
>
>> I think that no one tried it for a long time but I needed a
>> single-threaded git version for debug purpose. I tried to build
>> with -DNO_PTHREADS and thread-utils.c failed to compile.
>>
>> In brief the situation is the following:
>>
>> in header file we have something like that:
>>
>>
>> #ifndef NO_PTHREAD
>> extern int online_cpus(void);
>>
>> #else
>> #define online_cpus() 1
>> #endif // NO_PTHREAD
>>
>> and in *.c file:
>>
>>
>> int online_cpus(void)
>> {
>>     // ...
>> }
>
> Yeah, that is obviously incorrect.
> ...

Well, no, I spoke too early.  I do not see there is much wrong here.

There is this bit in the Makefile:

        ifdef NO_PTHREADS
                BASIC_CFLAGS += -DNO_PTHREADS
        else
                BASIC_CFLAGS += $(PTHREAD_CFLAGS)
                EXTLIBS += $(PTHREAD_LIBS)
                LIB_OBJS += thread-utils.o
        endif

The source file thread-utils.c is not compiled to thread-utils.o if
you say NO_PTHREADS, and the resulting libgit.a does not of course
have it.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]