Dan, Thank you very much for sharing the info/links... i will refer them....
On Wednesday, December 22, 2021 at 3:39:12 AM UTC+5:30 Dan Willemsen wrote: > General soong docs: build/soong/README.md > <https://android.googlesource.com/platform/build/soong/+/master/README.md> > > For genrule properties, there's auto-generated reference docs here > <https://ci.android.com/builds/latest/branches/aosp-build-tools/targets/linux/view/genrule.html> > > It can also be helpful to look at examples > <https://cs.android.com/search?q=file:Android.bp%20%5Egenrule&ss=android%2Fplatform%2Fsuperproject> > in > AOSP. > > - Dan > > On Tue, Dec 21, 2021 at 1:11 PM Abhayadev S <[email protected]> wrote: > >> thanks Dan and Paulo... >> i will look in to how i can make use of the genrule.... >> do you see any official man page for this... i am kind of lost in the >> google ! >> >> On Wednesday, December 15, 2021 at 1:19:48 AM UTC+5:30 [email protected] >> wrote: >> >>> Hello, >>> The $(shell) inside you mk will for sure slow down your build as Dan >>> pointed out (sorry I forgot to mention this) I currently have a setup like >>> this and Im trying to refactor it, still trying to find the best solution >>> for my use case. >>> Thanks, >>> Paul >>> >>> On Mon, Dec 13, 2021, 8:41 PM 'Dan Willemsen' via Android Building < >>> [email protected]> wrote: >>> >>>> Embedding build systems into one another is a very complicated issue, >>>> and requires deep knowledge of both build systems in order to keep all the >>>> functionality of both systems. Given that the Android build attempts to >>>> provide safe, fast incremental builds that work on any machine, it gets >>>> very difficult to preserve those features while calling out to another >>>> build system. If the scripts are simpler (bash/python script that reads a >>>> known set of inputs and writes to a know set of outputs, and doesn't use >>>> any other tools), then this doesn't get too difficult. But keep in mind >>>> that you do need to declare all inputs and outputs, and most tools you use >>>> need to be referenced by paths (and also be inputs), not in $PATH. >>>> Android.bp has the `genrule` concept that makes this easier. >>>> >>>> <this where i need to run the script so that bins will be generated for >>>>> Android build to pickup> >>>>> >>>> >>>> Keep in mind that we're not linearly executing Android.mk files -- that >>>> only happens in the first minute or two of the build to generate commands >>>> for what comes later. So you shouldn't actually be running the script >>>> there, but defining some Make logic to run your script later. You may be >>>> able to find references to Android.mk files using base_rules.mk and >>>> defining rules to build $(LOCAL_BUILT_MODULE), but you could also look >>>> into >>>> writing Android.bp files with genrules, which makes this simpler and adds >>>> some checks for common issues. >>>> >>>> >>>>> Have you tried using $(shell) ? >>>>> RESULT:= $(shell ($(LOCAL_PATH)/yourscript.sh)) >>>>> >>>> >>>> Definitely don't do this, it will slow down every build as we serially >>>> execute every one of these every time (even if there's nothing to build). >>>> >>>> - Dan >>>> >>>> On Mon, Dec 13, 2021 at 2:49 PM Paulo Maia <[email protected]> wrote: >>>> >>>>> Have you tried using $(shell) ? >>>>> RESULT:= $(shell ($(LOCAL_PATH)/yourscript.sh)) >>>>> >>>>> Also you I think you could put in buiod/core/app_prebuilt_internal.mk >>>>> if this is going to be repetitive. >>>>> >>>>> BR, >>>>> Paulo >>>>> >>>>> On Monday, November 8, 2021 at 2:14:48 PM UTC-8 [email protected] >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> I need to run a shell script so that the libs and bins will be >>>>>> generated beofre Android can pick them up. >>>>>> >>>>>> A structure of the makefile i am trying to comeup is below, not sure >>>>>> if this is really possible.. any inputs are appreciated. >>>>>> >>>>>> LOCAL_PATH := $(call my-dir) >>>>>> >>>>>> <this where i need to run the script so that bins will be generated >>>>>> for Android build to pickup> >>>>>> >>>>>> include $(CLEAR_VARS) >>>>>> LOCAL_MODULE := my_modules >>>>>> LOCAL_MODULE_OWNER := Me >>>>>> LOCAL_MODULE_TAGS := optional >>>>>> LOCAL_SRC_FILES := ./my_bin_001 >>>>>> LOCAL_MODULE_PATH := $(PRODUCT_OUT)/system/bin >>>>>> include $(BUILD_PREBUILT) >>>>>> >>>>>> i am not sure how can i add my build script which generates the >>>>>> my_bin_001 >>>>>> there are several bins its generating and i cant really convert the >>>>>> shell script in to a Makefile for practical reasons. >>>>>> >>>>>> reagrds, >>>>>> abhay >>>>>> >>>>> -- >>>>> -- >>>>> You received this message because you are subscribed to the "Android >>>>> Building" mailing list. >>>>> To post to this group, send email to [email protected] >>>>> To unsubscribe from this group, send email to >>>>> [email protected] >>>>> For more options, visit this group at >>>>> http://groups.google.com/group/android-building?hl=en >>>>> >>>>> --- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Android Building" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/android-building/2824e7a8-3745-45b7-9037-fc5c1eaf8930n%40googlegroups.com >>>>> >>>>> <https://groups.google.com/d/msgid/android-building/2824e7a8-3745-45b7-9037-fc5c1eaf8930n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- >>>> -- >>>> You received this message because you are subscribed to the "Android >>>> Building" mailing list. >>>> To post to this group, send email to [email protected] >>>> To unsubscribe from this group, send email to >>>> [email protected] >>>> For more options, visit this group at >>>> http://groups.google.com/group/android-building?hl=en >>>> >>>> --- >>>> >>> You received this message because you are subscribed to a topic in the >>>> Google Groups "Android Building" group. >>>> To unsubscribe from this topic, visit >>>> https://groups.google.com/d/topic/android-building/k5P_dxROmOg/unsubscribe >>>> . >>>> To unsubscribe from this group and all its topics, send an email to >>>> [email protected]. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/android-building/CALQgHdmuC3RcAfmF6GvmQVEqGyemMHW-7K0ovbP1RkZkZam-fA%40mail.gmail.com >>>> >>>> <https://groups.google.com/d/msgid/android-building/CALQgHdmuC3RcAfmF6GvmQVEqGyemMHW-7K0ovbP1RkZkZam-fA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- >> -- >> You received this message because you are subscribed to the "Android >> Building" mailing list. >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> For more options, visit this group at >> http://groups.google.com/group/android-building?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "Android Building" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/android-building/e4f6fcbd-e58a-4f50-98a6-0775553871dan%40googlegroups.com >> >> <https://groups.google.com/d/msgid/android-building/e4f6fcbd-e58a-4f50-98a6-0775553871dan%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- -- You received this message because you are subscribed to the "Android Building" mailing list. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-building?hl=en --- You received this message because you are subscribed to the Google Groups "Android Building" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/android-building/9e232a23-90fa-4dcc-bc0b-b79dbb66a1bbn%40googlegroups.com.
